这几天,微软杰出工程师 Galen Hunt 在 LinkedIn 发布了一条招聘 IC5 首席软件工程师的帖子,立刻引起了巨大争议。
我的目标是在 2030 年前彻底淘汰 Microsoft 所有的 C 和 C++ 代码。
他表示,正在招聘的这位首席软件工程师职位的目的就是:
“帮助微软发展和增强基础设施,用 Rust 重写微软最大的 C 和 C++ 代码库。”
更让业界瞩目的是,帖子中提到了要结合 AI 和算法,愿景是实现 “ 1 个工程师,1 个月,100 万行代码” 的重写效率。

图1:Galen Hunt在LinkedIn发布的招聘贴,提及淘汰C/C++及AI重写目标
帖子刚一发出,便在外网引发了热烈讨论,许多网友对计划的可行性表示怀疑,并担心这会影响未来 Windows 系统的稳定性。

图2:社交媒体上网友对微软计划的幽默评论


突如其来的热度也让 Galen Hunt 紧急辟谣,更新了原帖,澄清 Windows 并没有在由 AI 用 Rust 重写。

图3:Galen Hunt随后澄清,Windows并非正由AI重写为Rust
风波虽暂告段落,但关于微软为何要推进这一庞大计划,以及背后的技术趋势,值得深入探讨。
一、Why Rust,why now
Rust 是由 Graydon Hoare 出于兴趣爱好设计,2006 年在 Mozilla 开始成形,并于 2010 年首次公开亮相。
2015 年,随着 Rust 1.0 的发布,它开始 作为 C/C++ 的替代方案受到广泛关注。

图4:Rust 1.0 官方发布公告
与 C 和 C++ 不同,Rust 是一种 内存安全 语言,它采用所有权系统在编译期自动管理内存,以避免越界读写和使用后释放等错误,这些正是许多安全漏洞的根源。
从 C/C++ 转向 Rust 并非突然之举。
早在 2021 年,Rust 就进入了 Linux 内核,用于开发新的驱动和内核模块。
2022 年,美国国家安全局 NSA 就在督促各组织从 C/C++ 转向其他内存安全的编程语言。

图5:NSA在2022年发布指南,建议转向内存安全语言
苹果、亚马逊、谷歌、Cloudflare 和 Meta 等许多公司都在不同程度上于生产环境中采用了 Rust。
微软转向 Rust 的探索
微软至少从 2019 年起就在内部讨论放弃 C/C++,转向使用 Rust。
2019 年,微软安全响应中心 MSRC 发现其 70% 的常见漏洞与暴露( CVE )安全问题源于 在 C 和 C++ 代码中发生的内存损坏错误。

图6:关于C/C++代码中内存损坏漏洞占比的统计
当时就有工程师提出,或许是时候转向更现代、更安全的系统编程语言,例如 Rust。但他们也清楚,庞大的现有代码库、开发人员技能以及围绕 C/C++ 的生态系统意味着这将是一个缓慢而长期的过程。
这些年,微软在此领域持续探索:
-
2022 年,微软 Azure 云的首席技术官 Mark Russinovich 发推文称,对于需要非垃圾回收语言的场景,应首选 Rust,并暗示行业应考虑弃用 C/C++。

图7:微软Azure CTO Mark Russinovich关于Rust安全性的推文
-
2023 年,微软宣布将使用 Rust 重写部分 Windows 内核,并分享了内部评估和采用路线图。

图8:微软内部关于在Windows中引入Rust的评估与路线图
-
2024 年初,微软与研究机构合作开发了一种工具,可以自动将部分 C 代码转换为安全的 Rust 代码。

图9:关于微软开发自动C转Rust工具的新闻报道
综合来看,以下几个趋势可能促使微软设下 2030 年的激进目标:
- Rust 生态日益成熟,社区接受度变高。
- 行业从 C/C++ 转向 Rust 积累了更多经验。
- 对内存安全的刚性需求成为业界共识。
- AI 辅助编程能力的快速发展。
那么,这个看似“时机正好”的计划,在专业人士眼中究竟如何呢?
一位资深软件工程师在评论中指出,直接将 C/C++ 代码机械地“翻译”成 Rust,可能会生成效率低下或本质上仍“不安全”的代码,失去了 Rust 内存安全的优势。关键在于,Rust 要求从数据所有权和架构层面重新思考设计。

图10:专业人士对C/C++代码移植到Rust所遇挑战的分析
对此,社交媒体上的批评声音不少,有人将此计划描述为“两个妄想团体的联手”——即盲目相信 AI 万能的管理层与认为 Rust 完美无瑕的“信徒”。

图11:社交媒体上对微软“AI重写Rust”计划的尖锐批评
二、AI+大规模系统工程?
帖子中提到,这个项目的使命是:
构建能力,使微软和我们的客户能够大规模消除技术债务。
“大规模消除技术债务”的直白理解,就是系统性重构遗留的复杂代码库。
关于 AI 的代码理解与生成能力,业界已有诸多讨论。但“一个月重写百万行代码”的目标,尤其当对象是经过数十年实践检验的操作系统和基础设施级代码时,其挑战是巨大的。
关键在于,微软的计划并非局部替换,而是要重写 所有 C/C++ 代码库。这意味着 AI 工具不仅要能处理海量代码,更要足够稳定和强大,以应对操作系统级别的复杂依赖和逻辑。
目前我们所体验到的 AI 编程助手,距离能够规模化、系统化且高质量地重写核心系统代码的水平,似乎仍有相当差距。或许,相比编程语言的转换,让 AI 主导如此庞大的系统工程,才是引发广泛担忧的更深层原因。
尽管 Galen Hunt 强调这是一个多年的长期过程,但 2030 年并不遥远,而微软的代码遗产确实极其庞大。
三、最后
AI 能否在不引入新问题的前提下,规模化地重写核心系统代码?微软能否在 2030 年前,真正实现将所有 C/C++ 代码迁移到 Rust 的目标?
这两个问题不仅关乎微软,也折射出整个软件行业在面对技术债务和寻求安全、效率新平衡点时的探索。无论结果如何,这场由一则招聘贴引发的讨论,已经清晰地揭示了内存安全与 AI 辅助工程的时代浪潮。
这场技术路线的讨论与争议,也正是 云栈社区 这类技术论坛所关注的焦点。技术的演进从未停歇,而每一次重大的方向选择,都值得我们深入观察与思考。