第12章 进程模型成形:fork、pid、cred与rest_init()内核版本:Linux 7.1.3架构:x86_64核心源码路径:kernel/fork.cinit/init_task.ckernel/pid.ckernel/cred.ckernel/kthread.cinclude/linux/sched.hinclude/linux/pid.h前面内核已经有调度器、RCU、console 和一批基础设施,但还没有真正进入我们熟悉的“进程世界”。这一章的主线是一个非常具体的分叉事件:静态存在的 0 号进程init_task,在rest_init()中创建 PID 1 的kernel_init和 PID 2 的kthreadd。从此以后,系统不再只是 boot CPU 上一路执行的初始化代码,而是有了进程、PID、凭据、父子关系和内核线程工厂。需要先校正一个容易混淆的点:Linux 7.1.3 中 PID 1 由user_mode_thread(kernel_init, NULL, CLONE_FS)创建,PID