日期:2014-05-16  浏览次数:20981 次

linux进程地址
我在linux下编了几个小程序,发现他们的 Entry point address都是0x8048310
也就是说他们的入口地址都是0x8048310。我想问一下入口地址是物理地址也就是内存上的地址,还是逻辑地址就是相对段基址的地址,如果是逻辑地址怎么查看他们的物理地址

------解决方案--------------------
在应用程序中是不不要也不可能看到物理地址的。而且物理地址不固定,比如虚地址0x8048310,映射到内存中的地址是0x1000000,也许这个物理页面上一秒钟还在内存中,下一秒钟就被内核交换到了磁盘上去了,或者移到内存其他地址上去了,然后下一秒钟很可能又被写进内存,但是物理地址变成了0x2000000。 但是对于应用程序,看到的虚地址还是0x8048310, 只不过这个虚地址已经被映射到了物理地址0x2000000。
------解决方案--------------------
探讨
我在linux下编了几个小程序,发现他们的 Entry point address都是0x8048310
也就是说他们的入口地址都是0x8048310。我想问一下入口地址是物理地址也就是内存上的地址,还是逻辑地址就是相对段基址的地址,如果是逻辑地址怎么查看他们的物理地址