RISC-V 上 Linux 的早期页表:内核为什么要先搭一张临时地图
从内核设计者的角度解释 Linux 6.11 在 RISC-V 上为什么要先建早期页表,它如何帮助内核跨过 MMU 切换、FDT 读取和最初的虚拟地址落地。
从内核设计者的角度解释 Linux 6.11 在 RISC-V 上为什么要先建早期页表,它如何帮助内核跨过 MMU 切换、FDT 读取和最初的虚拟地址落地。
以 Linux 6.11 的 RISC-V 64 位 Sv39 为例,拆解内核虚拟内存高低半区、direct map、vmalloc、vmemmap、fixmap、PCI I/O 和早期页表切换。