【ARM Linux 系统稳定性分析入门及渐进12 -- GDB内存查看命令 “x“(examine)】

文章目录

    • [gdb 内存查看命令 examine](#gdb 内存查看命令 examine)

上篇文章:ARM Linux 系统稳定性分析入门及渐进11 -- GDB( print 和 p 的使用| @ 和 ::的使用|ptype|{<type>} <addr> )

gdb 内存查看命令 examine

examine是GDB中x命令的全称,用于检查内存中的内容。这个命令非常强大,可以以多种格式显示内存内容。

examine命令的一般格式为:

bash 复制代码
examine/NFU ADDR

其中:

  • N是你希望显示的内存单位数。
  • F是显示格式,可以是以下几种:o(八进制)、x(十六进制)、d(十进制)、u(无符号十进制)、t(二进制)、a(地址)、i(指令)、c(字符)或f(浮点数)。
  • U是内存单位,可以是以下几种:b(字节)、h(半字,两个字节)、w(字,四个字节)或g(大字,八个字节)。
  • ADDR是你希望开始检查的内存地址。

例如,你可以使用examine命令来查看存储在指定地址的四个字节的十六进制表示:

c 复制代码
(gdb) examine/4xb 0x40063c 
0x40063c: 0x01 0x23 0x45 0x67

在这个例子中,4xb表示以字节为单位,显示四个单位,以十六进制格式显示。所以,给定的内存地址0x40063c开始的四个字节的值分别是0x010x230x450x67

你也可以使用examine命令来查看存储在指定地址的指令:

c 复制代码
(gdb) examine/1i 0x40063c 
0x40063c: mov $0x1,%eax

在这个例子中,1i表示以指令为单位,显示一个单位。所以,给定的内存地址0x40063c开始的指令是mov $0x1,%eax