微软用Rust重写Windows11内核,为啥不用.Net呢?

文章指出,微软使用Rust进行Windows内核的部分工作是因为Rust作为安全的Native编程语言,能有效解决C/C++中的指针问题和内存安全问题,而Windows内核主要由C/C++编写,存在相关安全隐患。另一方面,.Net作为一个托管平台,其C#语言不适合系统级软件开发,尤其是内核层面。因此,微软选用Rust是出于对系统级安全性和效率的考虑。
摘要由CSDN通过智能技术生成

如题:有人问到了这个问题

其实看待这种问题,应该从本身来看。微软是个技术型和商业型混合驱动的公司,它以软件起家Windows和Office套件赚的盆满钵满,当然现在远不止两个了。但它的基本盘还在。

Rust作为一个安全的Native编程语言,它的存在是为了搞定非托管语言比如C/C++的指针漂移,内存泄漏,边界超出等等非常规且隐藏极深的不安全操作而诞生的。Windows内核的本身就是C/C++,以及部分汇编代码组合而成的。多年以来windows漏洞的BUG困扰着微软,70%以上的BUG都是指针指向不正确区域而造成的。而Rust非常适合避免这些问题。微软用Rust取代一些内核的工作,也是在情理之中了。

再说说.Net本身,.Net是一个托管平台,它的运行需要挂个虚拟机。这种本身类型的C#语言是不太适合做系统级的软件的。可能有人又谈到了AOT Native代码,AOT作为一个起步较久且比较成熟的技术,应该在目前为止也没有达到应用内核层级的档次。

所以个人认为,微软不用.Net重写Windows11内核,而用了Rust。最大的原因应该是Rust这门语言适合系统级的软件研发,而C#明显不适合这种非常底层的操作。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值