操作系统发展简史

操作系统(operating system,简称OS)是管理计算机硬件与软件资源的计算机程序,对下提供硬件能力的抽象扩展,对上提供用户操作能力,自20世纪60年代诞生以来,操作系统一直都是IT行业的魔戒,谁拥有它,都是时代最有力量的企业。本篇主要大致介绍一下操作系统发展的一些简单历史。

蓝色巨人的尝试

在电脑诞生的早期并不像现在这么普遍,相当于现在的超算,不是一般人可以接触到。即使是科研和军事也只能排队预约。为解决这类难题,在61年年底,IBM开始打算实施“360系统电子计算机计划”,这在当时是一项非常庞大的计划,据当时的估算,整个计划投资约需50亿美元(这可是在60年代初,十几年前的“曼哈顿工程”才花了20亿),这是不折不扣的大手笔,要知道,当时IBM的年营业额还不到这个数字。

之所以如此花钱,是因为这项计划要做一些以前没人做过的事,这将是一个通用的系统(360就是360度的意思,表示该系统全面的应用范围),该系列不同型 的计算机将能享用同样的设备,如磁带机、打印机等,能使用同样的软件,并且可以相互连接,一起工作,这些在今天看来理所当然的事,在当时可是闻所未闻。

该项目在硬件设计上很有创新,乃至IBM不得不自己动手设计制造芯片(因为买不到),但更大的困难却是在软件方面,要让所有的软件适用于所有的电脑(当然,仅限于360系列),这个理念让IBM的软件工程师们伤透脑筋,投入到这个项目中的软件工程师超过2000人(Windows2000也只动用了1700名),花费超过5亿美元,竟然超过了硬件研发的费用,所有这些都是创纪录的。

负责这项艰苦卓绝的开发任务的,是Frederick Brooks,当时年仅三十,他是世界上第一批获得计算机科学博士学位的人之一,有趣的是,当开发这个新型操作系统的计划提出时,Brooks本是最强硬的反对派,因为他觉得这个项目的难度骇人听闻,实在是不切实际。但当IBM的管理层拍下板来,要Brooks担当重任时,他居然慨然应允,高风亮节,实在是令人佩服。

 

360操作系统的开发用了5000个人年(人年就是一个人一年的工作量),由于从未有过开发这种大型软件的经验,开发组陷入了“有史以来最可怕的软件开发泥潭”,最终也没能完全实现当初的设想。Brooks后来根据这次开发任务的经验,写了一本《人月神话》(The Mythical Man-Month),成为软件工程领域内的经典著作。他本人更在1999年获得了计算机领域的最高奖——“图灵奖”。

1964年,IBM发布了S/360系统,对应的最早的主机操作系统为OS/360,命名360的意思是指一个圆的360度角,表示全方位的服务。OS/360支持多道程序,最多可同时运行15道程序。为了便于管理,OS/360把中央存储器划分为多个(最多15个)分区,每个程序在一个分区中运行。

不过这个项目并没有获得理想的成功,360计划虽然是在61年开始启动,但等到完成己是1964年,它的主要部件采用了集成电路(Intergrated Circuit,IC),属于第三代计算机,它也是第三代计算机的标志产品。尽管软件开发工作未获全胜,但360项目还是取得了辉煌的成功,IBM借此在计算机行业几乎是一统天下,IBM/360更被誉为人类从原子能时代进入信息时代的标志。此后IBM开发的大型机系列都保持了与360系统的兼容,直到最新的z系列,在360上写的程序仍可以不经修改的运行,“兼容”这一概念从此开始深入人心。

贝尔实验室玩出UNIX

1965 年左后由 贝尔实验室 加入了 麻省理工学院 以及 通用电气 合作的计划 —— 该计划要建立一套 多使用者(multi-user)、多任务(multi-processor)、多层次(multi-level) 的 MULTICS 操作系统,想让大型主机支持 300 台终端 

1969 年前后这个项目进度缓慢,资金短缺,贝尔实验室退出了研究

1969 年从这个项目中退出的 Ken Thompson 当时在实验室无聊时,为了让一台空闲的电脑上能够运行 “星际旅行(Space Travel)” 游戏,在 8 月份左右趁着其妻子探亲的时间,用了 1 个月的时间,使用汇编写出了 Unix 操作系统的原型

1970 年,美国贝尔实验室的 Ken Thompson,以 BCPL 语言为基础,设计出很简单且很接近硬件的 B 语言(取BCPL的首字母),并且他用 B 语言 写了第一个 UNIX 操作系统

1971 年,同样酷爱 “星际旅行(Space Travel)” 的 Dennis M.Ritchie 为了能早点儿玩上游戏,加入了 Thompson 的开发项目,合作开发 UNIX,他的主要工作是改造 B 语言,因为B 语言 的跨平台性较差

1972 年,Dennis M.Ritchie 在 B 语言 的基础上最终设计出了一种新的语言,他取了 BCPL 的第二个字母作为这种语言的名字,这就是 C 语言

1973 年初,C 语言的主体完成,Thompson 和 Ritchie 迫不及待地开始用它完全重写了现在大名鼎鼎的 Unix 操作系统

                                                肯·汤普逊(左)和丹尼斯·里奇(右)

楚汉之争

上面这张图是我从硅谷传奇上截下来的,右边这个是乔布斯,是硅谷的传奇人物,一个天才,他是一个会发光的的人,无论是早期的80年代微型计算机、90年代的动漫、还是我们现在爱不释手的手机,他都起到巨大的推动作用,甚至可以说引领作用。左边是盖茨,是个偏执的人,是80年到2000年的IT时代的统治者。

1976 年,乔布斯二十岁时,和斯蒂 芬·沃兹尼克(Steve Wozniak)以及韦恩 (Wayne)三人在车库里办起了苹果公司,研制 个人微机。后来韦恩退出,只剩下乔布斯和沃兹 两人。同年两人研制出Apple-I 当时一台计算机少说要上万美元,即使价钱降几倍也不可能进入老百姓家。为了降低成本,Apple-I 除了有一个带键盘的主机之外,什么外设都没有。但是,它有一个可以接家用电视的视频口,和一个接盒式录音机的接口,保证数据和程序可以存在一般的录音带上。而电视机和录音机在美国几乎家家都有。不过Apple-I 由于缺少操作系统,只能让学计算机的孩子练习一下简单的编程和玩一点简单的诸如警察抓小偷的游戏。所以也不太受大家欢迎。

1984 年,第二代苹果机麦金托什 (Macintosh)诞生了。它的到了彻底改变了这个苹果和这个时代,麦金托什是世界上第一种可以买得到的、拥有交互式图形界面并且使用鼠标的个人电脑。
它的硬件部分性能略优于同期的 IBM PC 机,而 它的操作系统Mac OS领先当时 IBM-PC 的操作系统 DOS 整整一代。到 1985 年为止,苹果发展顺利,拥有四千员工,股票市值高达 20 亿美元。乔布斯个人也很顺利,名利双收。

盖茨从来是个置于死地而后生的人,早在 哈佛大学读书时,他就是这样。那一年他刚上大 二,从一本杂志上看到一篇介绍 Altair 公司微处 理器的文章,于是就给该公司老板写了封信说他 们为贵公司的微处理器写了个 BASIC 语言的解 释器,这样用户就可以在 Altair 的处理器上使用BASIC 编程了。其实,当时这个解释器完全是盖茨杜撰出来的。Altair 公司倒很认真,要来看看 盖茨的东西。盖茨和艾伦等人居然在几星期内赶制出来了一个。Altair 公司对盖茨等人的工作很 满意,干脆雇了艾伦。几个月后,艾伦说服了盖 茨退学,在1975年4月4日全时办起了自己的公司微软。

1980年,IBM公司选中微软公司为其新PC编写关键的操作系统软件,这是公司发展中的一个重大转折点。由于时间紧迫,程序复杂,微软公司以5万美元的价格从西雅图的一位程序编制者Tim Paterson(帕特森)手中买下了一个操作系统QDOS的使用权,在进行部分改写后提供给IBM,并将其命名为Microsoft DOS(Disk Operating System,磁盘操作系统)。IBM-PC机的普及使MS-DOS取得了巨大的成功,因为其他PC制造者都希望与IBM兼容。MS-DOS在很多家公司被使用。因此80年代,它成了PC的标准操作系统。

1981 年,在硅谷的库帕蒂罗市苹果公司的总部,举行了一次微机领域的世纪双雄会。事业正蒸蒸日上的苹果公司的创始人史蒂夫.乔布 斯邀请了刚刚拿下 IBMPC 操作系统合同的微软 公司创始人比尔.盖茨洽谈合作事宜。乔布斯给盖 茨看了新设计的麦金托什个人电脑以及漂亮的基于图形界面的操作系统。还沉浸于拿下 IBM 大合同的盖茨一下子给镇呆了。这种基于图形界面加上一个小小的鼠标的操作系统比他们的 DOS 不知道要强多少倍,前者使得计算机的操作比以前方便了许多。盖茨马上意识到,眼前这种虽然还不完善的操作系统代表了今后的趋势,而微软当 时产品线上所有的东西都显得寒酸而落后。那一年,乔布斯和盖茨都是二十六岁。虽然两个人都 是科技工业界的新星,但是没有人意识到未来年 产值万亿美元的个人电脑工业,将由这两个人来争天下。正春风得意的乔布斯当时并不了解盖茨这个人,他只是知道微软做事情蛮快蛮好,请盖茨来的目的是让微软替苹果开发应用软件。如果时光能倒流,乔布斯一定不会举行这次双雄会,因为后来大家都知道盖茨和微软是不会甘居人下的,他们一旦瞄上哪个领域,哪些领域原有的公司的灾难就不远了。乔布斯在这次会晤中显得很傲慢,因为他有麦金托什这个宝贝在手。而在合作的谈判上,出了名的谈判高手乔布斯又斤斤计较。这两点都让盖茨很不喜欢乔布斯,但他还是促成了交易,他答应为苹果开发三种应用软件,因为他对这种图形界面的操作系统本身感兴趣。 盖茨不甘心在这次千载难逢的计算机革命中当一个配角,而必须夺得操作系统的控制权。首先,他兑现对苹果的承诺,开发麦金托什上的应用软件。整个开发工作进展缓慢,盖茨暗暗高兴,这说明在麦金托什上开发应用程序比在 DOS 下难。这些工作对微软了解苹果,并为自己今后开发图形操作系统都很有用。第二,他答应了IBM一起开发新的操作系统OS/2的合作。显然,IBM 此目的是想从微软手里夺回自己 PC机操作系统的控制权,但是微软还是答应了,因为这样一来可以借助 IBM 的力量锻炼队伍,二来可以制约苹果,但是,微软在推广 OS/2 上并不卖力。最关键的是第三步棋,微软暗地里偷偷地、非常低调的学习苹果悄悄开发 Windows,1985年开始发行 Windows 1.0是微软公司第一次对个人电脑操作平台进行用户图形界面的尝试。1987年12月9日, Windows 2.0发布,最初售价为100美元;是一个基于MS-DOS操作系统、看起来像 Mac OS的微软Windows图形用户界面的Windows版本。这两个必须依靠 DOS 的版本很不成功。当时,没有人认为微软能做好图形界面加鼠标的操作系统。盖茨暗地里却请了很多高手来助阵,包括施乐公司最早做图形界面的一些人,当时最好的操作系统 VMS的主持人 David Neil Cutler 以及操作系统著名专家 Jim Allchin 等。Jim Allchin 当时对微软的技术根本瞧不上,他说,你们微软的东西是世界上最烂的。盖茨倒很大度,回答说,正因为它们很烂,才要请你来把它们做好。最后,盖茨的诚意和微软的股票期权打动了 Allchin。1990年5月22日,微软(Microsoft)迎来了第一个具有时代意义的作品—— Windows 3.0,1992年4月,一个更为成熟的版本  Windows 3.1诞生了。Windows 3.1添加了多媒体功能、CD播放器以及对桌面排版很重要的 True Type字体。次年发布的 Windows for Workgroups 3.11又引入了对 络的支持―包括以太 和当时如日中天的Novell netware,并利用对等 络的概念构建 Windows工作组 络。凭借操作系统的优势至此,微软在软件业的垄断地位便形成了,一个新的帝国从此诞生。到 1997 年,微软的市值首度超过 IBM,虽然当时微软一年的营业额还不到 IBM 一个季度的,但是华尔街很看好微软,认为它代表着未来。

开源的力量

1984年,Richard Stallman组织开发了一个完全基于自由软件的软件体系计划——GNU(GNU是GNU is Not UNIX的递归缩写),并且拟定了一份通用公共许可证(General Public License,简称GPL)。

1991 年 林纳斯(Linus) 就读于赫尔辛基大学期间,对 Unix 产生浓厚兴趣,尝试着在Minix 上做一些开发工作

因为 Minix 只是教学使用,因此功能并不强,林纳斯 经常要用他的终端 仿真器(Terminal Emulator) 去访问大学主机上的新闻组和邮件,为了方便读写和下载文件,他自己编写了磁盘驱动程序和文件系统,这些在后来成为了 Linux 第一个内核的雏形,当时,他年仅 21 岁!

百家争鸣的移动时代

1998年在爱立信、诺基亚、摩托罗拉和Psion的共同合作下成立塞班公司。 1999年塞班公司推出Symbian OS v5.x操作系统。2000年全球第一款Symbian系统手机:爱立信R380正式出售。2005年4月,诺基亚在阿姆斯特丹、香港等地,举行主题为“See New,Hear New,Feel New”发布会,发布会上,诺基亚一改此前作风,将四个数字命名手机序列的方式换成全新的N系列(N90、N91和N70),三部手机均搭载塞班S60系统。 2006年全球Symbian手机总量达到一亿部。2008年诺基亚收购塞班公司,塞班成为诺基亚独占系统。不过这次收购让塞班变得更闭塞,垄断地位让诺基亚在系统上的开发上也止步不前,系统没有跟上硬件的进步。慢慢断送了塞班系统前程

苹果于2005年收购了Fingerworks的多点触摸技术。iOS在2007年亮相,是一个类似Unix的操作系统。 基于和微软竞争失败的教训,苹果公司 在操作系统的开放性做了很大的提升, 2007年10月17日,发布了第一个本地化iPhone应用程序开发包(SDK),并且计划在2月发送到每个开发者以及开发商手中。2011年10月4日,苹果公司宣布iOS平台的应用程序已经突破50万个。凭借ios的强大生态和iPhone出色产品设计,苹果夺得了手机销售的冠军的宝座。同时苹果有足够的力量和微软在内的任何企业竞争

苹果在移动端的成功,让难兄难弟的Google羡慕不已。2005年8月17日,Google低调收购了成立仅22个月的高科技企业Android及其团队。安迪鲁宾成为Google公司工程部副总裁,继续负责Android项目。2007年11月5日,谷歌公司正式向外界展示了这款名为Android的操作系统,但是当鲁宾和他的同事看到苹 果的 iPhone ,他们觉得 Android 的样机和苹果 手机的差距太大,决定推倒重来。否定自己多年 的工作是要有非常大的勇气的,但是,这是通向成功之路。2007 年底, Google 联合全球几十家移动 运营商、手机制造商和芯片制造商成立了Android 联盟。借助完全的开发生态、开源思路和Google强大的技术支持,android也取得肉眼可见的进步合成。同事也让谷歌在和微软的竞争中解放出来。

东方智慧

经过几十年的发展,美国基本上在操作系统行业形成了统治地位,也建立了其他国家吃草,美国吃肉食物链,不过一个贸易战狂人打破了这个规则,2018-03-23凌晨,中美贸易迎来了历史性的瞬间——据人民日 道,美国总统特朗普宣布,将对中国价值高达500亿美元(约合人民币3165亿元)的商品征收惩罚性关税!中国随即进行了反抗,对美国大豆等做了关税制裁。眼见经济制裁收获不大的情况下,美国使出技术制裁,对中国的高新技术企业中兴、华为等企业进行技术封锁,也就是我们吃肉,草也不让你吃。对于美国的技术封锁我们没有反制的资本。不过也唤醒了我们对底层技术的认识,尽管我们的IT行业这些年有不少的优秀产品,但是我们的IT行业缺芯少魂,这个魂也就是操作系统。其实我们国家在芯片操作系统领域也投了很多的钱,不过由于某些原因,总是哄弄了事,肥了一部分人,反倒害了整个行业,是国人对操作系统开发缺乏信心,以至于前几天的直播大V老罗仍说:

从产研角度,OS 的实现确实很多投资人不信。不是单纯不信我们,是整体上不信中国团队能做成。

OS 虽然无比艰难,但肯定都是能搞定的。只是底层技术团队可能一部分要放到硅谷或北欧,国内基本没有这方面人才储备。

 不过我觉得我们不但能做而且能做好,主要有以下几点理由:

       1、 我们从来没有真正做过操作系统,尽管投了很多钱,不过都是文章了事,或者拿着别人的东西包装一下哄弄一下。但是行业人员都可以看出来,形成一种歪风,也没有培养出来人才。

        2、我们没有调动 会资源,2021年统计我们软件从业者已经突破了800万,形成了已经很大很强的产业,如果能这些资源充分发挥出来一部分,是个相当大的力量。

        3、国人接触电脑编程的年龄正在逐渐减小,不像我们这代人,到了20岁才接触到计算机,到了工作才开始真正学编程,现在很多孩子和国外那些人差不多,从小就可以接触到计算机,做设计和编程,喜欢上计算机,高校不少老师也是计算机大牛,绝对可以培养出少年天才,带动计算机行业发展。

        4、国家体量比较大,尽管很多国家近年来也在操作系统上有尝试,如三星TiZen,做的很不错,但是也以失败告终,我觉得主要是韩国没有能力支撑到TiZen成长起来。相信我们能有一个优秀的操作系统一定有能力让他长成一个大树。

        其实即使没有贸易战,我们也应该研发操作系统,因为操作系统关系到整个IT行业的发展,我们也是行业发展的受益者,不能只做一个旁观者,当前操作系统基本上属于挤牙膏阶段,多年没有大的发展,主要原因垄断者基本都是西方,缺少革命性的思维,我们国家有较长的文明发展史,在人性理解上更胜一筹,如果我们可以加入这个行业,或许对操作系统的发展起到很大作用。

参考文章 

操作系统的发展史(科普章节) (baidu.com)

一文读懂移动操作系统发展史 – 哔哩哔哩 (bilibili.com)

浪潮之巅 

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2022年5月21日
下一篇 2022年5月21日

相关推荐