深入解析虚拟内存布局、ELF 格式与 Unix 文件系统
1. 虚拟内存布局概述
虚拟内存布局由 System V 规范提供。接下来我们将详细探讨 ELF 格式,它能为虚拟内存布局及相关变更提供更多信息。
2. 可执行与可链接格式(ELF)
ELF 是大多数基于 Unix 的操作系统(包括 Linux)所采用的主要文件格式。每个 ELF 文件都以十六进制数 0x7F 开头,随后是 ELF 字符串。
以下是一个简单的 C++ 程序示例:
int main(void)
{
}
编译并查看生成的 ELF 文件的十六进制转储:
> g++ scratchpad.cpp; ./a.out
> hexdump -C a.out
00000000 7f 45 4c 46 02 01 01 00 00 00 00 00 00 00 00 00
|.ELF............|
00000010 03 00 3e 00 01 00 00 00 f0 04 00 00 00 00 00 00
|..>.............|
00000020 40 00 00 00 00 00 00 00 e8 18 00 00 00 00 00 00
|@...............|
00000030 00 00 00 00 40 00 38 00 09 00 40 00 1c 00 1b 00
|....@.8...@.....|
超级会员免费看
订阅专栏 解锁全文
6

被折叠的 条评论
为什么被折叠?



