首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 操作系统 > UNIXLINUX >

查看内存程序有关问题

2012-06-23 
查看内存程序问题是用 gdb还是 objdump工具能看程序的内存布局呢 如我的程序是这样的C/C++ code.globl _st

查看内存程序问题
是用 gdb 还是 objdump 工具能看程序的内存布局呢 如我的程序是这样的 

C/C++ code
.globl _start_start:    lidt    idt_48        ! load idt with 0,0    lgdt    gdt_48        ! load gdt with whatever appropriate    gdt:    .word    0,0,0,0        ! dummy    .word    0x07FF        ! 8Mb - limit=2047 (2048*4096=8Mb)    .word    0x0000        ! base address=0    .word    0x9A00        ! code read/exec    .word    0x00C0        ! granularity=4096, 386    .word    0x07FF        ! 8Mb - limit=2047 (2048*4096=8Mb)    .word    0x0000        ! base address=0    .word    0x9200        ! data read/write    .word    0x00C0        ! granularity=4096, 386idt_48:    .word    0            ! idt limit=0    .word    0,0            ! idt base=0Lgdt_48:    .word    0x800        ! gdt limit=2048, 256 GDT entries    .word    512+gdt,0x9    ! gdt base = 0X9xxx


我用 as 和 ld 生成了一个 test.o test文件  

我想看看 代码段 和数据段在内存中的布局 这两个工具怎么用呢 谢谢  

比如:
内存地址 16进制 汇编
0x0000000 0x00000 gdt:
..................................
..................................  
0x1000000 0x00000 lidtidt_48

把整个程序显示出来 

其实就想看看 代码段 和数据段在内存中的布局 谢谢了

[解决办法]
cat /proc/<pid of program>/maps


[解决办法]
size -A -x
objdump -x
readelf -e

看看哪个符合你要求

热点排行