windows编程语言是什么(windows软件用什么语言开发)

这是微软的内核工程师 Axel Rietschin在Quora的一个回答。

Windows 10 的code base 和Windows 8.x , 7 , Vista , XP , 2000 和Windows NT的code base 是相同的,当然是演化过来的,其中的每一代都进行了重大的重构,增加了大量的新功能,提升了性能和对硬件,安全的支持,并且保持了高度的向后兼容性。

(注:考虑到Windows的众多版本和海量应用,这是一个很了不起的成就, 也是一个很大的包袱。)

Windows 的大部分内核(ntoskrnl.exe)是用C语言写的,你可以在Github上看到泄露的Windows Research Kernel 代码,自己研究一下,虽然它已经相当过时,非常不完整,但依然能看出一些重要的东西。

代码库在这里:

https://github.com/markjandrews/wrk-v1.2

比如说,我们熟悉的注册表(Registry),在内核中被称为配置管理(configuration manager,简称cm),就在这个目录下:wrk-v1.2/base/ntos/config

(注:Windows Research Kernel是微软为教育目的提供的源代码。高校师生可以修改,编译,以此来学习OS的原理。在Linux大行其道的时候, 不知道有多少高校在用?)

大部分运行在内核态的代码都是用C语言写的,包括大部分的文件系统, 网络,大部分的驱动, 其中也有一些C 。

如果往上走进入到用户态,C语言就会变少,C 会逐渐增多。

大多数人都没有意识到Windows的庞大规模:这是一个真正的史诗般的巨型项目。

在Windows的代码树中,有源代码,测试代码,还有其他东西(码农翻身注:可能是图标,声音,图片?),文件数超过400万,500多G。

仅仅是把这个代码树的目录和文件名都浏览一遍,就要花费你一年的时间。这里有50多万个文件夹,其中的代码组成了操作系统工作站和服务器的所有版本,相关工具,开发工具包。

如果你想把源代码都读一遍,可能要穷尽一生。

下面是一个截图,描述了Windows源码的统计信息:

有一次,我有几周的时间没有更新我的Git, 等我回来的时候,我发现它已经落后60,000次提交了!

你肯定会说一个人不可能阅读完每天的代码提交,更不用说过去三十年积累的代码了。

如果你看到了Windows 10 “DVD” 并且想知道是什么编程语言创造了光盘上的东西,我猜98%是C和C , C是大头。

.NET BCL(Base Class Library) 和其他库&框架主要是用C#写的,他们仅仅是C语言海洋(有一点C 小岛)小水滴而已。它们来自不同的部门(The developer’s division), 代码也不是Windows代码树的一部分。

学习C/C 编程知识,想要成为一个更加优秀的程序员,或者你学习C/C 的时候有难度,可以来笔者的C 编程学习圈,里面不仅有学习视频和文件资料,还有更多志同道合的朋友,欢迎转行也学习编程的伙伴,和大家一起交流成长会比自己琢磨更快哦!

学习C/C 编程知识,想要成为一个更加优秀的程序员,或者你学习C/C 的时候有难度,可以关注 私信小编【C/C 编程】笔者的C语言C 零基础编程学习圈,里面不仅有学习视频和文件源码,还有更多志同道合的朋友,欢迎转行也学习编程的伙伴,和大家一起交流成长会比自己琢磨更快哦!

(0)

相关推荐

  • windows软件用什么语言开发(windows编程语言是什么)

    操作系统是我们电脑必须要安装的软件,有了它其它软件才能工作,那么很多好奇的小伙伴会想知道这个Win10系统是用什么编程语言来写的呢?工程量有多大?现在微软内核工程师阿列克斯日前在回答网友提问中透露了这 ...

  • swift语言开发用什么软件?swift语言开发编程环境搭建教程详情

    swift语言开发用什么软件呢?自从苹果wwdc2014大会上推出swift语言之后,程序猿们就开始转战开发苹果软件;但是swift语言开发编程环境怎么搭建呢?我们一起来了解一下,希望可以对大家有所帮 ...

  • 怎么禁用Windows系统中的某些软件

    今天给大家介绍一下怎么禁用Windows系统中的某些软件的具体操作步骤.1. 首先打开电脑,进入桌面,按键盘上的win+R组合键,调出运行窗口,在窗口中,输入gpedit.msc命令,点击确定,打开本 ...

  • 如何解决Windows无法验证发行者阻止软件问题

    电脑是现在最常用的工具之一,有些用户遇到了Windows无法验证发行者阻止软件问题,不知道如何解决,接下来小编就给大家介绍一下具体的操作步骤.具体如下:1. 首先第一步根据下图所示,找到并双击[控制面 ...

  • 如何解决Windows 11系统自动安装软件问题

    现在大部分新款笔记本电脑都是Windows 11系统,有些用户遇到了自动安装软件问题,想知道如何解决,接下来小编就给大家介绍一下具体的操作步骤.方法一:1. 首先第一步根据下图箭头所指,先右键单击底部 ...

  • 怎样使用WINDOWS自带的画图软件编辑图片

    怎样使用WINDOWS自带的画图软件编辑图片:有时我们需要简单的处理下图片,而不需要使用较复杂的或者专业的软件,可以借助WINDOWS自带的画图软件编辑图片 操作方法 01 选择需要编辑的图片,鼠标右 ...

  • 在windows 7下体验windows 8的Metro风格的方法(图文教程)

    windows 8虽然已经放出开发者预览版了,但毕竟正式版还未出来,预览版的稳定性还值得怀疑。 对于我们这种软件爱好者,一些新的东西当然想早点体验,但把自己现在的windows 7重装成windows ...

  • 在Windows 7中使用Windows日历组件

    首先,下载网友从Vista中分离出的Windows日历 下载后,将其解压到Program FilesWindows Calendar文件夹中,右键单击可执行程序文件名WinCal,选择“锁定到任务栏” ...

  • 从Windows 8升级到Windows 8.1

    Windows 8.1 和 Windows RT 8.1 基于 Windows 8 和 Windows RT 而构建,可改进个性化设置、搜索、应用、Windows 应用商店和云连接功能,以及你期待 W ...