同步上游 Booting 4 的四级页表地址拆分图示
Author: mudongliangCreated Sep 1, 2026Updated Sep 1, 2026
Labelsenhancementgood first issue
背景
中文版本 Booting/linux-bootstrap-4.md 直接进入早期 4 GB 页表的构建过程,缺少上游后来增加的“48 位虚拟地址如何分解并逐级索引四级页表”的图示和过渡说明。
上游新增了 Booting/images/early-page-table.svg,并解释每组 9 位索引、每级 512 个表项和 4 KiB 页表之间的关系:
- 当前上游内容:https://github.com/0xAX/linux-insides/blob/master/Booting/linux-bootstrap-4.md#early-page-table-initialization
- 引入内容的提交:https://github.com/0xAX/linux-insides/commit/9c6c4777cc5c8e46a661da8e3c0985e679fd07db
目标
把四级页表地址拆分图和最小必要解释同步到中文版本,为后续早期页表构建代码提供直观背景。
实现范围
- 同步
Booting/images/early-page-table.svg; - 在“初期页表初始化”小节中加入图示和相邻的四级页表地址拆分说明;
- 说明只使用 48 位虚拟地址、每级 9 位索引、512 个表项和 4 KiB 页表之间的关系;
- 简要注明现代 x86_64 还支持五级页表,但本小节仍以四级页表为讨论范围;
- 保留后续已有的中文页表构建过程,除非为衔接新说明必须做小范围修正。
非目标
- 不重译整个 Booting 第四节;
- 不同步内核重定位或
startup_32的其他新增图示; - 不把局部图示同步标记为整篇已更新到 Linux 7.2。
验收标准
-
early-page-table.svg已加入仓库并在 mdBook 中正常显示; - 中文说明准确对应图中的四级索引结构;
- 新说明与后续 4 GB 早期映射过程衔接自然且没有概念冲突;
- PR 描述注明采用的上游 commit 和局部同步范围;
-
mdbook build成功,git diff --check无错误。
Source: hust-open-atom-club/linux-insides-zh