Skip to content

前传:根基篇

修炼阶段: 凡人筑基 内核焦点: C 语言(内核方言)、汇编语言、底层基础

卷首语

大道无形,生育天地。万物之始,根基为先。

内核修士若不通 C 语言之玄奥、不悟汇编之精微,便如凡人持剑——剑虽利,手不稳,终是枉然。

此卷不讲故事,只讲道理。

但道理本身,便是最好的故事。

本卷章节

标题核心内容
缘起道生一七种根基,混沌中的意识
指针之道指针、数组、内存布局、栈与堆
结构之术结构体对齐、位域、、链表
编译器秘法GCC 扩展:
寄存器与指令RISC-V 64 汇编基础、寄存器、常用指令
内联汇编 语法、约束、C 与汇编的融合
位运算与原子操作位操作、CAS、、自旋锁基础
屏障与无常、内存屏障、编译器屏障、乱序执行
预处理器之道#define、条件编译、变参宏、Token 粘合
内存布局虚拟地址空间、栈与堆、内核地址空间
ELF 之道ELF 格式、段与节、符号表、重定位
终章筑基归一十种根基合一,踏上征途

为什么要读前传

内核代码不是普通的 C 代码。它充斥着:

  • 看不见的 GCC 扩展(__attribute__((packed))
  • 嵌入在 C 中的汇编(asm volatile、系统调用)
  • 普通程序员永远不会用的技巧(、位域操作)
  • 对硬件行为的精确控制(内存屏障、原子操作、缓存行对齐)

这些是内核世界的"灵气"。不通此道,读内核源码便如读天书。

涉及内核源码

  • — 基本类型定义
  • — 编译器宏与扩展
  • — 内核链表
  • — 内存屏障
  • arch/riscv/include/asm/ — RISC-V 架构相关汇编

以修仙之名,悟内核之道