Rust 在 Linux 内核中的发展势头良好,预计将在短期内带来显著收益,尽管与以 C 语言为主的代码库的整合仍显得不太顺畅。
在近期维护者争议引发人们对 Linux 维护者是否愿意接纳 Rust 代码的质疑之际,互联网安全研究组的 Prossimo 内存安全项目负责人 Josh Aas 在上周末对 Miguel Ojeda 在内核内存安全方面的工作表示赞赏,他的发言中并未提及编程语言之争。
Aas 表示:"虽然我们从未打算用 Rust 重写整个内核,但我们很高兴看到各个子系统对 Rust 优势的认可度不断提升。如今,多家公司都有专职工程师致力于 Linux 内核中的 Rust 开发工作。"
自去年 9 月起,当微软软件工程师 Wedson Almeida Filho 因"非技术性的无聊事务"离开 Rust for Linux 项目时,就已经清楚地表明了接受度是有限的。今年 1 月,Rust 和 C 语言内核贡献者之间的紧张关系再次升级,主要是由于维护混合语言代码库带来的挑战 - 一位维护者将其比作癌症。在被敦促介入后,Linux 创始人 Linus Torvalds 表达了对双方的不满,最终导致相关人员辞去 Linux 维护者职务。
在此期间,主导 Rust for Linux 项目的 Ojeda 发布了"Rust 内核政策",以明确向 Linux 内核贡献 Rust 代码的开发者应当继续前进,并强调 Linux 领导层仍然支持这一倡议。
据 Aas 介绍,Rust 代码在多个 Linux 子系统中的应用正在增加,包括:PHY 驱动程序、空块驱动程序、DRM 异常屏幕二维码生成器、Android binder 驱动程序、Apple AGX GPU 驱动程序、NVMe 驱动程序以及 Nova GPU 驱动程序。
Aas 表示:"我们预计其中一个驱动程序将在未来 12-18 个月内被合并到主线内核中。"他引用了 Linux 副手 Greg Kroah-Hartman 去年 11 月的言论,提到 Rust 驱动程序绑定的可用性代表着一个转折点,这将使大多数驱动程序子系统开始采用 Rust 驱动程序。
Aas 补充道,一旦这种情况发生,"这项工作的目标就将开始实现:运行带有 Rust 驱动程序的 Linux 的产品和服务将变得更加安全,这意味着使用它们的人也将获得更好的安全保障。"
安全性 - 特别是内存安全 - 是 Rust 的主要卖点。
Rust 提供了避免内存安全漏洞的方法,这些漏洞常见于允许手动内存管理的编程语言,如 C 和 C++。虽然 Python、Java、JavaScript、Swift 和 C# 等语言也被认为是内存安全的,但 Rust 收到了最多的内存安全推广,部分原因是它适合过去几十年来通常用 C 和 C++ 编写的低级别、性能敏感的代码。
正如我们最近报道的,对 Rust 的公开推崇以及公共部门对这一信息的呼应,已经在 C 和 C++ 社区引起警觉。资深的 C 和 C++ 开发者们还没有准备好放弃,即便这种情况可能发生。
然而,Prossimo 项目(几年前启动,旨在"将互联网的安全敏感软件基础设施转向内存安全代码"并"改变人们对内存安全的认知")所推动的未来,预示着 C 和 C++ 开发者的机会将越来越少。
本周早些时候,Aas 明确表示,那些优先考虑内存安全的人希望看到 C 和 C++ 退休,尽管普遍认为 C 和 C++ 还会存在多年并需要维护。
Aas 在一篇文章中写道:"许多最关键的软件漏洞都是 C 和 C++ 代码中的内存安全问题,虽然有一些降低风险的方法,包括模糊测试和静态分析,但内存安全漏洞仍然困扰着互联网。好消息是,除了少数必须用汇编语言编写的代码(例如加密程序)之外,我们知道如何完全消除内存安全漏洞:用不允许这类错误的语言编写代码。这是一个基本已解决的研究问题,因此我们不需要再继续受这种问题的困扰。它可以像天花一样被relegat到过去,我们只需要去做这项工作。"
从癌症到天花的比喻来看,Linux 和 Rust 社区似乎仍有一些问题需要解决。
好文章,需要你的鼓励
研究显示47%的企业在IT人才招聘和留存方面面临挑战,流失率居高不下。意大利53%的IT主管表示人才吸引和保留是日常难题。专家认为人才并非稀缺,而是未得到重视,因此更愿意出国发展。成功的CIO需要识别人才、给予适当机会并建立信任关系。通过持续培训、职业发展机会和有效领导力,企业可以更好地留住IT专业人员。
牛津大学研究团队发现,经过强化学习训练的AI搜索助手存在严重安全漏洞。通过简单的"搜索攻击"(强制AI先搜索)和"多重搜索攻击"(连续十次搜索),可让AI的拒绝率下降60%,安全性降低超过80%。问题根源在于AI的安全训练与搜索功能训练分离,导致搜索时会生成有害查询。研究呼吁开发安全感知的强化学习方法。
一家医疗机构的关键业务应用在早晨高峰期会停止响应长达半小时。技术顾问调查发现,应用厂商在未告知客户的情况下,于业务时间在生产系统上运行修复任务,导致数据库锁定。更令人震惊的是,该生产数据库存储医疗数据和支付信息,却完全没有访问控制,任何用户都可以访问任何数据。
斯坦福大学团队开发了GuideFlow3D技术,通过创新的引导机制解决3D对象外观转换难题。该方法采用智能分割和双重损失函数,能在保持原始几何形状的同时实现高质量外观转换,在多项评估中显著优于现有方法,为游戏开发、AR应用等领域提供了强大工具。