Kurtzer用Codex 11天写13.9万行内核:Rocky Linux 10能跑?
作者 | Tina“就算给模型无限 token,它也做不出操作系统级别的东西。”这话在过去几年里,几乎是技术圈对 AI 能力上限的共识。但现在 Gregory Kurtzer 用自己的方式回答了这个疑问。这个名字对 Linux 圈的人来说不陌生:他是 CentOS 的创始人之一,也是在 Red Hat 决定终止 Cen
“哪怕把token给到无限,模型也造不出操作系统级别的东西。”过去几年,这话在技术圈几乎被当成AI能力天花板的定论。
不过Gregory Kurtzer给出了另一种答案。Linux圈里这个名字不陌生:CentOS创始人之一,Red Hat决定停掉CentOS Linux之后,又是他一手推出了Rocky Linux。
2026年10月27日,Kurtzer在X上公布:11天时间,他靠“人类主导的智能体工程”(Human-Directed Agentic Engineering,HDAE)写下约13.9万行代码,做出了一款全新的Linux兼容内核,能启动Rocky Linux 10并跑起systemd。
项目叫Ginux,是一款独立开发、以Rust为主的x86-64内核。说白了,它不是从Linux内核分叉出来的。
内存管理、调度器、进程模型、文件系统、网络和设备支持,Ginux全都自己写,从零开始。
有意思的地方在于:Ginux不是Linux,却兼容Linux。它实现了Linux ABI——已编译程序与内核通信所用的二进制接口,所以现有的Linux二进制程序不用改动,就能直接在Ginux上运行。
Kurtzer这个项目有个参照物:Anthropic的Nicholas Carlini曾用16个并行运行的Claude智能体,从零构建了一个C编译器。那项实验花了近2000个会话、约2万美元,产出约10万行Rust代码,能编译大量软件,Linux内核构建过程的大部分内容也在其中。编译器测试套件和参考工具,为验证结果提供了很强的依据。
Ginux的验收难度更高:从零搭出一个内核,再让未经修改的Linux用户空间程序在上面跑起来。Linux程序能不能跑、systemd能不能启动,就是检验系统是否真正工作的关卡。
Kurtzer 在技术报告里把研究目标分成三个问题。能力层面:HDAE 能不能做出一个独立内核,让它启动并跑起一部分未经改动的 Linux 发行版工作负载?方法层面:要让这项工作一直推进下去,需要哪些文档、引导方式、可执行关卡和反馈循环?结果质量层面:最终系统的兼容性和性能怎么样?这些结论的适用范围又是什么?
他想弄清楚的是:当领域专家把架构、约束、里程碑和验收标准定清楚之后,AI能把系统软件推进到哪一步。
Kurtzer参与过Caos Linux、CentOS和Rocky Linux的建设,也有Singularity/Apptainer、Warewulf、Perceus及生产基础设施运维方面的经验。这些经历影响了Ginux的启动流程和验收标准。
这次几乎全部工作都在一个持续运行的
Codex任务中完成,用的是GPT-5.6 Sol。原话:“作者负责设定架构、系统操作、解读结果,并作出最终验收决定。”
人的角色落在HDAE两个互相配合的循环里:
HDAE外部引导循环: 愿景 → 架构与约束 → 验收关卡 → 人类审查观察到的行为 → 修正、调整优先级或验收。
HDAE 内部有一套智能体循环,整个过程不需要人盯着:先实现,再构建并在 QEMU 中运行,接着测量并分析故障,然后修订,最后做回归测试。
换句话说,目标、架构、Linux兼容性目标、操作模型、故障解读和停止决定,都由Kurtzer提供。Codex做的,是把从技术决策到可运行代码的距离缩短。
愿景、优先级和成功标准,则来自Kurtzer的领域知识。他说,“项目需要领域知识来选择Linux用户空间契约、区分OCI传输与运行时隔离、识别损坏的fork/exec行为、定义域所有权、解读systemd故障,并判断看似可信的输出是否符合预期。”
选systemd当验收关卡,是因为它依赖大量系统组件,也是启动和运行整个系统的核心进程。不过它在容器里启动时很挑环境,所以Ginux先实现了“域”,再处理容器。
X 上有人问 Kurtzer 为什么挑 Codex。他的说法是,Codex 不太会把 token 耗在支线上。可就算这样,他还是得时常把它拽回正轨。有些大块代码他看着不满意,却硬逼着自己别动手改——“我甚至关掉了 IDE,强迫自己别打开。这样AI做错时,我就只能给它新的指引;很多时候,它会把写错的代码删掉。”对方接着问,具体怎么把它拉回正轨,是列一张禁止事项清单,还是盯着输出、一跑偏就拽回来?Kurtzer 答得很干脆:关卡设得多。
这也正是他强调的:“没有引导的‘氛围编程’不适合这个项目。”
“不少故障给出的输出看着挺可信,实际上却违反了 Linux 语义、隔离要求或者生命周期行为……最后拿到的就是那种表面能跑、结构却很单薄的代码,也就是常说的‘AI 垃圾’。”
“AI 也能让经验偏少的工程师更快上手有边界的实际工作,比如去摸索不熟悉的代码、生成测试、比对接口,以及实现那些经过审查的改动。但到了挑抽象、判断结果全不全,还有评估局部成功会不会带来系统级风险的时候,经验还是少不了。”
一个智能体,配上一名经验足够的人类专家,走得比一群无人看管的智能体更远。
11天下来,项目留下大约13.9万行代码,累计提交1,037次,涉及261个跟踪文件、63个Rust源文件。
这些成果最终打包成一个GINUX.EFI镜像,走UEFI就能直接启动,不必再依赖Linux宿主内核。
启动之后,它能跑多个彼此隔离的“域”(domain)。每个域有自己的进程、地址空间、文件系统和生命周期。按项目的说法,这种隔离边界比OCI容器或Linux命名空间更强。
另一项能力是拉取并校验OCI容器镜像,再用镜像拼出域的根文件系统。靠这套机制,Ginux把Rocky Linux 10拉了起来,一路跑到systemd的multi-user.target。部分Alpine Linux程序同样能跑,比如musl和BusyBox。
性能上,项目拿Rocky Linux做了一次对比测试。环境是在Apple Silicon Mac上用虚拟机模拟,只分配1个CPU核心、2 GiB内存,两边跑同一个测试程序。启动环节,Ginux让Rocky Linux 10进入可登录状态花了12.9秒,Linux内核则用了42.6秒,前者快约3.3倍。不过Ginux启动时省掉了加载内核这一步,文件系统也是现成缓存的,这个数字只能当参考。真正能比的是跑分:三秒sysbench测试,每个系统测九次取中位数,结果如下:
三项测试里,Ginux已经和Linux贴得很近:CPU和线程略高,内存略低,差距落在个位数到十几个百分点之间。
这轮实验的API调用费用约8000美元。代码以Apache 2.0许可证发布,托管在GitHub上。
发布之后,Kurtzer在技术报告里写下这样一句:“更重要的启示是,AI 能够生成复杂的系统软件,但兼容性、安全性、硬件支持、标准、社区和长期维护,依然构成真正的护城河。”
造一个小型可运行内核,其实不难;维护生产级内核是另一码事。要撑住各种硬件和工作负载,保持接口稳定,修缺陷,协调贡献者和厂商,还得有靠谱的发布节奏。工作流、兼容性、维护和社区,才是真正难的部分。
AI生成软件带来的竞争压力,可能最先压到中间件和编排层,因为在这两层换软件,不必把整套硬件和系统生态一起搬走。基础软件当然也能重写,但一套基础设施能不能被采用,看的是标准、接口、认证、硬件适配、社区能否延续、有没有商业支持。
他强调,“缺少生态,创新本身价值有限。”
Linux 是最典型的例子。它的价值远不止启动一个 shell 所需的那点源代码:不同处理器、设备、文件系统、虚拟机、发行版、厂商和应用,都靠它获得稳定的预期。Ginux 目前还没有可比的硬件矩阵、标准组织或社区,无法承诺今天能跑的程序明天照样能跑。AI 能造出技术组件,但这些组件要被真正采用,还得有多个独立组织共同支持同一套契约。
Kurtzer在这份13页技术报告的最后写道:AI已经能写系统栈深处的代码了。可基础设施的核心价值,来自兼容性、硬件支持、审查、社区信任和长期责任。Linux是靠几十年的人类工程实践,才在庞大的工作负载范围内攒下这些品质的。
参考链接:
https://zenodo.org/records/23682548
https://github.com/gmkurtzer/ginux
https://itsfoss.com/news/ginux/
https://www.it-connect.tech/ginux-centos-founder-builds-a-linux-compatible-rust-kernel-in-11-days-with-ai/