微软正着手用Rust语言重写核心Windows库,这批内存安全度更高的代码已被交付至软件开发商手中。
Windows系统安全总监David “dwizzle” Weston在上月以色列特拉维夫的BlueHat IL 2023大会上,正式宣布Rust即将入驻Windows系统内核。
“在未来几月甚至是几周内,大家就会开始用内核中的Rust代码启动Windows,这可太酷了。我们的基本目标是将一部分内部C++数据类型转换成Rust形式。”
微软对Rust的关注已经持续了好几年,并将其视为在产品交付之前发现并消除内存安全漏洞的好办法。自2006年以来,Windows团队根据CVE修复了产品中的大量安全漏洞,其中约70%都跟内存安全有关。
Rust工具链关于揪出代码中的潜在漏洞,从理论上打击恶意黑客攻击软件弱点的行为。Rust编程语言在设计上就高度强调内存安全等保护措施,能够减少代码中严重bug的数量。
除微软之外,谷歌等竞争对手也已公开表达了对Rust的支持。
顺应行业对内存安全编程的踊跃态度,微软的Rust探索计划也愈发积极。去年9月,微软Azure首席技术官Mark RUssinovich以非官方身份表示,新的软件项目不该再用C/C++,而应更多使用Rust。
Windows的Rust革新之路始于2020年的DWriteCore项目,它属于Windows DWrite引擎的Windows App SSDK实现,负责进行文本分析、布局和渲染。DWriteCore目前拥有约15.2万行Rust代码,C++代码则为约9.6万行。
除了安全改进之外,据说使用OTLS(OpenType库服务)还能将Shaping字形的处理性能提高5%至15%。目前这些功能均已向开发人员开放。
微软Windows图形设备接口(Win32 GDI)也在进行Rust移植,目前的Rust代码量已达3.6万行。最新版本的Windows 11就使用Rust版GDI启动,其已经通过了所有测试,只是目前仍被功能标志禁用。
Weston表示,“Windows内核中的SysCall其实就是用Rust实现的。”
但微软也没有对Rust的未来盲目乐观。Weston坦言“短信内可能不会用Rust全面重写Windows。虽然我们很喜欢Rust,但仍需要一套全面的策略,包括考虑如何保护更多原生代码。”
但无论如何,微软的关注和支持正在以代码贡献的形式让Rust变得更加强大,也成为整个开源社区的一股重要助力。
Flask in Python项目负责人兼Sentry安全工程师Armin Ronacher就以开源软件开发者的身份,在邮件采访中肯定了微软的支持对于Rust这门语言的重要意义。
“具体来讲,我希望微软能重用现有编译器,从而实现更好的PDB(程序数据库)支持。至少就目前来讲,Windows对开发者工具的支持还落后于基于DWARF(使用属性记录格式进行调试)类平台的支持能力。”
Pydantic公司创始人兼Python与Rust开发者Samuel Colvin也指出,“我对微软的这种前瞻性眼光非常赞赏,而且这也完全在情理之中。我相信微软是在内部工程师的压力下才选择Rust的。如果当下我们打算开发一款强调性能或者底层应用程序,那么Rust肯定是个明智的选项。”
Colvin表示,虽然优秀的Rust工程师相对没那么普遍,但寻找这类人才的难度还是要比寻找优秀C/C++工程师更低。
“虽然拥有丰富Rust开发经验的人不多,但很多工程师都抱有兴趣、愿意学习。既然编写安全代码本身就是件难事,使用Rust至少能把难度降低一个数量级。”
“对我们这些高度依赖Rust的开发者来说,微软对这门语言表达的认可和支持真的令人非常兴奋。”
好文章,需要你的鼓励
这项研究介绍了Ankh3,一种创新的蛋白质语言模型,通过多任务预训练策略显著提升了模型性能。研究者采用两种互补任务:多掩码概率的掩码语言建模和蛋白质序列补全,使模型仅从蛋白质序列就能学到更丰富的表示。实验表明,Ankh3在二级结构预测、荧光预测等下游任务中表现优异,尤其在模型未曾训练过的任务上展现出强大泛化能力,为蛋白质设计和分析开辟了新路径。
法国波尔多大学研究团队开发了一个突破性框架,用于神经退行性痴呆症的差异化诊断。该框架将3D脑部MRI转换为文本报告,并利用强化学习优化的大语言模型进行详细诊断推理。不同于传统"黑箱"方法,这一系统能生成透明、有因果关系的解释,同时保持高诊断准确率。研究显示,通过群组相对策略优化(GRPO)训练的轻量级模型能展现复杂推理行为,包括假设检验和非线性思考,提供与临床决策流程一致的排序诊断结果。
这项研究提出了CLUE框架,首次能够生成自然语言解释来揭示AI事实核查系统不确定性的来源。与现有方法不同,CLUE能识别文本片段间的冲突与一致关系,并解释它们如何影响模型的预测不确定性。实验表明,CLUE生成的解释在三种语言模型和两个事实核查数据集上都更忠实于模型不确定性,用户评价其更有帮助、信息更丰富、冗余更少且逻辑更一致。CLUE不需要微调或架构更改,适用于任何白盒语言模型,为事实核查提供了实用支持。
来自香港科技大学和MiniMax的研究团队开发了SynLogic,一个可合成35种逻辑推理任务的框架与数据集,填补了AI逻辑训练资源缺口。研究表明,在SynLogic上进行强化学习训练显著提升了模型逻辑推理能力,32B模型在BBEH测试中超越了DeepSeek-R1-Distill模型6个百分点。更值得注意的是,将SynLogic与数学和编程数据混合训练不仅提高了这些领域的学习效率,还增强了模型的泛化能力,表明逻辑推理是构建通用AI推理能力的重要基础。