ELF 文件到底是什么:程序还没运行前,磁盘上那份可执行文件里装了什么

ELF 不是一块神秘的二进制黑盒,而是一种可执行文件组织方式:文件头、程序头、节头、段、符号表和动态链接信息各自负责不同的事。

April 11, 2026 · 6 min · 2831 words · pipiang

RISC-V 上 Linux 的早期页表:内核为什么要先搭一张临时地图

从内核设计者的角度解释 Linux 6.11 在 RISC-V 上为什么要先建早期页表,它如何帮助内核跨过 MMU 切换、FDT 读取和最初的虚拟地址落地。

April 10, 2026 · 7 min · 3012 words · pipiang

RISC-V 64 位 Linux 虚拟内存布局详解:以 Sv39 为例

以 Linux 6.11 的 RISC-V 64 位 Sv39 为例,拆解内核虚拟内存高低半区、direct map、vmalloc、vmemmap、fixmap、PCI I/O 和早期页表切换。

April 10, 2026 · 6 min · 2663 words · pipiang

Linux 6.11 内核启动过程详解:以 RISC-V 为例

从 RISC-V 早期汇编入口、临时页表、start_kernel()、SMP 启动,一直讲到 Linux 运行第一个用户态 init 进程。

April 9, 2026 · 13 min · 6340 words · pipiang