我看到的处理图像通过PMAP linux下:不同地址
08048000 0 4 0 r-x-- [my program]
08049000 0 4 4 rw--- [my program]
三段以上是代码,RODATA和数据段,它们都对准于PAGESIZE(4K ),但是当我把命令objdump的-H,被显示在ELF头如下:
read-only code segment
Load off 0x00000000 vaddr 0x08048000 paddr 0x08048000 align 2**12
filesz 0x00000448 memsz 0x00000448 flags r-x
read/write data segment
Load off 0x00000448 vaddr 0x08049448 paddr 0x08049448 align 2**12
filesz 0x000000e8 memsz 0x00000104 flag rw-
它在ELF头说,代码段和数据段从0x08048000,0x049448在虚拟地址寻址seperately ,这与存储器中的过程映像不同。我知道代码/数据段应该分配给不同的PAGESIZE,这可以给它们不同的保护权限。但是,如果真正的虚拟机与elf二进制文件不同,该如何执行程序?