诗和远方

操作系统发展简史

进化

操作系统已经发展了近半个世纪,其覆盖的范围包括:个人电脑端操作系统、工业应用操作系统以及移动端操作系统。

个人电脑端操作系统包括我们熟知和常用的微软Windows操作系统、苹果Mac操作系统以及门槛较高的Linux开源操作系统。

移动操作系统目前是安卓和苹果操作系统的二分天下。

至于工业操作系统距离普通大众甚远。


现代所有操作系统的鼻祖可追溯到美国AT&T公司和贝尔实验室等共同开发的MULTICS(多路信息计算系统)。自那开始,整个操作系统的演化可分成以下三个阶段:

(1)Unix初始系统诞生。此时的操作系统主要面向专业人士,无可视化界面,非专业人士不可用。

(2)可视化操作系统演进。以苹果 Mac、微软Windows为代表的可视化操作系统诞生,降低了使用者门槛。

(3)开源Linux诞生与演进。全世界软件人员合力开发的免费开源操作系统的诞生和长足发展。


下面以操作系统在这三个阶段的发展做为主线,来大致回顾一下电脑端操作系统的发展历程。


一:Unix初始系统诞生

计算机操作系统的鼻祖来自MULTICS(多路信息计算系统),我们在这里简称为M系统。

M系统是1964年由贝尔实验室、麻省理工学院及美国通用电气公司共同参与研发的,其目的是开发出一套安装在大型主机上多人多工的操作系统。因为在当时,计算机一次只能接受一个任务,多人的任务需要排队执行。

后来,原M系统设计成员Ken Thompson(肯·汤普森)因为无聊,想把一套名为“太空旅游”的游戏移植到他们实验室的一台机器上而开发了一套软件,该套软件参考M系统的思路设计,但是功能目的单一,实验室的人戏称此软件为Unics(单路信息计算系统)。

由于当时的Unics,每次移植到一个新的机器上,都需要重复在机器上处理,且对不同的机器设备,需要额外的编程处理。对于了解计算机的人来讲,就是驱动都要自己写,自己配。那个时候,系统的传播,受限于硬件和使用者的能力,只能做到极少部分人来使用。

1971年,肯·汤普森 和DennisRitchie(丹尼斯·里奇)为了使当时的Unics具有更好的移植性、适用于不同的硬件设施,创造了C语言。

他们于1973年,以C语言重新改写与编译Unics的核心, 并正式命名为Unix,形成Unix的初代版本。该版本由于使用在当时看来是高级语言的C来改写,减轻了对底层硬件依赖的问题,从而可以广泛地在各种机器上使用。

初代的Unix采用了200多条程序命令,虽然内核很小,但是功能极为精简强悍。当时传统需要用100行到1000行代码的程序,用Unix不超过10条命令就可解决。因为它的极高效率,使得它在AT&T公司内得以疯狂快速地传播。对软件编程不了解的人可以设想一下,本来要一天才能做完的工作,用当时的Unix几分钟就搞定了全天的工作,这种神器能不快速传播吗?

计算机软件的发展历程就是一个持续优化,提升效率的过程。Unics的发明是为了将复杂的任务简单化处理。同时,为了将软件和硬件的关联处理实现简化而重新创建了一个新的语言(C语言),从而实现软件和硬件的分离,为现代操作系统(Unix)的发展打下了坚实的基础。

需要指出的是,当时的Unix属于美国AT&T公司下的贝尔实验室,但该公司和学术界合作开发(加州伯克利大学),从而快速将其在各大高校传开。随后在1977年,伯克利大学的Bill Joy在取得了Unix的核心原始码后,着手修改成适合自己机器的版本, 同时增加了很多功能软件与编译工具,最终将它命名为Berkeley Software Distribution (简称BSD)。这个BSD是Unix很重要的一个分支,苹果的操作系统实际源自此分支。

1979年,AT&T公司出于商业的考量,将Unix的版权收了回去。因此,AT&T在1979年发行的第七版Unix中,特别提到了 “不可对学生提供原始码”的严格限制。 这导致后来学术界自力更生,Andrew Tanenbaum(安德鲁·塔能鲍姆)教授参照Unix的功能,写了一个Minix系统,用于教授学生操作系统。该系统在1986年完成并发布,并于次年发布了相关书籍。这是后来大名鼎鼎的Linus Torvalds(林纳斯·托瓦兹) 能够得以构建Linux初代系统的基础。


二:可视化操作系统演进

在1984年以前,所有的操作系统都是基于企业的大型机或高校科研机构来设计和使用的,还没有普及到普通人能用的地步。

当时,大部分的计算机系统都是基于命令行终端,没有图形化的操作界面。这样的操作系统只被极少部分的高级专业人员和学术界的老师、学生使用。等到了1984年,一切都发生了变化。

1984年前后,操作系统的发展,发生了哪些变化呢?

1. VisiCorp的第一款可视化操作系统Visi On 发布;

2. 苹果的第一款可视化操作系统Mac OS System 1.0发布;

3. 微软推出Windows 1.0 (1985年);

4. 日本NEC公司宣布基于ITRON/86规范,第一个实现了ITRON操作系统。

几乎不约而同的,世界上几个重要的操作系统都在这个时间段内发布了基于操作系统的商用版本,且都是图形化界面。而这四个操作系统近40年的演进,几乎影响了我们现代生活的方方面面。

VisiCorp公司的操作系统专为大型企业设计和使用,普通人无从得知其演进历程。我们这里也不赘述。

苹果的Mac OS 实际来源于Unix(free BSD版本),是Unix阵营向普通消费者进军的主力,图形化的界面和应用程序,降低了系统和机器的使用门槛。

微软之前一直使用MS-Dos命令行的系统,在看到苹果的可视化界面后,马上开发出Windows系统,共同抢占普通消费者市场,由此也导致了苹果和微软两大公司长达30多年相恨相杀的争斗。

ITRON和日本的精密机械工业相结合,使日本在数据系统、工业机器人、办公机器方面处于世界领先地位。例如日本的本田汽车中的引擎控制系统就是基于ITron的。


三:开源Linux诞生与演进

从上世纪80年代中后期开始,大量的基于可视化操作界面的系统问世后,操作系统真正普及开来。

不过,可视化的操作系统是直接装在机器上的,它在降低了用户使用门槛的同时,也封闭了内在复杂的软件设计。这对于具有骇客精神的学院派老师、学生来讲,难以看到其被隐藏的具体设计。由此,基于开源的操作系统Linux出现了。

1991年,在赫尔辛基上大学的林纳斯·托瓦兹,参照Unix和Minix,重写了一个初始的Linux系统,并于10月5日发布了第一版0.01版。

1993年,大约有100余名程序员参与了Linux内核代码编写/修改工作,其中核心组由5人组成,此时Linux 0.99的代码大约有十万行,用户大约有10万左右。

有别于Unix的闭源(代码不可获得),Linux系统遵循开源协议,意味着任何人都可以获取和编辑代码,进行修改,也因此,Linux获得了极大的关注和应用推广。由于全世界系统爱好者、使用者的参与,到Linux内核4.9.2版本时,Linux内核源代码量超过1800万行(目前最新版本超过2500万行)。

Related
DMA及Intel 82372019年07月08日
Linus Torvalds 谈软件开发面临的硬件问题2019年07月01日
操作系统发展简史2019年06月20日
Linux内核邮件列表LKML2019年06月19日
Source Insight2019年06月14日
Docker2019年06月06日
消息摘要2019年06月05日
命名规范(匈牙利命名法、驼峰式命名法、帕斯卡命名法)2019年05月28日

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

Catalog
标签列表
最新
最热
常用网站
站点信息
  • 文章总数:2010
  • 页面总数:1
  • 分类总数:17
  • 标签总数:517
  • 评论总数:0
  • 浏览总数:533686
Archives
Copyright © 2017-2019 www.my889.com Some Rights Reserved.
推荐使用 Chrome 浏览器浏览本站
沪ICP备17052342号
Sitemap XML