【发布时间】:2012-11-22 04:32:53
【问题描述】:
我组装并链接了以下代码,以从中获取可执行文件。
.data
你好: .ascii“你好世界” .text
.global _start
_开始: 移动 $4,%eax 移动 $1,%ebx movl $你好,%ecx 移动 $11,%edx 整数 $0x80
movl $1,%eax
movl $0,%ebx
int $0x80
作为一个学习进程,我想看看进程的内存映射(通过上面的可执行文件)。 pmap 和 cat /proc/PID/maps 都需要进程 ID。如果它是 gcc 编译的 C 程序,我可以使用 gdb 设置断点并在另一个终端中获取 pid。
对于上述情况,我无法设置任何断点,因为可执行文件中没有可用的调试器符号表。有没有其他方法可以在不使用 pid 的情况下查看进程内存结构?我的意思是某种加载可执行文件并转储内存结构的程序。
感谢您的帮助。
【问题讨论】:
标签: process linux-kernel memory-mapping