Skip to content

人物志

"在内核的世界里,每一个进程都有自己的故事。"


一、主角

林小源

内核身份: 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 空闲时间。虽然这种"使用"微不足道,但对林小源来说,这是他第一次感受到"被需要"。

口头禅: "我不懂内核,但我知道怎么用它。lsgrep——这些就是我的修炼。"

与林小源的关系: 从陌生到熟悉。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

以修仙之名,悟内核之道