这或许是x86平台启动过程中第一张页表了。
之前我们也学习了内核启动镜像bzImage由两部分组成setup.bin和vmlinux.bin。而这张第一章页表就在vmlinux.bin的head.S中。
如果对上述两个文件编译过程不熟悉的话可以参考下面的链接:
先来看个代码
这第一张页表初始化的代码就在arch/x86/boot/compressed/head_64.S中。
/*
* Build early 4G boot pagetable
*/
/* Initialize Page tables to 0 */
leal pgtable(%ebx), %edi
xorl %eax, %eax
movl $(BOOT_INIT_PGT_SIZE/4),