如果把操作系统的发展史比作《三国演义》,那么本文更像《三国演义》,而不是《三国志》。

本系列尝试用故事化的方式,讲述 Unix、Linux、BSD、GNU、Windows、macOS、Android 等操作系统背后的发展历程。

文中的人物、事件和技术演进都尽量参考公开资料,但为了让故事更容易理解,会适当简化一些历史细节,也会加入作者自己的理解。

它不是一篇学术论文,而是一段程序员视角的技术故事。

如果读完之后,你产生兴趣,愿意继续查阅官方资料,那这篇文章的目的就达到了。


引子:Unix 家族之外,还有一个巨人

前面几篇,我们一路从 Unix 讲了下来。

Unix 诞生于贝尔实验室。

BSD 从 Unix 世界里长出了一条重要分支。

GNU 想重新创造一个自由的 Unix 世界。

Linux 补上了 GNU 最缺少的 Kernel。

后来,Apple 又通过 NeXT、BSD、Mach,最终走出了 macOS 这条路。

如果把这些操作系统画成一棵家族树,你会发现:

它们之间虽然恩恩怨怨很多,

但多少都能和 Unix 扯上关系。

可是,在这棵大树旁边,还有一个庞然大物。

它几乎统治了个人电脑几十年。

无数人的第一次电脑体验,是它。

无数公司的办公软件运行在它上面。

无数 PC 游戏首先考虑它。

甚至今天我们买一台普通品牌电脑,大概率仍然会预装它。

它就是:

Windows。

但 Windows 有一点非常特殊:

它不是 Unix。

它不是从 Unix 修改出来的。

也不是 Unix 的一个分支。

今天 Windows 11 的核心血统,也不是 BSD、Linux 或其他 Unix-like 系统。

它走的是另一条完全独立的道路:

Windows NT。

于是,现代操作系统世界出现了一个很有意思的格局。

一边,是 Unix 留下来的庞大家族。

另一边,则站着微软几十年打造出来的 Windows 帝国。

那么:

这个没有 Unix 血统的操作系统,究竟是怎么一步一步成长为 PC 世界巨人的?

故事还得从 Windows 出现之前讲起。

甚至:

Windows 的故事,最开始根本没有 Windows。


第一章:Windows 的故事,最开始其实没有 Windows

时间来到:

1981 年。

IBM 发布了一台后来影响整个计算机产业的机器:

IBM PC。

今天看,当年的 IBM PC 配置弱得可怜。

但它真正重要的地方,并不是性能。

而是:

它逐渐定义了一种 PC 标准。

IBM 需要给这台电脑找一个操作系统。

于是找到了微软。

但问题来了。

当时微软最出名的产品主要还是 BASIC 之类的软件工具。

它并没有一套现成的 PC 操作系统。

怎么办?

很有商业公司的风格:

没有,那就先找一个。

Seattle Computer Products 当时有一套面向 Intel 8086 的操作系统。

最初叫:

QDOS。

全称:

Quick and Dirty Operating System。

这个名字非常程序员。

翻译得直白一点,大概就是:

“赶紧先弄个能用的系统。”

后来它改名为:

86-DOS。

微软取得了它的授权,并最终买下相关权利,再继续修改。

IBM PC 上的版本叫:

PC DOS。

微软自己销售的版本,则叫:

MS-DOS。

于是,一个后来影响几十年的 PC 操作系统生态,就这样开始了。

有意思的是:

Windows 帝国的起点,并不是 Windows。

而是一个黑乎乎的命令行:

C:\>


第二章:DOS 的世界,没有窗口

如果你今天第一次启动 Ubuntu。

可能会看到 GNOME 桌面。

启动 macOS。

会看到 Finder 和 Dock。

启动 Windows 11。

会看到开始菜单、任务栏和桌面。

但在 DOS 年代:

开机以后面对你的,基本就是:

C:\>

想看看磁盘里有什么:

dir

进入目录:

cd

复制文件:

copy

删除文件:

del

没有开始菜单。

没有任务栏。

没有桌面图标。

甚至:

“窗口”这个后来成为 Windows 名字的东西,当时都不是普通 PC 用户的日常。

当然。

对于当时的计算机用户来说,这并不奇怪。

因为那个年代的电脑,本来就不是今天这种“人人都能用”的家用电器。

可是随着 PC 越来越便宜,微软很快意识到:

如果电脑真的要进入普通人的办公室和家庭,只让用户背命令是不行的。

与此同时。

另一个东西开始进入人们的视野:

GUI——图形用户界面。

窗口。

图标。

菜单。

鼠标。

用户不再需要记住:

copy a.txt b.txt

而是可以直接:

选中文件。

拖过去。

这对于普通人来说,是完全不同的体验。

于是微软开始做一件事:

给 DOS 加上一个图形世界。


第三章:Windows 1.0——最开始,它只是 DOS 上面的一扇“窗”

1985 年。

微软发布:

Windows 1.0。

今天如果你看 Windows 1.0 的截图,可能会觉得非常简陋。

窗口。

菜单。

几个简单程序。

和今天的 Windows 11 完全不像一个时代的产品。

但它有一个非常重要的地方:

微软开始尝试把 PC 从命令行时代带进图形时代。

不过这时候的 Windows,还不是今天意义上的完整独立操作系统。

用户首先启动的仍然是 DOS。

然后再运行 Windows。

可以简单理解为:

硬件
↓
MS-DOS
↓
Windows
↓
Windows 应用程序

所以:

早期 Windows 和 DOS 是绑在一起的。

Windows 1.0 没有立刻改变世界。

Windows 2.x 也没有。

真正让 Windows 开始起飞的,是几年后的:

Windows 3.0。

以及:

Windows 3.1。


第四章:Windows 3.x——图形界面终于开始流行

1990 年。

Windows 3.0 发布。

1992 年。

Windows 3.1 发布。

这个时代,PC 硬件已经和 80 年代初完全不同。

Intel 386、486 开始普及。

内存越来越大。

硬盘越来越大。

彩色显示器也越来越常见。

终于:

图形界面不再只是一个昂贵又迟钝的附加品。

很多老 PC 用户关于 Windows 的第一批记忆,也来自这个年代。

Program Manager。

File Manager。

Control Panel。

扫雷。

纸牌。

还有一个又一个 16 位 Windows 软件。

但是:

Windows 3.x 仍然没有摆脱 DOS。

开机时,DOS 还在那里。

很多底层工作依然和 DOS 有着千丝万缕的关系。

这意味着:

微软当时的 Windows,本质上还背着 80 年代留下来的行李。

可 PC 世界跑得太快了。

32 位 CPU 已经来了。

内存越来越大。

网络越来越重要。

企业开始把越来越重要的数据放到电脑里。

微软必须面对一个问题:

DOS 这套从早期 PC 时代发展出来的架构,真的还能一直用下去吗?

微软自己的答案其实很早就已经是:

不能。

所以,就在普通用户还在使用 Windows 3.x 的时候。

微软内部已经在做另外一套 Windows。

一套几乎从头开始的 Windows。

它就是:

Windows NT。


第五章:另起炉灶——Windows NT 出现了

说到 Windows NT,就必须提一个人:

Dave Cutler。

在加入微软之前。

Dave Cutler 长期工作于 DEC。

他参与过 VMS 等操作系统的开发。

1988 年,他加入微软。

微软希望做一套真正面向未来的操作系统。

不是:

再给 DOS 打几个补丁。

而是:

重新开始。

这套新系统要支持:

32 位。

抢占式多任务。

虚拟内存。

内存保护。

多用户安全机制。

网络。

多处理器。

甚至还考虑不同 CPU 架构之间的移植。

这些东西今天看起来很普通。

但和 DOS 时代的 PC 相比:

已经完全是另外一个世界。

1993 年。

微软发布:

Windows NT 3.1。

注意这个名字。

它也叫 Windows。

界面也故意做得和 Windows 3.1 很像。

但它的底子已经完全不同。

可以非常粗略地画成:

DOS 路线

MS-DOS
↓
Windows 1.x
↓
Windows 2.x
↓
Windows 3.x

NT 路线

Windows NT 3.1
↓
Windows NT 3.5
↓
Windows NT 4.0

从这里开始:

微软实际上拥有了两套完全不同血统的 Windows。

一个面向广大 PC 用户。

一个面向工作站和企业。

这两条路,还会并行很多年。


第六章:Windows 95——一个按钮影响了三十年

就在 NT 开始成长的时候。

普通 PC 市场也迎来了一次巨大的变化。

1995 年。

微软发布:

Windows 95。

如果今天让一个 Windows 11 用户去使用 Windows 95。

当然会觉得它非常古老。

但有些东西:

你一眼就会认识。

比如:

开始按钮。

左下角一个按钮。

点开以后出现:

开始菜单。

旁边是任务栏。

正在运行的程序显示在任务栏里。

桌面上可以摆图标。

文件由资源管理器管理。

今天看:

这不是废话吗?

可问题是:

这种 Windows 桌面的基本操作逻辑,就是从那个时代逐渐定型的。

甚至三十年后的 Windows 11。

虽然外观完全不同,

但:

开始菜单。

任务栏。

桌面。

资源管理器。

这一整套思路仍然存在。

Windows 95 还有另一个重要变化:

微软开始大规模把个人 PC 推向 32 位时代。

不过要注意:

Windows 95 并没有真正彻底甩掉 DOS。

它已经远比“DOS 上跑一个 Windows 外壳”复杂。

但 DOS 仍然承担着启动、兼容老软件等重要角色。

这其实非常符合 Windows 后来的性格:

新东西要加。

但旧东西最好还能跑。

而这种性格,最终会成为 Windows 最强大的武器之一。

也会成为它最沉重的包袱。


第七章:一边 Windows 98,一边 Windows NT

于是到了 90 年代后期。

世界上出现了一个很奇怪的情况:

看起来都叫 Windows。

但里面其实有两大家族。

一边是:

Windows 95
Windows 98
Windows ME

它们继承的是 DOS / Windows 9x 这条路线。

另一边是:

Windows NT
Windows 2000

它们继承的是 NT 这条路线。

为什么微软不直接把所有人都迁到 NT?

因为现实没有这么简单。

NT 更先进。

安全模型更完整。

稳定性也更好。

可是:

它对机器要求更高。

早期的游戏支持不一定好。

很多老 DOS 软件不一定兼容。

各种奇奇怪怪的家用硬件,也不一定有 NT 驱动。

对于企业来说:

稳定最重要。

对于一个 1990 年代的家庭用户来说:

我的游戏能不能跑?

可能更加重要。

所以微软只能同时养着两条路。

家庭用户继续用 Windows 95、98、ME。

企业和工作站则越来越多地使用 NT、Windows 2000。

但谁都知道:

两套 Windows 不可能永远同时维护。

终有一天。

它们必须汇合。


第八章:Windows XP——两条河终于汇到了一起

2001 年。

微软发布了一款后来成为经典的操作系统:

Windows XP。

很多人记住 XP。

是因为那个绿色山坡和蓝天白云。

有人记住 Luna 蓝色主题。

有人记得:

我的电脑。

网上邻居。

Internet Explorer。

QQ。

迅雷。

CS。

红警。

魔兽争霸。

但从操作系统历史来看:

XP 真正重要的意义之一是:

微软终于把普通消费者的 Windows 也迁到了 NT 技术路线。

Windows ME 以后。

DOS / Windows 9x 这条个人 Windows 主线基本结束。

从 Windows XP 开始:

家庭用户。

办公用户。

企业用户。

终于逐渐站到了同一棵 Windows NT 大树下面。

如果把今天 Windows 的血统极度简化一下:

Windows NT 3.1
↓
Windows NT 4.0
↓
Windows 2000
↓
Windows XP
↓
Windows Vista
↓
Windows 7
↓
Windows 8 / 8.1
↓
Windows 10
↓
Windows 11

所以这里有一个非常容易产生误解的地方:

很多人会觉得:

Windows 95
↓
Windows 98
↓
Windows XP
↓
Windows 7
↓
Windows 11

好像是同一个系统一路升级过来的。

从产品名字和用户体验看,确实像这样。

但如果看技术血统:

今天 Windows 11 真正的祖先,是 Windows NT。

而不是 Windows 95。


第九章:所以,Windows 为什么不是 Unix?

讲到这里,我们终于可以回答文章标题里的问题。

为什么说:

Windows 没有 Unix 血统?

因为 Windows NT 并不是从 Unix 源代码发展出来的。

它不是 BSD 的分支。

不是 System V 的分支。

也不是后来 Linux 那种“重新实现 Unix-like 系统”的路线。

它有:

自己的内核架构。

自己的驱动模型。

自己的 API。

自己的进程和对象管理体系。

自己的安全模型。

自己的文件和设备抽象方式。

普通用户看到的差异就更明显了。

Unix/Linux 世界习惯:

/home/user
/etc
/dev
/usr

Windows 世界则是:

C:\
C:\Windows
C:\Users
C:\Program Files

Unix 世界很多配置喜欢文本文件。

Windows 世界则出现了一个极有特色的东西:

Registry——注册表。

Unix/Linux 世界的传统程序接口,围绕 POSIX 等标准发展。

Windows 最核心的应用程序接口则是:

Win32 API。

所以:

Windows 和 Unix,从根上就是两条不同的操作系统发展路线。

当然。

“没有 Unix 血统”并不等于:

Windows 从来没有借鉴 Unix。

现代操作系统发展几十年以后,很多概念本来就会互相学习。

早期 Windows NT 也提供过 POSIX 相关兼容能力。

后来的 Windows 又加入 OpenSSH、WSL 等越来越多来自 Unix/Linux 世界的工具。

但是:

兼容 Unix,不等于自己就是 Unix。

就像今天 Linux 可以运行很多 Windows 程序。

也不能因此说:

Linux 是 Windows。


第十章:Windows 最可怕的能力,可能不是技术,而是兼容

如果你看 Windows 的内部。

很容易产生一种感觉:

怎么这么复杂?

为什么还有这么老的 API?

为什么有注册表?

为什么还有 Win32?

为什么控制面板和“设置”能同时存在这么多年?

为什么一些二十年前的软件,到今天还能运行?

为什么 Windows 经常给人一种:

新房子盖在旧房子上,旧房子下面还有更旧房子。

的感觉?

原因其实很简单:

Windows 太成功了。

一个没有用户的操作系统,可以大胆重构。

API 不喜欢?

删。

架构不喜欢?

重写。

应用重新编译。

大家一起迁移。

可是 Windows 不行。

因为 Windows 后面站着的,不只是普通用户。

还有:

银行。

工厂。

医院。

学校。

政府。

企业。

游戏。

工业控制。

各种定制软件。

各种几十年前买来的硬件。

假设一家工厂在 2003 年写了一套控制软件。

后面连着:

数据库。

串口。

PLC。

打印机。

某个特殊 PCI 卡。

甚至是一台已经停产十五年的设备。

今天微软说:

我们重新设计了一套特别漂亮的 API。

但是你们以前的软件全部不能用了。

工厂老板大概不会觉得:

好先进。

他只会问:

谁出钱改?

所以 Windows 长期坚持一件事情:

能兼容,就尽量兼容。

这种向后兼容能力,甚至已经成为 Windows 生态本身的一部分。

所以 Windows 那些让程序员头疼的历史包袱:

换一个角度看,

恰恰也是:

几十年商业成功留下来的地质层。


第十一章:Vista 为什么被骂惨了?

Windows XP 太成功。

结果反而给微软出了一个难题:

大家为什么要升级?

XP 发布几年以后,微软准备进行一次比较彻底的现代化改造。

于是:

2007 年。

Windows Vista 来了。

Vista 改了很多东西。

安全机制加强。

驱动模型变化。

图形系统升级。

UAC 出现。

界面换成 Aero。

系统内部大量组件重新设计。

从技术方向上来说:

很多变化并不是没有道理。

问题是:

变化来得太集中。

很多老电脑跑 Vista:

慢。

一些老硬件:

驱动出问题。

部分老软件:

兼容性出问题。

然后还有那个后来被疯狂吐槽的:

UAC。

装个软件:

你确定吗?

改个设置:

你确定吗?

运行程序:

你确定吗?

于是很多用户觉得:

XP 明明用得好好的,我为什么要折腾?

Vista 的口碑迅速恶化。

但是历史有一个很有意思的地方。

几年以后。

Windows 7 发布。

大家突然觉得:

这个好!

启动更快。

界面顺眼。

稳定。

兼容性也好。

于是 Windows 7 成了一代经典。

但实际上:

Windows 7 并不是把 Vista 全部推倒重来。

Vista 时代加入的很多底层变化被保留下来。

只是到了 Windows 7:

驱动成熟了。

硬件性能上来了。

软件生态适配好了。

微软也把体验继续打磨。

所以 Vista 有点像:

第一个冲进雷区的人。

挨了一身炸。

后面的 Windows 7,则顺着它踩出来的路继续往前。


第十二章:Windows 8——微软差点把开始菜单革掉

Windows 7 成功以后。

一个新的问题来了。

2010 年代初。

整个计算机世界最火的东西是什么?

不是 PC。

而是:

智能手机和平板。

iPhone 已经出现。

iPad 也出来了。

触摸屏看起来像是未来。

微软于是开始思考:

如果未来的电脑都要触摸。

Windows 还应该继续围绕:

鼠标 + 键盘

来设计吗?

于是 2012 年:

Windows 8。

来了。

用户第一次开机。

一看:

开始按钮没了。

传统开始菜单也没了。

整个屏幕变成一块块巨大的磁贴。

微软希望:

PC。

平板。

触摸设备。

能够统一成一种新的交互方式。

想法并不是完全没有道理。

问题是:

现实世界里大量 Windows 用户面前摆着的仍然是:

键盘。

鼠标。

24 英寸显示器。

他们没有想用手指戳屏幕。

只想做一件最普通的事情:

打开程序。

结果却发现:

我的开始菜单去哪了?

这次微软碰到的,其实还是同一个问题:

兼容不仅仅是 API 和软件兼容。

用户几十年形成的习惯,同样是一种兼容。

Windows 8.1 开始往回修。

到了 Windows 10:

开始菜单终于正式回来了。


第十三章:Windows 10——微软开始改变自己

2015 年。

Windows 10 发布。

这一代 Windows 有一个很重要的变化:

微软开始越来越强调:

Windows as a Service。

以前大家习惯:

Windows 95。

Windows 98。

Windows XP。

Windows 7。

买一代。

用几年。

然后换下一代。

而 Windows 10 以后:

系统开始不断通过更新加入新功能。

Windows 也越来越像一个长期持续维护的平台。

与此同时。

另一个更有意思的变化正在发生。

过去那个和 Linux 世界针锋相对的微软:

开始变了。

微软开始大规模拥抱开源。

.NET 走向跨平台和开源。

Azure 大量运行 Linux。

Windows 自带 OpenSSH。

PowerShell 走向跨平台。

然后:

2016 年。

一个非常有意思的东西出现:

WSL。

Windows Subsystem for Linux。


第十四章:一个奇怪的时代——Windows 里面开始跑 Linux

如果把时间拨回 20 世纪 90 年代。

告诉一个 Unix 管理员:

以后微软会主动让 Windows 用户运行 Linux。

他可能会觉得你在讲笑话。

但今天:

打开 Windows Terminal。

输入:

wsl

你真的可以进入一个 Linux 环境。

你可以安装 Ubuntu。

然后运行:

ls
grep
sed
awk
ssh
git
python
gcc

到了 WSL 2:

背后甚至真的运行着 Linux Kernel。

于是一个非常有意思的画面出现了:

Windows NT
    │
    ├── Win32
    ├── PowerShell
    ├── Windows 应用
    │    └── WSL
              ↓
            Linux
              ↓
        GNU / Linux 工具

Windows 依然不是 Unix。

它的核心依然是 Windows NT。

但是:

那个曾经和 Unix/Linux 世界站在两个阵营的 Windows,正在主动把 Linux 请进自己的家里。

这件事尤其受到开发者欢迎。

以前开发服务器软件。

开发环境可能是:

Windows。

部署环境却是:

Linux。

中间经常出现各种差异。

现在:

Windows 桌面上直接就能得到一个 Linux 开发环境。

两个曾经相距很远的世界:

正在越来越靠近。


第十五章:Windows 11——老城旁边继续盖新城

2021 年。

Windows 11 发布。

界面再次发生变化。

任务栏默认居中。

开始菜单重新设计。

圆角。

新的设置界面。

新的安全要求。

新的硬件要求。

看起来:

Windows 又现代了一次。

可是你如果在 Windows 11 里继续往深处挖。

很快会发现很多熟悉的老朋友。

比如:

cmd.exe

控制面板。

注册表。

Win32。

各种 MMC 管理工具。

几十年前就存在的命令。

甚至:

一些非常老的 Windows 软件。

你可能依然可以运行。

于是 Windows 11 给人一种非常奇特的感觉。

表面:

2020 年代。

往里面走一层:

Windows 10。

再走一层:

Windows 7。

再挖:

Windows XP。

继续挖:

Windows NT。

某些兼容接口旁边:

甚至还能隐约看到更古老时代留下来的影子。

所以今天的 Windows 很像一座巨大的城市。

老城区不能拆。

因为里面还有人住。

但人口还在增加。

技术还在发展。

于是微软只能:

在老城旁边不断建设新城。

有时候你会从一栋现代写字楼出来。

拐个弯。

突然看见一栋几十年前的老房子。

于是很多人吐槽:

Windows 怎么这么乱?

但是反过来看:

能让一座几十年前建立的城市,一边继续住人,一边不停现代化,本身就是一件极其困难的工程。


第十六章:为什么最后是 Windows 统治了 PC?

这里还有一个非常重要的问题。

Unix 出现得更早。

技术影响极其深远。

后来 Linux 又免费、开源。

为什么桌面 PC 世界最后却长期属于 Windows?

原因当然很多。

但有几个特别重要。


第一:IBM PC 兼容机爆发了

IBM PC 最大的影响之一:

是它逐渐形成了一套事实标准。

后来越来越多厂商开始生产兼容 PC。

Compaq。

Dell。

HP。

Lenovo。

以及无数品牌机和组装机。

它们硬件来自不同厂商。

但软件平台却可以高度兼容。

而这个平台上最重要的软件环境:

最开始是 DOS。

后来就是:

Windows。


第二:微软不要求你必须买微软电脑

Apple 的路线是:

硬件。

操作系统。

生态。

一起做。

微软则完全不同。

它不需要自己制造每一台 PC。

你可以买:

Dell。

HP。

Lenovo。

ASUS。

Acer。

或者自己组装一台电脑。

然后:

安装同一个 Windows。

这让 Windows 搭上了整个 PC 硬件产业扩张的顺风车。

硬件厂商越多。

PC 越便宜。

PC 越多。

Windows 用户越多。


第三:生态开始自我强化

用户为什么买 Windows 电脑?

因为:

Windows 软件多。

开发者为什么开发 Windows 软件?

因为:

Windows 用户多。

硬件厂商为什么写 Windows 驱动?

因为:

Windows 用户多。

游戏厂商为什么首先支持 Windows?

还是因为:

Windows 用户多。

于是形成了一个越来越强的循环:

用户多
 ↓
软件多
 ↓
硬件支持多
 ↓
游戏多
 ↓
用户更多

当这个循环真正转起来以后:

Windows 就不再只是一个操作系统。

而是:

一个巨大的平台。


第十七章:Unix 和 Windows,其实走了两种完全不同的路

现在回头看。

Unix 和 Windows 非常有意思。

Unix 最初成长的地方是:

贝尔实验室。

大学。

研究机构。

工作站。

服务器。

它留下的是:

Shell。

管道。

小工具组合。

文本接口。

“一切皆文件”。

以及一整套影响几代程序员的设计思想。

Windows 的成长环境则完全不同。

它最重要的土地是:

个人电脑。

办公室。

家庭。

游戏。

商业软件。

打印机。

扫描仪。

声卡。

显卡。

各种奇奇怪怪的 PC 外设。

所以它们逐渐形成了不同的气质。

Unix 世界经常强调:

一个设计是不是足够简单?

是不是能够组合?

接口是不是优雅?

Windows 世界很多时候还必须问另一个问题:

20 年前那个程序还能不能跑?

这两种选择,没有办法简单地说:

谁高级。

谁落后。

它们面对的是两个不同的历史环境。

Unix 很多时候追求的是:

简洁、抽象和可组合。

Windows 很多时候追求的是:

别把用户几十年的东西弄坏。

结果:

它们都成功了。

只是成功在了不同的地方。


写在最后:那棵没有 Unix 血统的大树

回头看 Windows 的历史。

其实非常有意思。

一开始:

微软甚至没有自己的 PC 操作系统。

于是有了 MS-DOS。

DOS 不够好用。

于是有了 Windows。

Windows 3.x 逐渐普及图形界面。

Windows 95 把开始菜单和任务栏带进无数人的电脑。

但微软又很清楚:

DOS 那套底子不能支撑未来。

所以 Dave Cutler 和他的团队另起炉灶。

创造了:

Windows NT。

一边是 Windows 95、98、ME。

一边是 Windows NT、2000。

到了 XP:

两条河终于汇到了一起。

然后:

Vista 踩雷。

Windows 7 成为经典。

Windows 8 想拥抱触摸时代,却差点革掉了用户最熟悉的开始菜单。

Windows 10 又把传统和现代重新拼到一起。

Windows 11 则继续在这座巨大城市上修修补补、建设新区。

与此同时:

Windows 又开始拥抱 Linux。

OpenSSH。

WSL。

Linux 容器。

跨平台开发。

几十年前几乎站在两个阵营的 Unix/Linux 和 Windows:

今天居然可以住在同一台电脑里。

但无论 Windows 加入多少 Linux 工具:

有一点始终没有改变。

Windows 不是 Unix。

它不是 Unix 的后代。

也不是 Unix 的一个旁支。

它从 DOS PC 世界起家。

后来通过 Windows NT 建立了属于自己的现代操作系统血统。

如果说:

Unix 像一棵古老的大树。

BSD、Linux、macOS 在它周围长出了不同的枝叶。

那么:

Windows 更像是旁边另一棵独立生长起来的巨树。

它没有 Unix 的血统。

没有“一切皆文件”的传统。

没有 Unix Shell 那样的发展历史。

它甚至背着无数历史包袱。

注册表。

Win32。

盘符。

旧 API。

旧驱动。

几十年前的软件兼容。

这些东西有时候让它显得不够漂亮。

甚至不够“优雅”。

但是:

它完成了另一件极其困难的事情:

让同一个软件生态,连续服务了几代计算机用户。

从 8086。

到 386、486。

到 Pentium。

到今天的多核 CPU。

从软盘。

到机械硬盘。

再到 NVMe SSD。

从几十 KB、几 MB 内存。

到今天的几十 GB。

从单机 PC。

到互联网。

到云计算。

再到今天的 AI PC。

Windows 一路背着过去,向未来走。

所以如果 Unix 留给计算机世界最大的东西之一是:

思想。

那么 Windows 留下的另一条经验可能是:

生态、兼容和商业普及,同样能够塑造技术历史。

Unix 改变了操作系统应该怎样设计。

Windows 则改变了另一件事情:

普通人究竟怎样使用一台电脑。

它没有 Unix 血统。

但没有人能够否认:

过去四十年的个人计算机历史,有很大一部分,就是发生在那一扇又一扇 Windows 窗口里的。

Logo

openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构

更多推荐