如何在 gdb 中使用 python 访问寄存器

2024-03-12

如何访问当前调试实例的cpu寄存器?例如,您可以从 gdb 调用printf "0x%x", $eax and set $eax_b = $eax还有一种方法可以通过 gdb 提供的 python 支持来做到这一点吗?或者我应该创建一个可以像这样调用的 python 函数save-reg "eax" $eax他手上的哪个将寄存器存储在我想要存储它们的数组中?

另一方面,使用 gdb 脚本你也可以set $eax = 1000例如,我还想在 python 脚本中而不是 gdb 脚本中执行此操作。


我不相信 GDB 的 Python API 提供direct访问寄存器,但根据您想要用它做什么,您可以通过评估 gdb 命令来访问它gdb.execute(),或评估"$eax"表达与gdb.parse_and_eval():

(gdb) p $rbx
$23 = 140737488348072
(gdb) python print type(gdb.parse_and_eval("$rbx")), gdb.parse_and_eval("$rbx")
<type 'gdb.Value'> 140737488348072

(这个例子是在 gdb 提示符下,但是gdb模块与 GDB 中执行的其他代码没有任何不同。)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 gdb 中使用 python 访问寄存器 的相关文章

随机推荐

  • 使用 jQuery 的 Jenkins json REST api 和 CORS 请求

    我正在尝试使用 Jenkins json API 但无法使身份验证正常工作 setup 詹金斯安全 Jenkin s own user database access Matrix gebaseerde beveiliging CORS 通
  • 'Mysql:Class 的未定义方法初始化'

    我的 MySQL 服务器安装一直遇到问题 在断电后变得混乱 配置 运行 OS X 10 6 5 的 Intel i5 Mac已安装红宝石 1 9 2已安装 Rails 3 0 1MySQL 服务器 最终 安装并运行我完全重新安装了MySQL
  • 延迟加载的 React 路由器无论如何都会路由加载

    我一直在尝试使用 React lazy 和 Suspense 在 React 中延迟加载路由 但无论当前路径如何 某些组件都会加载 Feed Profile 和 Settings 请注意 我实际上并不想延迟加载像 MenuAppBar 和
  • TypeError(不可排序类型:int() <= NoneType())

    这是我第一次用 Python 编写代码 需要一些帮助 我正在使用 Python 34 根本无法理解发生了什么 def roll v x input return x v def startGame v 0 while 0 lt v erro
  • 在 Python Sphinx 生成的文档中包含动态内容

    我正在使用 Sphinx 为我的项目生成文档 并在产品安装过程中构建文档 我想在文本和 或代码块中动态包含主机名 我没有在文档中看到任何解释 也没有看到任何包含 shell 命令输出或特定文件中特定行以外的任何内容的工具 有这个功能吗 这里
  • UIStackView 比例布局仅具有内在内容大小

    我在 UIStackView 中排列子视图的布局方面遇到问题 想知道是否有人可以帮助我了解发生了什么 所以我有 UIStackView 有一些间距 例如 1 但这并不重要 和 fillProportionally 分布 我添加的排列子视图仅
  • 文件复制/删除和移动之间的区别

    有什么区别 复制文件并使用删除它File Copy and File Delete 使用移动文件File Move 执行这些操作所需的权限有什么区别吗 非常感谢任何帮助 File Move 方法可用于将文件从一个路径移动到另一路径 此方法适
  • 使用 gtag.js 在 Google Analytics 中进行事件跟踪

    我最近开始学习Google Analytics GA 我有 Angular 中的单页应用程序 应用程序中有一个登录按钮 我想跟踪有多少用户使用 GA 登录 所以我所做的就是在 GA 中创建一个属性并获取跟踪 id 然后我在索引页面后面添加了
  • Matplotlib savefig 在图外有图例

    阅读下面的文章 我设法将图例放在情节之外 如何将传说从情节中剔除 https stackoverflow com questions 4700614 how to put the legend out of the plot code im
  • 将矩阵分配给 data.table 的子集

    我想将一个矩阵分配给一个多列子集data table但矩阵最终被视为列向量 例如 dt1 lt data table a1 rnorm 5 a2 rnorm 5 a3 rnorm 5 m1 lt matrix rnorm 10 ncol 2
  • iOS:在不播放视频的情况下获取视频时长和缩略图

    我需要获取 本地 视频的持续时间 然后访问其各个帧 如下所示UIImages 到目前为止我一直在使用MPMoviePlayerController为了这 首先我注册MPMovieDurationAvailableNotification事件
  • 我如何上传视频并将其保存到 codeigniter 中的文件夹中?

    我是 codeigniter 的新手 我需要帮助上传图片和视频并将其保存到文件夹和数据库 这是我的控制器 public function upload this gt m upload gt upload this gt upload ga
  • jQuery Lightbox 或具有图像数组的等效项

    我正在尝试实现一个Lightbox http leandrovieira com projects jquery lightbox 样式库 其中单击文本链接会启动从数组加载的图像幻灯片 而不是从页面上的内联内容加载 我能找到的所有示例都使用
  • 显示没有“hitbox”的元素(不接受鼠标/触摸输入)

    我想要实现的是一种通知框 adiv元素 我想用一些不透明度来显示它 我需要这个盒子在事件中 不可见 例如 如果该框位于按钮之上 我仍然可以通过该框单击该按钮 有些人可能建议让用户可以移动它 但当前的 UI 不允许我这样做 可以通过任何方式实
  • 在 JavaFx 标签中显示变化的值

    在JavaFX中 如何使用 标签 显示随时间不断变化的值 有很多方法可以实现这一点 最方便的是使用 JavaFX 的 DataBinding 机制 assuming you have defined a StringProperty cal
  • 将图像从 Matlab 传输到 OpenCV IplImage

    我在 Matlab 中有一张图像 img imopen image jpg 它返回一个 uint8 数组高 x 宽 x 通道 3 个通道 RGB 现在我想使用 openCV 对其进行一些操作 因此我编写了一个 MEX 文件 该文件将图像作为
  • 可以多次访问顶点的 TSP

    我正在寻求解决一个问题 其中我有一个加权有向图 并且必须从原点开始 至少访问所有顶点一次并以尽可能最短的路径返回原点 本质上 这将是 TSP 的一个经典示例 除了我DO NOT具有每个顶点只能被访问一次的约束 在我的例子中 除了原点之外的任
  • 使用 PHP 和 AJAX 保持套接字连接打开

    我正在尝试连接到一个服务器套接字 该套接字将在连接后向我发送一堆数据 从我那里获取响应 然后发送更多数据 重复此过程 直到确定它已经足够了 所以基本上 在第一次连接之后 我们将 并且当前正在 从服务器接收数据 我们想要获取这些数据 在另一个
  • 计算 ISBN 的校验位

    这实际上不是家庭作业 我只是在下周开始计算机科学之前浏览一本离散数学书中的一些问题 不管怎样 其中一个问题要求我编写一个程序来执行这个算法 它解释了 我所困惑的部分是如何获取 9 位数字并将其 拆分 为单个整数 以便可以对每个数字执行计算
  • 如何在 gdb 中使用 python 访问寄存器

    如何访问当前调试实例的cpu寄存器 例如 您可以从 gdb 调用printf 0x x eax and set eax b eax还有一种方法可以通过 gdb 提供的 python 支持来做到这一点吗 或者我应该创建一个可以像这样调用的 p