技术知识库

Linux Kernel MOC

Linux Kernel MOC

学习地图

  • 启动与初始化
  • 进程与调度
  • 内存管理
  • 中断、并发与同步
  • VFS 与存储栈
  • 设备模型与驱动
  • 网络子系统
  • 调试、Tracing 与性能

当前实验平台

  • 内核源码:Running Linux Kernel 5.0,分支 rlk_5.0
  • 目标架构:ARM64、RISC-V 64
  • 运行平台:QEMU virt
  • 长期用户空间:ARM64 Debian 12 bookworm ext4;RISC-V Debian 13 trixie ext4

笔记索引

学习章节

  1. 实验平台搭建
    • 内核构建、External/Built-in initramfs、Debian rootfs、RISC-V 扩展与模块实验是本章的五个小节。
  2. Linux 内核基础知识
  3. 字符设备驱动

启动与早期用户空间

当前驱动实验

  • martin_mailbox 已完成设备号、动态 cdev、自动设备节点和内存邮箱读写闭环。
  • misc_mailbox 已完成 misc 注册、自动设备节点和内存邮箱读写闭环。
  • kfifo_mailbox 已完成 KFIFO 基础读写和写满修复;Nonblocking I/O 写方向已验证,读方向待验证。
  • blockkfifo_mailbox 已完成阻塞读取;8 设备 epollkfifo_mailbox 已交叉编译,运行验证待完成,并已正确解释实验 6-8 的共享状态错误。
  • 实验手册 mydemo_fasync 已完成 SIGIO 异步通知闭环;设备节点失配故障已闭环,fasync_insert_entry() Oops 进阶题已建立用户态 GDB 类比实验,等待后续分析。
  • 第 6 章其余实验继续优先完成可运行闭环;框架和源码调用链在整章实验完成后集中补充。

下一阶段

  • 完成第 6 章其余字符设备实验
  • 集中阅读字符设备框架、VFS 分发和设备模型源码
  • QEMU + GDB 内核调试
  • ftrace、trace-cmd 与调度观察
  • IMX6ULL_PRO 官方 BSP 与真实硬件实验