微软的Windows长期霸占80%以上的市场份额,Windows视窗界面开启了全世界绝大多数人使用电脑的启蒙之旅,更为震撼的是非洲支教小伙竟然手绘office界面教孩子们学习电脑知识。
年11月20日Windows系列的第一产品Windows1.0问世,距离今天已经36年。在今天来看Windows1.0粗糙得不能再粗糙,但是在当时Windows1.0的诞生却相当地吸引人。
很多人没有想到操作电脑居然可以不用靠人键盘输入命令来执行,用户可以通过点击鼠标来完成绝大部分的操作,窗口可以任意缩放,还自带了日历、记事本、计算器等一些简单的应用程序。最主要的是Windows1.0允许用户同时执行多个程序,这对于仅可以敲入命令执行的DOS来说是不可想象的。
如今Windows视窗系统在最初的Windows1.0的基础上已经发展到了Windows11,当然服务器版本也到了WindowsServer。Windows能获得成功可不是只因为它有视窗操作系统,而是装载Windows的兼容主机人人都能买得起,用得起。这对比于同样拥有视窗操作系统,但价格昂贵的苹果操作系统有非常大的不同,所以Windows能快速地衍生各种软件生态环境,并且雄踞市场主流的宝座。
于是很多就在想Windows是怎么开发出来的,它又是使用什么程序来编写的?貌似Windows每一个版本功能变化的并不是很大,它的核心代码是不是真的没有改变过?
C语言是最早驱动电脑世界的高级语言之一
Unix可以操作系统可谓是现代操作系统的鼻祖了,年至年丹尼斯·里奇和肯·汤普逊为了移植与开发Unix操作系统在贝尔实验室设计、开发了C语言。于是后来C语言编译器普遍存在于Unix、Windows、MacOS、Linux等等各种不同的操作系统中,现在许多软件都是由C语言或其影响和派生的编程语言所开发出来的,比如Oracle、Mysql、MSSQLServer、PostgreSQL等当下最为流行的数据库都是用C编码的。
Windows内核有部分是汇编的,但绝大部分是用C语言编写的,尽管Windows源代码并未公开。不过从Windows系统内核越是往用户前台我们就会发现C/C++所编写的内容越来越少,要知道只存在于故事中,实际上画一匹看得上眼的马需要各种练习,使用各种不同的手法和技巧来润色,Windows也是一样的。
如今拥有几百万个文件的Windows已经很难再说它是用哪种程序、语言来编写,就像建一座大楼需要不同的工种,不同的材料来施工。但至少可以说Windows的内核C/C++占据了绝大部分。
几个G大的Windows纯代码核心部分仅有几MB
Windows执行体服务都建立在核心代码上,包含在文件NTOSKRNL.EXE,单核CPU和多核CPU大小有所不同。主要负责了I/O、对象管理、安全、进程管理等等。
可以说Windows内核是变化很少的一个地方,这个地方牵一发动全身。但也并不意味着它不会变,不可以变。经过了36年的发展演进,如今的Windows内核早已经不是当初的模样。