WIN32汇编语言教程:第01章 背景知识 · 1.1 Win32的软硬件平台(2)

1.1.2 Windows的历史

Win32指的是32位的Windows系操作系统。Microsoft公司有一系列的Windows操作系统,下面先简单介绍Windows的历史。

谈到Windows的历史就不能不谈MS-DOS的历史。MS-DOS的技术源自CP/M操作系统。1973年,第一个8位磁盘操作系统CP/M出现,这种操作系统有较好的层次结构,它利用BIOS隔离硬件和操作系统的其他模块,有很好的可移植性和易用性。在此基础上,西雅图计算机公司于1978年开始开发QDOS,此后又成功研制出16位微型机的实验性操作系统86-DOS。

也正是在这段时期,IBM公司正在开发基于8086处理器的IBM PC,急需一个配套的操作系统,但和CP/M开发者之间的谈判不是很顺利,于是Microsoft乘虚而入。Microsoft没有足够的时间开发新的操作系统,于是找到了西雅图计算机公司,双方达成了由Microsoft经销86-DOS操作系统的协议。以86-DOS操作系统为基础,Microsoft很快开发出MS-DOS 1.0版本。1981年8月,MS-DOS 1.0和IBM PC一起发布。

MS-DOS 1.0还不支持硬盘和分层目录结构,文件管理中继承了CP/M操作系统的许多功能,但仅支持单面软盘。到了1983年,为了支持带硬盘的PC/XT计算机,经过较大地改造并吸取了UNIX的很多优点后,MS-DOS升级到2.0版本,可以支持32 MB大小的硬盘分区。1984年,MS-DOS升级到3.0版本,开始支持1.2 MB软盘,用于PC/AT计算机。1986年,为了支持3.5英寸软盘,MS-DOS升级到3.2版本。

1987年,为了兼容IBM和PS/2个人计算机,MS-DOS升级到3.3版,这也是最流行的DOS版本。1990年,Microsoft推出MS-DOS 5.0,开始支持2.88 MB的软盘,并可以把部分系统代码放到高端内存运行,空出低端内存供应用程序使用,同时将磁盘单个分区的支持容量提高到了2 GB。

一直到MS-DOS的最后版本6.22为止,绝大多数的PC上运行的就是这个字符界面的操作系统。当时要想玩转DOS,必须有专业计算机知识,不然“Bad command or filename”之类的提示随处可见,对此一般用户还真会不知所措。所以,虽然“界面简陋却令人兴奋”的Windows 1.0于1985年11月正式发布时,还是为沉闷的屏幕带来了一丝清新,毕竟它使非专业的人员使用计算机变得容易。在增强了键盘和鼠标接口后,1987年微软又推出了Windows 2.0版。由于当时的硬件和DOS功能的限制,Windows并不实用,所以这两个版本并不成功。Windows 2.0版发布不久,Intel公司的80386处理器发布,Microsoft推出使用80386处理器V86模式的Windows 2.1,即Windows/286。

在接下来的时间里,基于Intel 80x86微处理器的IBM兼容机已经快速普及,这给Microsoft开发新的Windows系统提供了发展空间和市场。Microsoft公司对Windows的内存管理和图形界面做了重大改进,在1990年5月份推出了Windows 3.0,可以支持Intel 80286/386/486微处理器的保护模式,并可以访问达16 MB的内存。Windows 3.0一面世便在商业上取得了惊人的成功,从而一举奠定了Microsoft在操作系统上的垄断地位。1992年4月,Microsoft推出了更稳定的Windows 3.1,可以支持True Type字体。Windows 3.1是16位Windows中最流行的版本。

1993年5月,Microsoft发布了具备安全性和稳定性特征的32位操作系统Windows NT 3.11,主要针对网络和服务器市场。“NT”代表“新技术”(New Technology)。NT 3.11是Windows系列中使用32位编程模式的第一个版本。它充分利用80386及以上处理器的平面地址空间和保护模式等新技术,并可以移植到Alpha,MIPS和Power PC等不同的处理器平台上运行。

随后,Microsoft借Windows东风,于1995年8月推出新一代操作系统Windows 95(又名Chicago)。Windows 95实现了很友好的用户界面,支持即插即用功能,支持主流多媒体设备和DirectX编程接口,成为Microsoft发展史上的一个里程碑,也是操作系统发展史上的一个里程碑。从此,Windows 9x便取代了Windows 3.x和MS-DOS操作系统,成为个人计算机平台的主流操作系统。

1998年Microsoft又发布了使用更方便的Windows 98。本来Windows 98是Microsoft最后一款基于Win 9x内核的操作系统,并打算将下一代的操作系统建立在更加稳定的Windows NT内核上,也就是Windows NT 5.0。但是在开发过程中,Microsoft意识到基于NT内核的系统不可能提供足够的多媒体支持,于是继续开发了基于Win 9x内核的Windows Me。虽然其性能并不比Windows 98有很大提高,但在操作界面上有了更人性化的改进。

在操作系统的分类上,Microsoft根据家庭个人用户和商业办公用户的不同需求,分别提供Window 9x和Windows NT系列,Windows 9x注重用户界面及其他易用性特征,而NT系列则在纯32位内核的稳定性和可靠性等企业级特征上下功夫;另一方面,特别针对不同规模商业用户的需求,Windows NT系列分为工作站版和服务器版等多个版本。在Windows 9x系列上,从Windows 95 OSR2版起,Microsoft先后发布了Windows 98,Windows 98 SE和Windows Me 3个面向家庭和个人用户的PC操作系统,并把IE浏览器集成在PC操作系统中;而在商用操作系统领域,继Windows NT 3.11之后,Microsoft相继发布了Windows NT 3.5和4.0两代操作系统,并在NT 4.0上采用了Windows 95式的用户界面。2000年,微软发布采用纯32位内核并照顾了家庭消费类应用软件的Windows NT 5.0,即Windows 2000。至此,Microsoft的两个系列操作系统终于开始统一。

为了利用MS-DOS时代大量的应用程序,保持向下的兼容性,Windows 9x的内核模块还有许多地方使用16位程序,但在编程上,支持32位的编程模式。Windows NT系列和Windows 9x系列操作系统都支持Win32 API(Application Programming Interface),即Windows 32位应用程序编程接口,Win32 API为应用程序提供了大量的系统功能调用,通过Win32 API调用Windows系统相当于在MS-DOS中通过中断方式调用系统功能。就像DOS汇编程序中随处可见的INT 21h指令一样,Windows应用程序中Win32 API也随处可见。

1.1.3  Win32平台的背后——Wintel联盟

Windows是伴随着Intel 80x86系列处理器从弱小逐渐成为霸主的。在20世纪90年代,Intel 80x86系列处理器更新换代最快的时期也就是Microsoft的Windows系列最红的时期。在这个时期,Windows标志和Intel Inside标志几乎是每一台桌面PC上都有的烙印。Microsoft和Intel公司一软一硬,完全统治着全球PC机的市场,成为整个PC时代的象征,被世人称为Wintel联盟。

从20世纪80年代起,当时规模甚小的Microsoft和Intel正式携手,逐步垄断了计算机产业硬件与软件的主要领域。每当Microsoft推出功能更强的软件后,Intel处理器的需求量就上升;同样,当Intel生产出速度更快的处理器后,Microsoft的软件因有了更好的平台而显得更易用。Intel有多快的CPU,Microsoft就有相应的、庞大的软件来支持它。Microsoft的应用程序不管有多庞大,需要多快的速度,Intel的新处理器又总能满足它。业界也必须出奇一致地放弃原有的软硬件平台,转到新平台上去。因为,谁跟不上Wintel的步伐,谁就极有可能被淘汰出局。

Wintel联盟不仅是针对竞争对手的联盟,它还是迫使用户升级的同盟。在升级的循环中,多数用户往往为了一个应用而被迫升级整个系统。Intel有多快的CPU,Microsoft 就有多花哨、多庞大的操作系统与之相配合。操作系统的升级即意味着应用软件的全面升级,而应用软件的升级则意味着用户整个系统必须升级。如果用户还在原有的系统上工作,那么就再也得不到新软件的支持了,因为,所有的应用软件公司都不愿意在过时的操作系统上投资开发自己的应用软件。大家都有体会,运行Windows 95很快的Pentium II/250把Windows 98一装上去,立刻慢了下来,等到升级到了Pentium III/450,Windows 98运行起来很快了,Windows 2000又出来了,“快速”的PIII又成了老牛。在又一轮的升级下,CPU爬到了1 GHz以上,等到Windows 2000运行起来很舒畅了,再试一下Windows XP,用户升级的欲望又出来了!让客户口袋里的银子永远不会有满的一天。

时钟走过2000年,Wintel联盟已呈衰减之势。Sun,IBM,Oracle,Linux,垄断和司法部等名词让Microsoft感到头痛;AMD的速龙和钻龙处理器也让Intel手忙脚乱。Microsoft和Intel在利益上的冲突也越来越公开化,整个业界都感受到了Wintel联盟将土崩瓦解的气息。

不管业界风起云涌也好,一片死寂也好,Intel 80x86平台和Windows是桌面计算机上最流行的配置已是不争的事实。为了自由和创新,我们可以去学习Linux,但在更多的时候,学会Win32编程是不得已的选择,即使是全世界的计算机中只剩50%在运行Windows。Windows程序员仍然有广阔的用武之地,这也算是无奈之际给自己一个理由吧!

上页:第01章 背景知识 · 1.1 Win32的软硬件平台(1) 下页:第01章 背景知识 · 1.2 Windows的特色

第01章 背景知识

版权所有 © 云南伯恩科技 证书:粤ICP备09170368号