
微软Azure CTO Mark Russinovich表示,后续启动的新项目应停止使用C和C++。
他在推特上表达了这个观点,并强调与微软公司无关。“是时候停止用C/C++启动任何新项目了,一切需要无垃圾回收语言的场景都该使用Rust。出于安全性和可靠性的考虑,业界应该立即弃用这两种语言。”
Russinovich的言论值得关注,毕竟微软自家的Windows、Office和SQL Server等核心产品,主要就是用C和C++编写的。Linux也是如此,其同样在Azure云平台上得到了广泛应用。但从目前公布的消息来看,Linux的部分内核似乎很快就将迈入Rust时代。结合开源峰会上的报告和Linus本人的邮件,“除非出现极特殊情况,否则Rust一定会现身Linux内核的6.1版本。”
这已经不是微软第一次主张用Rust提升软件安全水平了。三年之前,微软安全响应中心(MSRC)就曾提到,“我们认为Rust是目前最理想的C与C++替代选项。”该响应中心团队还强调,“由MSRC分配CVE编号的安全问题中,约70%与内存安全相关。也就是说,如果能用Rust编写这些软件,那这70%的安全隐患很可能不会出现。”
所谓内存安全,是指当应用程序代码从内存中读取数据时,这部分数据能够保证有效。这个环节中出问题的原因有以下几点:编程语言会为变量定义需要占用的特定内存空间。如果为变量分配的内存太小,代码可能超出其上限,导致有随机数据被注入应用程序。同样的,如果代码试图读取已被内存释放掉的数据,那实际读取到的可能是其他数据,同样会引发难以预测的结果、甚至导致崩溃。另一个问题就是多线程应用程序中的多个线程同时写入同一内存区,这时如果没有内存锁,就会引发内存数据损坏。
大多数业务应用程序都是用JavaScript、Java、Python和C#等高级语言编写的,它们要比C或C++安全得多。但这些语言的问题是,它们的运行时或内存垃圾回收器(GC)具有无法预测的性能开销,因此并不适合用作系统编程。Rust专为系统编程而设计,而且具备基于编译器强制值所有权概念的内存安全功能。
当然,Rust也无法保证百分之百内存安全。使用unsafe关键字,Rust开发者也可以取消引用原始点、调用不安全函数、写入可变静态变量等等。在有些情况下,这些操作有其必要性,而且Rust会将这类代码隔离到特定的标记块当中,由此带来远超C或C++的安全水平。
尽管业界不乏支持Rust的声音,但在Redmonk编程语言排名等主流调查中,Rust的人气仍然远远落后于C和C++。其中C++排名第7,C排名第10,而Rust位列第19。为什么Rust人气有限?主要原因包括开发者短缺、工具不够成熟、语言学习门槛过高,以及与现有代码的互操作性不佳等。
好文章,需要你的鼓励
在2025年KubeCon/CloudNativeCon北美大会上,云原生开发社区正努力超越AI炒作,理性应对人工智能带来的风险与机遇。随着开发者和运营人员广泛使用AI工具构建AI驱动的应用功能,平台工程迎来复兴。CNCF推出Kubernetes AI认证合规程序,为AI工作负载在Kubernetes上的部署设定开放标准。会议展示了网络基础设施层优化、AI辅助开发安全性提升以及AI SRE改善可观测性工作流等创新成果。
维吉尼亚理工学院研究团队对58个大语言模型在单细胞生物学领域的应用进行了全面调查,将模型分为基础、文本桥接、空间多模态、表观遗传和智能代理五大类,涵盖细胞注释、轨迹预测、药物反应等八项核心任务。研究基于40多个公开数据集,建立了包含生物学理解、可解释性等十个维度的评估体系,为这个快速发展的交叉领域提供了首个系统性分析框架。
DeepL作为欧洲AI领域的代表企业,正将业务拓展至翻译之外,推出面向企业的AI代理DeepL Agent。CEO库蒂洛夫斯基认为,虽然在日常翻译场景面临更多竞争,但在关键业务级别的企业翻译需求中,DeepL凭借高精度、质量控制和合规性仍具优势。他对欧盟AI法案表示担忧,认为过度监管可能阻碍创新,使欧洲在全球AI竞争中落后。
西湖大学王欢教授团队联合国际研究机构,针对AI推理模型内存消耗过大的问题,开发了RLKV技术框架。该技术通过强化学习识别推理模型中的关键"推理头",实现20-50%的内存缩减同时保持推理性能。研究发现推理头与检索头功能不同,前者负责维持逻辑连贯性。实验验证了技术在多个数学推理和编程任务中的有效性,为推理模型的大规模应用提供了现实可行的解决方案。