您现在的位置是:亿华云 > 人工智能
为什么使用C ++而不是C#编写Windows?
亿华云2025-10-04 01:11:12【人工智能】6人已围观
简介也许很多人不理解为什么Microsoft使用C ++而不是自己的C#编写Windows?其实原因来说也算很简单吧,首先Windows是在定义C#语言之前很久才开发的。即使当时可用,C#也不是用于实现操
也许很多人不理解为什么Microsoft使用C ++而不是使用自己的C#编写Windows?其实原因来说也算很简单吧,首先Windows是不C#编在定义C#语言之前很久才开发的。即使当时可用,使用C#也不是不C#编用于实现操作系统的适当语言。

Windows桌面和服务器操作系统的使用现代版本的代码库始于1988年的NT项目,当时新的不C#编32位抢占式多任务操作系统的代码从零开始。选择的使用编程语言主要是C,其中一些C ++用于GUI组件,不C#编以及一些汇编语言。使用基于此代码的不C#编操作系统于1993年首次发布,并带有Windows NT Workstation和Windows NT Server的使用第一个版本。NT和2000的不C#编所有版本都基于此代码,Window Server的使用所有版本(1993年至今)以及从Windows XP开始的所有桌面Windows版本(2001年至今)都基于此代码。

Windows随附的不C#编某些更高版本的用户模式应用程序已用C#实现,网站模板但大多数系统仍使用C和C ++,使用并带有一些汇编语言。
在Windows NT项目启动十二年后的2000年之前,还没有完全定义C#语言。(严格来说,NT项目最初是NT OS / 2,但是当16位Windows 3进入市场时,该项目转移到了以Windows为中心的焦点。)
C#通常不会编译为本机代码。它被翻译为中间CIL语言,然后在执行程序时进行解释和或及时编译。这种语言以及其他类似语言并不真正适合于实现操作系统,因为这些操作系统需要直接在硬件上运行,管理页表,管理中断等。C和C ++通常可编译为高度优化的本机不需要运行时解释器或即时编译器的代码,更适合于实现操作系统。C#从未被设计为系统编程语言。在开发用户模式应用程序和服务时,它的重点更多地放在安全性和生产率上。

顺便说一句。NET Framework支持C#和其他语言,一部分以C#实现,一部分以C和C ++实现。它调用Windows操作系统提供的API。亿华云
即使今天有一个C#编译器生成的高度优化的本机代码,但回过头去重写一个大型项目却只是为了使其成为一种更新的编程语言,几乎没有任何意义。由于有成千上万的代码行需要重写和完全重新测试,因此成本和风险都很高,收益几乎为零。做这样的事情还没有商业案例。只要现有语言得到完全支持并提供了出色的工具,实际上就没有理由用“较新的”语言重写代码。

最后,Microsoft从1975年的第一天起就从事编程语言业务。多年来,它的主要业务是为各种基于微处理器的系统开发编程语言解释器,编译器和汇编器。自1980年代以来,他们拥有自己的C和C ++编译器以及其他语言(例如BASIC,FORTRAN等)。他们的C和C ++编译器非常稳定和成熟,并且会不断发展,服务器托管从而生成高度优化的机器代码。

也许很多人会怀疑我是机翻,然后呢,我想给大家说下,因为也会去看外国的一些文章,而这篇里面有些理解是一位曾在Microsoft的Windows NT组工作的一位人员。
很赞哦!(35645)
相关文章
- 打开https://www.aizhan.com/输入自己想要查询的域名然后按回车键,如果做过网站都会有数据显示出来
- 不要再问了,数据库不建议上Docker
- 划重点!你还在困惑MySQL中的锁吗?
- MySQL优化:定位慢查询的两种方法以及使用explain分析SQL
- 第六:这个圈子里的域名确实是赚钱的一些大玩家,至于小米农,有多少赚钱?几乎没有,也就是说,轿子里只有一个人,而且大多数人都抬着轿子。
- SpringBoot整合Redis做缓存,实战分享
- 你需要知道的有关Selenium异常处理的都在这儿
- 【方向盘】认为:开发者已无理由再用Java EE
- 网站页面结构改版,仅是页面样式发生变化,不会对排名、收录有影响;只有涉及到页面URL改变,才会对网站排名、收录有影响。
- DBA+开源工具:面向开发的MongoDB图形可视化监控
热门文章
站长推荐
用户邮箱的静态密码可能已被钓鱼和同一密码泄露。在没有收到安全警报的情况下,用户在适当的时间内不能更改密码。在此期间,攻击者可以随意输入帐户。启用辅助身份验证后,如果攻击者无法获取移动电话动态密码,他将无法进行身份验证。这样,除非用户的电子邮件密码和手机同时被盗,否则攻击者很难破解用户的邮箱。
我讨厌关于PostgreSQL的10件事
9.6K Star!可扩展的富文本编辑框架!
MySQL 8 新特性之降序索引底层实现
四、一定要仔细阅读细节
一文学会快速定位和解决MySQL负载高、执行慢的问题!( 附大量实践案例 )
Python 3.11 Beta 性能基准测试:比 3.10.4 快 41%,比 3.8 快 45%
你知道有哪些知名的数字域名网站吗?