微软拥有世界上最大的c/c++代码库之一。从windows、office到azure云,微软的所有核心产品都在该代码库上运行。但因为c++不是内存安全的语言,代码库中自然频频出现内存漏洞,大量的时间被耗费在修补漏洞上。
微软自去年开始寻找用以替代的编程语言来解决内存安全问题,寻找终有所得——微软开始尝试使用rust,并在一些情境下将其集成进代码库中。rust是一种相对较新的编程语言,具有与c和c++相同的底层性能,并具备现代编程语言应有的功能集。
微软认为rust颇具潜力,本文就将介绍微软将其用在产品中的方式。
用rust重写windows
微软虽然尚未使用rust全面重写windows,但正在致力于研究如何使rust适应其生态系统。据微软估算,在推送给计算机的安全补丁中,有70%都是为了修补内存有关的漏洞,他们认为rust可以在开发阶段捕获这些漏洞。因此,微软委托一些工程师用rust重写windows的部分组件,从而获取开发人员的一些意见。
虽然微软没有公开重写哪些组件,但一名工程师称,他正在针对性地改造部分“windows的底层系统”,这体现出了微软对rust的潜力颇具信心。微软不仅计划重写一些小的服务和windows本地应用程序,还可能重写操作系统的核心组件。
工程师们称涉及rust的工作“整体前景是乐观的”,但也明确指出rust不具备c的一些重要功能,不过这些工程师们也认为有必要为rust开发这些功能。
英特尔已经开始致力于让rust实现与c相同的功能,微软也或将加入其中。由于rust缺少c的一些功能,该团队发现rust将最适用于新近开发的windows组件。假如微软将部分代码库迁移到rust,我也不会感到吃惊。
微软已经为rust搭建了一个标准windows库,它具备c++版本的所有功能;linux也在考虑将一些内核迁移到rust。这两大操作系统之间有可能展开竞争,看谁能最先将rust代码投入生产。
将rust整合进azure服务
deislabs是azure的孵化器项目之一,它致力于为kubernetes构建工具。近来,它选取rust来开发新产品krustlet,允许开发者在kubernetes中运行多个webassembly模块。
kubernetes原本由google开发,以go语言写成。大多数工程师倾向于使用go来为kubernetes编写组件,deislabs选择rust可谓惊人之举。
最终,这一决定似乎有所成效。虽然员工的确提到了由于rust独特的所有权概念,转换为rust的过程十分困难,但该团队仅用了一个月就回到了全速工作状态,他们发现需要为空值写的测试以及调试的问题都越来越少。
工程师们也对rust的编译器印象深刻。他们称该编译器能够找到另一个项目中的安全漏洞,而go的编译器则未能做到这一点。他们总结说,应该有更多的团队考虑在将来的工作中使用rust,该语言可能比go更适合kubernetes的开发。
一种新的编程语言
不久之前,在rust的启发下,微软开始着手调研创造自己的编程语言。该项目的负责人之一是c#的主要维护人员,因此这一编程语言似乎是另一种版本的rust,但在语法上更类似c类编程语言。
这一语言被称为“project verona”,致力于在系统编程中解决内存漏洞。一些人推测projectverona可能将在许多微软主要产品中投入使用,例如windows、xbox和azure。
然而,微软最终仍没有实际应用projectverona。微软的确声称该语言已经“完全内存安全”,但依旧选择使用rust。rust已经拥有了完善的社区,并且得到了mozilla和英特尔等企业的支持。有了这些企业的合作,rust将会更迅速地成长为更强大的语言。
凭借大型企业的支持和社区的不断发展,rust的前途不可限量。在接下来的几个月中,即使微软计划以不同方式将rust纳入企业中也不足为奇。rust针对微控制器和物联网设备也进行了良好的优化,这些领域的企业有望将rust投入使用。可以说,rust的未来一片光明。
责编ajx
打造机器人配送站技术终于落地 但仍要解决好这几个问题
典型振荡器电路图分享
电源管理ic作用大吗
电机发生振动!原因居然是它!
人脸测温识别机的优势有哪些
微软开始尝试使用Rust代替C/C++,介绍这些运用Rust的产品
如何才能享受LED显示屏带来的高清体验?
激光共聚焦显微镜:材料表面粗糙度的救星
无奈;:贾跃亭卖完,孙宏斌卖,马云、马化腾、刘强东能否“挽救”乐视
美利用机器人检查桥梁故障:可降低检查成本,精准度可达96%!
电话自动营销你见过吗?对的,它是智能电销机器人
高光谱成像系统:高光谱数据光谱分辨率对矿物识别的影响分析
柔性振动盘的选择标准是怎样的?
原生IP是什么,广播IP又是什么
基于FFT的分析仪解决RF功率和寄生噪声辐射问题
小米6国内首发骁龙835,一加手机推出黑色纪念版
工业触摸屏的应用领域
深开鸿助力打造“北方开源鸿蒙之城” 共建智慧城市新生态
中兵光电多元化指向新能源:通信科技、矿业、燃气
简单实用的TDA2822M集成功率放大器