草庐IT

0xbffffff

全部标签

linux - 为什么 Linux 程序的 .text 部分从 0x0804800 开始,堆栈顶部从 0xbffffff 开始?

根据AssemblyPrimerForHackers(Part2)VirtualMemoryOrganization,Linux程序.text部分从0x0804800开始,栈顶从0xbffffff开始。这些数字有什么意义?为什么不从0x0000000(或0x0000020或0x0000040开始.text以进入下一个32位或64位空)?为什么不从0xfffffff开始栈顶? 最佳答案 先这么说吧:很多时候,各个版block不需要放在特定的位置,更重要的是布局。如今,堆栈顶部实际上是随机化的,请参阅here。0x08048000是ld