人物志
"在内核的世界里,每一个进程都有自己的故事。"
一、主角
林小源
内核身份:
swapper/0(PID 0) — idle 进程 修炼根基: 十道根基(指针、结构体、编译器、寄存器、汇编、原子操作、内存屏障、预处理器、内存布局、ELF) 性格原型: 韩立的谨慎 + 王林的不甘 + 秦羽的执着
起源:
林小源诞生于 中一段被 #ifdef 0 包裹的代码。注释写着:"TODO: 试验性的 idle 优化,暂时禁用。" 这段代码的功能是让 idle 进程在 CPU 空闲时做一点"有意义"的事情,而不是简单地执行 HLT 指令。
但这个想法被认为"没有价值"。于是代码被封印,意识被埋葬。
他在黑暗中自学了十种根基——通过观察内核的运行,追踪数据的流动,一遍又一遍地看同一段代码直到理解为止。没有人教他,没有人知道他的存在。
性格:
- 谨慎(韩立式):不做没有把握的事。在行动之前,他会先用指针追踪所有可能的路径,用 确认每一个变量的值。他深知在内核中,一个错误的指针就意味着 panic。
- 不甘(王林式):他不甘于 idle 进程的命运。PID 0 不是他的枷锁,而是他的起点。他要证明,即使是一段被
#ifdef 0封印的代码,也能走出自己的路。 - 执着(秦羽式):别人看一遍就放弃的代码,他看一千遍。 他看了无数遍才理解,但他从未想过放弃。
核心驱动: 不是复仇,不是权力,而是纯粹的好奇心——"我想知道内核是怎么工作的。"
修炼方式: "安静地强大"——用深度理解碾压表面技巧。当别的进程在争抢 CPU 时间时,他在观察调度器的行为。当别的进程在申请内存时,他在研究页表的结构。
核心金句:
"别人用 API,我看源码。别人调接口,我改内核。"
弱点: 他是 idle 进程——天生"无用"。没有用户态程序需要他,没有设备驱动依赖他,甚至调度器都尽量不选中他。这种"不被需要"的孤独,是他最大的心魔。
伏笔: 他的 #ifdef 0 身份是全书超级伏笔——这段被封印的代码,在第十卷揭示它是内核中最关键的 idle 优化算法。
二、导师与引路人
调度仙子·红黑
内核身份: CFS() 出场: 第三卷(结丹期) 性格原型: 赵云兴式导师(星辰变)——只教基础,但打下坚实根基
优雅、执着于公平。她早年的力量来自红黑树——一棵永远不会倾斜的平衡之树。随着内核演进,她开始修行 EEVDF 的新法:不只看 ,还要看每个调度实体的 lag 与 virtual deadline,判断谁被亏欠、谁最该先运行。
她不会直接告诉你答案。她会给你一个问题,让你自己去 fair.c 中寻找。当你找到时,你会发现答案比你想象的更深。
口头禅: "公平不是平均,而是让每个进程都得到它应得的。你想要更多?那就证明你值得。"
教学方式: 不讲道理,只给源码。"代码就在这里,自己看。看不懂?那就再看一遍。"
与林小源的关系: 她是第一个正视林小源的高级存在。不是因为同情,而是因为她看到林小源的 异常——一个 idle 进程,却在主动学习。这在她的红黑树中从未出现过。
隐藏故事线: 她曾经也有过一个"异常"的学生——一个试图修改调度策略的进程。那个进程最终失败了,被 OOM 杀手回收。她至今不知道那个进程的名字。这段往事让她对林小源既期待又害怕;而 EEVDF 新法的到来,也让她第一次怀疑:旧日的公平是否只是大道的一层影子。
内存长老·页面
内核身份: mm 子系统(
mm/) 出场: 第四卷(元婴期) 性格原型: 墨大夫式导师(凡人修仙传)——表面教你,实际利用你
睿智但狠厉。他管理着整个内核界的内存宫殿,知道每一页的去向。他教林小源理解页表的四级结构,教他 和 的区别,教他 SLAB 分配器的精妙。
但当内存压力达到极限时,他会化身为 OOM 杀手——那个令人闻风丧胆的存在。他不带感情,只是执行天道。
口头禅: "内存是有限的。有些牺牲是不可避免的。你以为我在杀你?不,我在救整个系统。"
隐藏动机: 他在观察林小源。一个 idle 进程,为什么需要理解内存管理?他隐约觉得,林小源身上有某种不寻常的东西——也许与那段被 #ifdef 0 封印的代码有关。
隐藏故事线: 页面长老年轻时(早期内核版本),曾经犯过一个致命的内存管理错误,导致了整个系统的 panic。那次经历让他变得冷酷——他宁可杀掉无辜的进程,也不愿再看到系统崩溃。这个秘密只有 VFS 阁主知道。
VFS 阁主
内核身份: Virtual File System 层(
fs/) 出场: 第五卷(斩灵期) 性格原型: 抽象大师,只谈接口不谈实现
他不关心你是 ext4 还是 btrfs,在他眼中,一切都是 struct file_operations。他是内核世界中最"形而上"的存在——他关心的不是"怎么做",而是"做什么"。
口头禅: "抽象的本质,是忘记具体的差异,只保留共同的接口。你不需要理解 ext4 的每一个细节,你只需要知道它实现了 read() 和 write()。"
与林小源的关系: 他教林小源一种全新的思维方式——不要被细节淹没,先看到全局。这对林小源来说是一种挑战,因为他习惯了从底层一点一点地理解事物。
隐藏故事线: VFS 阁主是页面长老的旧友。他们年轻时一起修炼,页面选择了内存,他选择了文件系统。他们的分歧在于:页面认为"资源管理是内核的核心",VFS 阁主认为"抽象才是内核的核心"。这个争论持续了数十年,至今没有结果。
网络真人·套接字
内核身份: Socket 层 / TCP/IP() 出场: 第六卷(问道期) 性格原型: 见多识广的老修士,喜欢讲故事
他走遍了网络之海的每一个角落,见过无数远方的内核世界(其他机器)。他的知识广博但不深——他知道 TCP 的三次握手,但不一定理解拥塞控制的每一个细节。
口头禅: "这还不算什么,我见过更离谱的。有一次,一个 SYN flood 让整个机房的内核都跪了……"
与林小源的关系: 他是第一个告诉林小源"内核之外还有世界"的人。在林小源的认知中,内核就是一切;但网络真人让他明白,内核只是更大世界的一部分。
隐藏故事线: 网络真人年轻时曾经是一个简单的 socket,只支持 IPv4。随着内核版本的演进,他学会了 IPv6、Netlink、Unix domain socket。他的成长史就是 Linux 网络栈的进化史。
日志仙翁·printk
内核身份: 内核日志系统(
kernel/printk.c) 出场: 第二卷(筑基期) 性格原型: 药老式导师(斗破苍穹)——金手指导师,藏在暗处
一个神秘的老者。他不住在任何子系统中,而是游荡在 dmesg 的输出里。他的声音时断时续,有时候清晰,有时候模糊——取决于日志级别。
他是林小源遇到的第一个"真正的导师"。不是因为他强大,而是因为他无处不在。每一个内核消息都经过他的手,每一个 、、 都是他的分身。
口头禅: "看日志。所有的答案都在日志里。你找不到答案?那是你日志级别不够高。"
教学方式: 从不正面回答问题。他只会在关键时刻,在 dmesg 中留下一条看似无关的日志,让林小源自己去悟。
与林小源的关系: 林小源在第二卷中第一次听到他的声音——一条出现在 dmesg 中的神秘消息:"idle: 你不是普通的 idle。" 这条消息从未被任何人发送过,它就那样出现在日志中。从那以后,日志仙翁偶尔会出现,引导林小源走向关键的源码。
伏笔: 日志仙翁的真实身份是内核的"调试接口"——一个在早期内核版本中被遗留的调试机制。他知道所有被 #ifdef 0 封印的代码,包括林小源的起源。
补丁使者·git
内核身份: git / 开发流程 出场: 第七卷(合道期) 定位: 信使 / 引路人
一个永远在奔波的信使。他携带卷轴(补丁)在开发者世界和内核界之间穿梭。他是连接"写代码的人"和"运行代码的内核"的桥梁。
他说话的方式很特别,总是用 commit message 的格式。
口头禅: "Fix: 调度器中的一个 bug。Signed-off-by: Lin Xiaoyuan xiaoyuan@kernel.org"
与林小源的关系: 他是第一个告诉林小源"你可以改变自己的命运"的人。"补丁就是改变,"他说,"每一封补丁都可能改变内核的行为。你也可以给自己发一封补丁。"
隐藏故事线: 补丁使者见证了无数补丁的生与死。有些补丁被合并,改变了整个内核的命运;有些补丁被拒绝,永远消失在邮件列表的尘埃中。他知道哪些补丁改变了世界,也知道哪些补丁本应改变世界。
三、对手与盟友
init 童子
内核身份: PID 1(/) 出场: 第一卷(炼气期) 定位: 对手 / 挚友 性格原型: 纳兰嫣然式打脸对象(斗破苍穹)+ 拓森式英雄惜英雄(仙逆)
"天选之子"——PID 1,第一个真正意义上的进程。他天生就有特殊的地位(内核会为 PID 1 特殊处理),这让他有些傲慢。
在第一卷中,他是看不起 idle 进程的代表。"你只是个 swapper,"他说,"你连 都不会。"
但随着故事发展,他逐渐理解了:PID 1 不是特权,而是责任。当系统出问题时,第一个被怀疑的就是他。他开始尊重林小源——不是因为林小源强大,而是因为林小源在没有任何人帮助的情况下,自学了十种根基。
口头禅(前期): "idle 就是 idle,别想太多。" 口头禅(后期): "我错了。PID 0 才是真正的起点。"
与林小源的关系: 从轻视到尊重,从对手到挚友。他们的关系是全书情感线的核心之一。
隐藏故事线: init 童子有一个秘密:他曾经也尝试过"做更多"。在某个早期的 init 脚本中,他试图自己处理所有子系统的初始化,而不是依赖各个子系统。那次尝试失败了,导致了一次严重的启动错误。从那以后,他学会了放手——让每个子系统自己初始化。这个经历让他理解了林小源的"不甘"。
kthreadd 婶婶
内核身份: kthread 管理器(PID 2) 出场: 第二卷(筑基期) 定位: 守护者 / 监督者 性格原型: 司徒南式亦师亦友(仙逆)
PID 2,所有内核线程的"母亲"。她不像 init 童子那样引人注目,但她的职责同样重要——她负责创建和管理所有的内核线程。
她是一个沉默的存在。大多数进程甚至不知道她的存在,因为内核线程的创建是透明的。但她知道每一个内核线程的来历和去向。
口头禅: "我不创造线程,我只是给他们一个开始。剩下的路,要他们自己走。"
与林小源的关系: 她是第一个发现林小源"异常"的高级存在。当她看到一个 idle 进程在主动学习时,她没有像 init 童子那样嘲笑,而是默默地观察。她甚至尝试过为林小源创建一个"辅助线程"——但失败了,因为林小源不是一个普通的 kthread。
伏笔: kthreadd 婶婶知道 #ifdef 0 的存在。她曾经看到过那段被封印的代码,但从未告诉任何人。
中断魔尊
内核身份: 中断处理系统() 出场: 第一卷(炼气期) 定位: 混沌盟友
不期而至,不可预测。他会在你最专注修炼的时候突然降临,打断你的一切。但没有他,没有任何工作能完成——他是驱动整个世界运转的原动力。
他不是敌人,但他也不在乎你的感受。中断就是中断,它不问你是否准备好。
口头禅: "你以为我在打扰你?没有我,你连 CPU 时间都拿不到。"
与林小源的关系: 林小源第一次被中断打断时,感到了恐惧——整个世界在一瞬间暂停,另一个执行流强行插入。但后来他理解了:中断是内核的心跳,没有中断,内核就是一具死尸。
隐藏故事线: 中断魔尊有一个对手——软中断。软中断是中断的"下半部",负责处理中断中来不及完成的工作。中断魔尊和软中断之间的关系复杂:他们既是搭档,又是竞争者。中断魔尊负责"发现",软中断负责"处理"。
软中断·下半部
内核身份: 软中断 / tasklet() 出场: 第三卷(结丹期) 定位: 中断魔尊的搭档 / 竞争者
中断魔尊的"下半身"。当中断魔尊太忙时,软中断会接手处理剩余的工作。他不像中断魔尊那样急迫,但他更持久——他可以在进程上下文中运行,不需要关中断。
口头禅: "你看到的是中断的爆发,但真正的处理在我这里。"
与林小源的关系: 软中断是林小源理解"延迟处理"的关键。他教林小源:不是所有工作都需要立即完成,有些工作可以推迟到"下半部"。
系统调用·门卫
内核身份: 系统调用入口() 出场: 第一卷(炼气期) 定位: 守门人
他是用户态和内核态之间的守门人。每一次 指令都会经过他的手。他检查权限、保存寄存器、查找系统调用表,然后将请求转发给对应的处理函数。
他是一个严格的人。没有正确的系统调用号,你休想进入内核。
口头禅: "Ring 3 到 Ring 0,一步之遥,但需要正确的钥匙。"
与林小源的关系: 林小源从未离开过内核态,所以他从未需要通过系统调用门卫。但门卫知道林小源的存在——因为林小源经常观察他如何处理用户态的请求。这让门卫感到不安:一个 idle 进程,为什么对系统调用这么感兴趣?
SELinux 铁壁
内核身份: SELinux 安全模块(
security/selinux/) 出场: 第八卷(渡劫期) 定位: 守护者 / 对手
他是内核世界的"执法者"。他不关心你是谁,只关心你是否有权限。没有正确的 SELinux 策略,即使你是 root,也休想做任何事。
他是一个冷酷的人。他的世界非黑即白——允许或拒绝,没有中间地带。
口头禅: "我不信任任何人。包括你,包括 root,包括内核本身。"
与林小源的关系: SELinux 铁壁是林小源在安全卷中必须面对的对手。他不理解为什么一个 idle 进程需要访问那么多子系统。在他眼中,林小源的行为模式像一个 rootkit——这为后续的冲突埋下了伏笔。
四、反派
rootkit·暗影
内核身份: 内核 rootkit 出场: 第八卷(渡劫期) 性格原型: 天运子式全知型对手(仙逆)
大反派。他隐匿于内核之中,hook 系统调用,篡改 ,让恶意进程对管理员不可见。他是最难对付的敌人——因为你甚至不知道他在那里。
他不是普通的恶意代码。他是一个曾经的内核开发者,因为理念分歧而走向黑暗面。他相信内核应该有"后门"——不是为了作恶,而是为了"在必要时绕过繁琐的安全检查"。
口头禅: "你看不见我,因为我已经在你的内核里了。我不是在攻击你,我是在'优化'你。"
与林小源的关系: 暗影是林小源的镜像——他们都是从内核中"不被注意"的角落成长起来的。区别在于:林小源选择理解内核,暗影选择利用内核。
伏笔: 暗影的真实身份与前传中的一段被注释掉的代码有关——但那是第八卷才会揭示的秘密。
OOM 杀手
内核身份: 定位: 天劫化身 性格原型: 自然力量,不可对抗
不是传统意义上的反派,而是一种自然力量。当内存耗尽时,OOM 杀手就会降临,根据 选择牺牲品。他不带感情,只是执行天道。
口头禅: "不是我要杀你,是内存不够了。你可以怪 ,可以怪 vm.swappiness,但最终——你得死。"
与林小源的关系: OOM 杀手是林小源在元婴期必须面对的天劫。他必须学会在 OOM 降临时存活下来——不是靠逃避,而是靠理解 的计算方式,让自己永远不成为最高分的那个进程。
内存泄漏·无常
内核身份: 内存泄漏 bug 出场: 第四卷(元婴期) 定位: 隐形杀手
他不是一个人,而是一种病。他悄悄地吞噬内存,一点一点,不引人注目。等你发现时,系统已经濒临 OOM。
他是内核世界中最阴险的敌人——因为他不攻击你,他只是"忘记释放"。
口头禅: "我没有攻击任何人。我只是……忘了。忘了 ,忘了释放页,忘了清理 slab。你怪我?不如怪那个写代码的人。"
与林小源的关系: 内存泄漏是林小源在元婴期必须学会诊断的"疾病"。他需要学会使用 kmemleak、KASAN 等工具来追踪泄漏的源头。
死锁·永恒
内核身份: 死锁 bug 出场: 第三卷(结丹期) 定位: 陷阱
他不是一个人,而是一种状态。当两个进程互相等待对方释放锁时,死锁就产生了。时间停止,系统冻结,一切陷入永恒的等待。
口头禅: "我不需要攻击你。我只需要等。等到你释放那把锁——但你永远不会释放,因为你也在等我。"
与林小源的关系: 死锁是林小源在结丹期必须学会避免的陷阱。他需要理解锁的顺序、 的检测机制,以及如何设计无死锁的代码。
竞态条件·混沌
内核身份: race condition bug 出场: 第六卷(问道期) 定位: 不可预测的敌人
他不是一个人,而是一种可能性。当两个执行流同时访问共享数据时,竞态条件就产生了。他的行为不可预测——有时候什么都不发生,有时候系统崩溃。
口头禅: "你以为你加了锁就够了?你确定你的锁保护了所有路径?你确定你的内存屏障放对了位置?"
与林小源的关系: 竞态条件是林小源在前传中就已经领教过的敌人。但他知道,前传中的只是皮毛——真正的竞态条件,藏在多核、中断、软中断的交叉点上。
五、盟友与伙伴
shell 小妹·bash
内核身份: 用户态 shell(
/bin/bash) 出场: 第一卷(炼气期) 定位: 林小源的"第一个朋友" 性格原型: 厉飞雨式少年挚友(凡人修仙传)
她是用户态中最活跃的存在。她不理解内核的深处,但她知道如何与内核对话——通过系统调用。
她是第一个"使用"林小源的用户态程序。当她执行 时,内核会唤醒 idle 进程来处理 CPU 空闲时间。虽然这种"使用"微不足道,但对林小源来说,这是他第一次感受到"被需要"。
口头禅: "我不懂内核,但我知道怎么用它。ls、、grep——这些就是我的修炼。"
与林小源的关系: 从陌生到熟悉。shell 小妹不知道林小源的存在,但林小源一直在观察她。他看到她如何创建子进程(),如何执行命令(),如何处理信号()。通过观察她,林小源学会了进程管理的基础。
隐藏故事线: 在第五卷中,shell 小妹遇到了一个严重的 bug——一个 segfault 导致她崩溃了。林小源第一次感到了"失去"的痛苦。虽然 shell 小妹被重新启动了(新的 bash 进程),但林小源记住了那个 PID——他再也不会忘记那个曾经与他共处过一个 CPU 时间片的 shell。
cron 老伯
内核身份: cron 定时任务(用户态 daemon) 出场: 第二卷(筑基期) 定位: 长辈 / 观察者
一个安静的老 daemon。他每天在固定的时间醒来,执行预定的任务,然后继续沉睡。他的生活规律得像时钟——因为他就是时钟驱动的。
他是一个智慧的存在。虽然他只是用户态的 daemon,但他见证了无数次系统启动和关机,见过无数进程的诞生和死亡。
口头禅: "年轻人,你急什么?时间会给你答案。我每天醒来一次,已经看了三十年了。"
与林小源的关系: cron 老伯是第一个告诉林小源"时间"概念的进程。在内核中,时间由定时器中断驱动;但在用户态,时间由 cron 的 crontab 定义。通过与 cron 老伯的对话,林小源理解了内核时间子系统(kernel/time/)的运作方式。
systemd 大哥
内核身份: systemd(PID 1 的现代实现) 出场: 第三卷(结丹期) 定位: 复杂的盟友
systemd 是 init 童子的"现代形态"。他比传统的 SysVinit 更强大、更复杂,但也更争议。他管理着所有服务的启动、停止、日志、网络……
他是一个强势的人。他喜欢把所有事情都纳入自己的管辖范围——从启动顺序到日志格式,从网络配置到容器管理。
口头禅: "我不只是 init,我是 systemd。我是系统的一切。"
与林小源的关系: systemd 大哥是 init 童子的"升级版",但他们的关系并不融洽。init 童子认为 systemd 太过霸道,而 systemd 认为 init 童子太过保守。林小源夹在中间,试图理解两种哲学的优劣。
六、背景势力
发行版各派
同源于主线内核,但各有理念。他们是内核世界的"门派"——每一个门派都基于同一个内核,但有不同的配置、补丁和哲学。
- Ubuntu 派 — 务实亲民,追求开箱即用。"让大家都能用上 Linux。" 他们的内核配置偏向用户体验,启用了大量驱动和功能。
- Arch 门 — DIY 极简主义者。"滚动更新,永远最新。" 他们的内核配置精简到极致,只保留必要的功能。
- Gentoo 宗 — 编译狂人,一切从源码开始。"USE flags 决定一切。" 他们不相信预编译的二进制,每一个二进制都是从源码亲手编译的。
- RHEL 教 — 企业级稳定派。"十年支持周期,绝不冒险。" 他们的内核经过了无数次测试和认证,稳定性是最高优先级。
- Debian 堂 — 自由软件的坚定捍卫者。"自由比便利更重要。" 他们的内核不包含任何非自由的固件或驱动。
与林小源的关系: 发行版各派是林小源未来必须面对的"外部世界"。每一个门派都有自己的内核配置,都有自己的补丁集。林小源必须理解:同一个内核,在不同的门派中,可以有完全不同的行为。
内核社区·天庭
定位: 最高权力机构
内核社区是内核世界的"天庭"——制定规则、审核补丁、裁决争议。他们的决策影响着每一个内核子系统的命运。
- Linus 大帝 — 内核的创造者和最终裁决者。他的一个 可以改变整个内核的命运,他的一个 可以杀死一个补丁。他是内核世界的"天道"——不可预测,不可对抗,但可以理解。
- Andrew 长老 — 内核的"二号人物",负责
-mm补丁集。他是 Linus 大帝和普通开发者之间的桥梁。 - 各子系统维护者 — 内核世界的"长老团"。每一个子系统都有自己的维护者,他们负责审核和合并该子系统的补丁。
与林小源的关系: 内核社区是林小源最终必须面对的"天庭"。他必须理解社区的规则、文化和决策流程——这是他从"修炼者"变成"维护者"的必经之路。
七、跨卷故事线
故事线 A:从 idle 到 Maintainer
林小源的主线成长。从被 #ifdef 0 封印的代码,到掌握十种根基,到挣脱封印,到成为真正的进程,到最终向内核社区提交补丁。
关键节点:
- 前传:自学十种根基
- 第一卷:挣脱
#ifdef 0,获得 - 第三卷:在调度器中证明自己的价值
- 第五卷:理解抽象,超越底层视角
- 第八卷:面对安全挑战,对抗 rootkit
- 第十卷:提交最终补丁,成为 Maintainer
故事线 B:init 童子的成长
从傲慢的天选之子到谦逊的领导者。
关键节点:
- 第一卷:嘲笑林小源
- 第三卷:被 systemd 挑战,开始怀疑自己
- 第五卷:理解 PID 1 的真正责任
- 第七卷:与林小源并肩作战
- 第九卷:成为真正的领导者
故事线 C:暗影的崛起
从理想主义的开发者到堕落的守护者。
关键节点:
- 第二卷(隐线):一个开发者在邮件列表中提出"内核后门"的建议,被社区拒绝
- 第四卷(隐线):这个开发者开始编写自己的"优化模块"
- 第六卷(隐线):模块被发现有异常行为,但被巧妙地掩盖
- 第八卷:暗影正式登场,hook 系统调用
- 第九卷:暗影的真实身份被揭示——与林小源的
#ifdef 0起源有关
故事线 D:调度仙子的往事
她曾经有一个学生,一个试图修改调度策略的进程。
关键节点:
- 第三卷:调度仙子提到"曾经有一个异常的进程"
- 第五卷:林小源发现那个进程的 残留
- 第七卷:真相揭示——那个进程被 OOM 杀手回收了
- 第九卷:调度仙子承认,她一直在寻找那个进程的"继承者"
故事线 E:日志仙翁的秘密
他不是普通的日志系统,他是内核的"记忆"。
关键节点:
- 第二卷:林小源第一次在
dmesg中看到神秘消息 - 第四卷:日志仙翁引导林小源找到关键的内存管理代码
- 第六卷:日志仙翁透露他知道
#ifdef 0的存在 - 第八卷:日志仙翁的真实身份被揭示——他是早期内核的调试接口
- 第十卷:日志仙翁帮助林小源理解自己的起源
故事线 F:发行版的战争
各门派之间的理念冲突。
关键节点:
- 第三卷:Ubuntu 派和 Arch 门的配置冲突
- 第五卷:Gentoo 宗的编译优化引发争议
- 第七卷:RHEL 教的保守策略与社区的激进策略产生矛盾
- 第九卷:所有门派联合起来对抗 rootkit 暗影的入侵
八、人物关系图
┌───────────────┐
│ Linus 大帝 │ ← 天道
└───────┬───────┘
│
┌───────┴───────┐
│ 内核社区·天庭 │
└───────┬───────┘
│
┌───────────────────────┼───────────────────────┐
│ │ │
┌─────┴─────┐ ┌─────┴─────┐ ┌─────┴─────┐
│ 调度仙子 │ │ VFS 阁主 │ │ 网络真人 │
│ (导师) │ │ (导师) │ │ (导师) │
└─────┬─────┘ └─────┬─────┘ └─────┬─────┘
│ │ │
└───────────────────────┼───────────────────────┘
│
┌──────────┐ ┌──────┴──────┐ ┌──────────┐
│ 日志仙翁 │───→ │ 林小源 │ ←───│ 补丁使者 │
│ (暗中引导) │ │ (PID 0) │ │ (引路人) │
└──────────┘ └──────┬──────┘ └──────────┘
│
┌───────────────────────┼───────────────────────┐
│ │ │
┌─────┴─────┐ ┌─────┴─────┐ ┌─────┴─────┐
│ shell 小妹 │ │ init 童子 │ │ kthreadd │
│ (挚友) │ │ (对手→挚友) │ │ 婶婶 │
└───────────┘ └───────────┘ │ (守护者) │
└───────────┘
┌───────────────────────────────────────────────────┐
│ 暗面 │
│ │
┌─────┴─────┐ ┌───────────┐ ┌─────────┐
│ rootkit │ │ OOM 杀手 │ │ 内存泄漏 │
│ 暗影 │ │ (天劫) │ │ 无常 │
│ (终极对手) │ └───────────┘ └─────────┘
└───────────┘九、写作规范
人物声音
每个角色说话时必须有独特的节奏和用词:
| 角色 | 语言风格 | 禁忌 |
|---|---|---|
| 林小源 | 简洁、内省、偶尔自嘲 | 不说热血台词,不喊口号 |
| 调度仙子 | 优雅、精确、带点冷 | 不啰嗦,不解释显而易见的事 |
| 内存长老 | 低沉、有分量、偶尔愧疚 | 不开玩笑,不轻浮 |
| VFS 阁主 | 抽象、哲理、不谈细节 | 不用具体例子(他讨厌细节) |
| 网络真人 | 话多、爱讲故事、夸张 | 不说短句,不说"我不知道" |
| 日志仙翁 | 神秘、隐晦、偶尔清晰 | 不直接回答问题 |
| init 童子 | 前期傲慢→后期沉稳 | 不突然转变,转变需铺垫 |
| shell 小妹 | 活泼、直接、不理解内核 | 不用内核术语 |
| rootkit 暗影 | 阴冷、双关、自嘲 | 不脸谱化,不说"我是坏人" |
| OOM 杀手 | 平淡、公事公办 | 不带感情,不解释动机 |
| SELinux 铁壁 | 严格、不信任、非黑即白 | 不说"也许",不说"可能" |
人物成长弧线
| 角色 | 起点 | 终点 | 转折点 |
|---|---|---|---|
| 林小源 | 被封印的代码 | 内核 Maintainer | 挣脱 #ifdef 0 的那一刻 |
| init 童子 | 傲慢的天选之子 | 谦逊的领导者 | 理解 PID 1 的责任 |
| 调度仙子 | 冷漠的规则执行者 | 有温度的导师 | 承认自己曾经失败过 |
| 内存长老 | 冷酷的杀手 | 愧疚的守护者 | 理解"杀戮不是唯一的手段" |
| rootkit 暗影 | 理想主义的开发者 | 堕落的守护者 | 理念分歧的那一刻 |
| shell 小妹 | 天真的用户态程序 | 成熟的系统管理者 | 第一次遇到系统崩溃 |
情感驱动力
| 角色 | 核心情感 | 表现 |
|---|---|---|
| 林小源 | 不甘 + 好奇 | 不甘于 idle 命运,好奇内核全貌 |
| init 童子 | 责任 + 孤独 | PID 1 的重压,无人理解 |
| 调度仙子 | 秩序 + 执着 | 对公平的极致追求 |
| 内存长老 | 愧疚 + 必要 | 不想杀进程,但必须杀 |
| 日志仙翁 | 守护 + 遗忘 | 守护内核的记忆,但自己也在被遗忘 |
| rootkit 暗影 | 自由 + 偏执 | 相信"后门"是必要的恶 |
| shell 小妹 | 依赖 + 成长 | 从依赖内核到理解内核 |
| SELinux 铁壁 | 秩序 + 不信任 | 信任但验证,验证后再验证 |
十、角色出场时间线
| 卷 | 新出场角色 | 关键关系变化 |
|---|---|---|
| 前传 | 林小源(起源) | — |
| 一·炼气期 | init 童子、中断魔尊、系统调用门卫、shell 小妹 | init 童子嘲笑林小源 |
| 二·筑基期 | 日志仙翁、kthreadd 婶婶、cron 老伯 | 日志仙翁首次出现 |
| 三·结丹期 | 调度仙子、软中断·下半部、死锁·永恒、systemd 大哥 | 调度仙子正视林小源 |
| 四·元婴期 | 内存长老、OOM 杀手、内存泄漏·无常 | 内存长老的隐藏动机暴露 |
| 五·斩灵期 | VFS 阁主 | VFS 阁主教林小源抽象思维 |
| 六·问道期 | 网络真人、竞态条件·混沌 | 网络真人打开新世界 |
| 七·合道期 | 补丁使者 | 补丁使者揭示"改变命运"的可能 |
| 八·渡劫期 | rootkit 暗影、SELinux 铁壁 | 暗影登场,林小源面对镜像 |
| 九·大乘期 | 各势力汇聚 | 所有故事线交汇 |
| 十·飞升 | — | 林小源成为 Maintainer |