当AI应用从云端走进芯片、系统和内核,Linux之父林纳斯·托瓦兹也按下了“AI辅助开发”的启动键。他首次提交由大语言模型辅助生成的内核补丁,并发文件读取吞吐量提升约3倍。这一事件正在改写基础软件的开发范式。

从实验分支到LLM:Linux之父的AI初体验

托瓦兹在个人Git仓库中推送了一个新分支:noref-filemap-read-with-llm。后缀中的“llm”醒目地提示着这次开发的特殊性。熟悉Linux开发流程的人都知道,torvalds/linux.git通常只维护master分支,几乎从不设立功能分支。这个反常动作,说明托瓦兹本人也对AI参与的项目抱有实验心态。

该分支上的补丁主题是“提高页面引用计数可扩展性”,专注于解决Linux内存管理的一个长期瓶颈。托瓦兹习惯在邮件列表中讨论补丁,但这一次,他从一开始就与AI编程工具Claude Code结对工作。补丁的核心代码、测试程序、漏洞审查和公告文档初稿,全部由Claude Code在他亲自指导下完成。

这并非一次简单的AI生成代码演示,而是系统级软件中首次由AI深度参与并达到可测试标准的尝试之一。这标志着AI应用正式进入操作系统底层,连内核开发者都开始认真对待大模型带来的生产力变革。更值得注意的是,托瓦兹对AI的态度已经从观望转为实践,甚至AI Agent技术的自主推演能力在其中发挥了关键作用。传统观点认为,AI只能做简单的辅助工作,但这次实验证明,在足够明确的约束和人类监督下,AI完全可以在最复杂的系统软件中承担核心开发任务。

性能跃升三倍:补丁如何突破内存管理瓶颈

这个补丁到底解决了什么问题?在多线程同时高频读取同一个文件时,内核需要维护页面缓存(Page Cache)的引用计数。传统机制下,每次读取都会触发引用计数更新,导致多核CPU在共享计数器上严重争抢,形成性能瓶颈。托瓦兹和AI的思路是尽可能避免多余的refcount操作,通过调整文件读取路径中的引用管理策略,减少原子操作的开销。

测试数据非常惊人:在8个线程同时读取同一个文件的特定负载下,读取吞吐量从每秒990万至1040万次,跃升至3000万至3300万次,提升约3倍;单次读取消耗的内核时钟周期也从大约2950次锐减至725次。这意味着,原本CPU大量耗费在锁竞争和缓存一致性上,现在终于能把算力用在数据搬运本身。

补丁目前仍处于实验分支,尚未进入Linux 7.4主线。但即便不考虑最终是否合入,它已经验证了一条重要路径:大模型能够理解复杂的内核内存管理逻辑,并提出有效的优化方案。这背后是大模型训练积累的代码推理能力,以及AI对底层并发问题的抽象理解。对托瓦兹而言,AI不是取代他,而是提供了一个不知疲倦的结对编程搭档,负责生成候选代码并快速迭代。这种效率提升让“AI技术深度参与底层开发”从设想变成了现实。

人机协作新模式:托瓦兹如何“指导”Claude Code

这次合作中,托瓦兹明确表示:补丁的核心代码、测试程序、漏洞审查以及公告文档的初稿,全部是在他的亲自指导下,由Anthropic推出的Claude Code协作完成的。所谓“亲自指导”,意味着托瓦兹定义问题、拆解任务、提出约束,并最终审查和验证结果;Claude Code则负责快速生成代码、编写测试、分析故障。

这种模式与传统的“人写代码、机器编译”截然不同。AI承担了大量繁琐的底层工作,让开发者能够专注于更高层次的架构决策。托瓦兹甚至关闭了部分系统安全防护来配合AI工具运行,这一细节既体现他对工具的信任,也侧面说明当前AI编程助手对环境权限的苛刻要求——它需要读取源码库、执行命令、查看日志,才能形成完整的反馈闭环。

值得注意的是,托瓦兹并非无条件信任AI输出。他会仔细审查每个补丁,并通过测试程序验证性能改进。这正是AI辅助开发的成熟范式:人类设定目标并掌控方向,机器负责生成候选方案。对于普通开发者而言,与其担忧被AI取代,不如学会如何用自然语言精确描述意图,驱动AI完成繁琐任务。不妨从AI工具箱中寻找适合自己的AI编程助手,逐步建立人机协作的工作流。这也是最新科技带给开发者最直接的礼物:降低重复劳动,放大创造价值。

不止补丁:LLM还在Linux代码库中揪出13年旧Bug

AI应用在代码理解上的潜力并不限于新功能开发。在近期维护者峰会及另一处assoc_array代码库清理中,托瓦兹同样利用LLM将晦涩难懂的陈旧代码重构,甚至一举揪出藏匿在Linux系统中长达13年之久的3个隐蔽Bug,最早可追溯至2013年的首个提交。

为什么AI能发现人类程序员漏掉的问题?原因在于大模型通过海量代码训练,积累了识别异常模式的能力。面对一团乱麻的历史代码,AI可以同时追踪多条调用路径,快速标记出逻辑矛盾或边界条件遗漏。而人类维护者往往会被现有注释和代码风格“带偏”,难以跳出惯性思维。

这次发现的意义不亚于性能补丁。13年的潜伏Bug说明,即使最优秀的开源项目也难免存在盲区。AI技术作为一种新的“审查员”,可以成为人工审查的有力补充。当然,这些Bug的最终确认和修复仍需要人类专家判断,AI只是缩小了排查范围。但这种效率提升已经足够让人兴奋——AI应用在代码理解上的价值,已经从边缘实验走向核心场景,给开源社区带来了一股全新动能。

AI辅助开发的安全与信任挑战

托瓦兹关闭部分安全防护来运行Claude Code的做法,在开发者社区引发了激烈讨论。支持者认为,AI辅助开发能极大释放生产力;担忧者则指出,AI生成的代码可能存在未被发现的逻辑后门或安全隐患,一旦进入操作系统内核,后果不堪设想。

这不是杞人忧天。大模型的训练数据来自公开代码库,其中不免存在有缺陷的代码模式。AI擅长模仿和组合,却不一定理解每一行代码背后的安全契约。尤其涉及内存管理、权限控制时,一条看似合理的改动,可能在某些边缘情况下引发崩溃或漏洞。

因此,AI辅助开发必须建立在严格的人工审查之上。托瓦兹的做法值得借鉴:他将AI定位为“副驾驶”,自己仍然作为最终责任人。内核社区也制定了完善的门禁机制,补丁需要经过邮件列表讨论、测试和多名维护者审核,才会被合入主线。这种流程上的“安全网”,正是AI技术大规模应用的前提。未来,随着AI能力增强,还需要开发专门的验证工具来审计AI生成的代码。也许不久的将来,企业数字化转型会让AI辅助开发成为标配,但信任的建立永远比速度更重要。

内核开发的未来:AI应用与人类智慧的融合

托瓦兹的这次尝试,向外界传递了一个清晰信号:即使是最保守的开源社区,也开始拥抱AI带来的变革。Linux内核拥有数千万行代码,维护者向来谨慎。但AI应用的价值正在被验证——从辅助生成补丁到查找历史Bug,大模型已经从“玩具”变成了“工具”。

可以预见,未来的内核开发将呈现人机协同的常态:AI负责初步实现、代码翻译、模式识别和单元测试,人类负责架构设计、最终审查和安全把关。这种分工能大幅缩短功能迭代周期,并降低贡献者的门槛。最新科技的发展,如大模型上下文窗口扩大和推理能力增强,将进一步释放这一潜力。

当然,也需要保持清醒:AI并不能完全理解Linux的哲学——“所有软件都是分层的,每层都很薄”——这些设计原则需要人类来守护。AI可以生成代码,但很难独立做出“是否值得合入”的权衡。托瓦兹依然掌控着方向。

对于普通开发者而言,这是一个令人振奋的时代。从AI工具导航可以看到,AI应用已覆盖从文生图到代码生成的广阔领域,无数效率工具正在涌现。即便你不是内核专家,也能借助AI完成许多过去需要深厚经验才能做的工作。关键在于,学会在AI时代保持提问能力、批判能力和创造力。