标签: c memory memory-management
加载可执行文件时,需要将代码,数据,bss等段放在内存中。我只是想知道,如果有人能告诉我在标准x86上的位置,例如放置了libc库。那是在记忆的顶部还是底部。我的猜测是在底部,接近应用程序代码,即,在这里看起来像这样:
--------- 0x1000 Stack | V ^ | Heap ---------- Data + BSS ---------- App Code ---------- libc ---------- 0x0000
非常感谢, 罗斯
答案 0 :(得分:4)
这取决于装载机的奇思妙想。
特别是,在任何使用ASLR的现代系统中,您无法预测特定库的最终位置。