操作系统发展简史

下文以时间为主轴,以操作系统发展历程中的标志性技术或产品为要点进行叙述,尝试整理操作系统发展脉络。

20世纪40年代,第一代电子计算机诞生。

此时的真空管计算机体型庞大、操作繁杂,通过纸带打孔、扳动开关等方式进行操作,需要大量人工步骤。而计算机常常处于空闲状态,效率低下。

20世纪50年代,晶体管和集成电路技术的发展促进了计算机体积小型化、能耗降低、运算速度提升等,同时磁性介质存储技术也得到发展。

为了减少计算机空闲率以提升效率,出现了(单道)批处理系统:将一批作业(记录于磁带)提交给操作系统。脱机的输入/输出相对提升了计算机利用率,但是计算机不能并发工作,输入/输出的时间中cpu仍然空闲。于是出现了相对于原单道批处理系统的多道批处理系统,引入中断技术,可并发执行多个程序,大幅提升资源利用率。

以上技术旨在解决人工操作、cpu、I/O设备的速度不匹配问题。此时的系统仍然是一次性输入输出,人机交互较弱,且没有多用户功能。

20世纪 60年代,分时系统诞生。通过周期性扫描终端并缓存以便及时接受输入数据,通过时间片轮转机制为多个用户提供相对隔离独立的操作环境。多个终端机负责输入/输出,主机负责运算。之后以此为基础又产生了实时系统,增加了任务优先级、周期性等功能,进一步提升可靠性。

1964年,贝尔实验室(隶属AT&T)、麻省理工学院及美国通用电气公司共同参与了Multics计划,目的是为了开发出一套安装在大型主机上多人多工的、高度可扩展的操作系统。但是由于目标设定过高,资金短缺、进度缓慢,宣告失败。

20世纪70年代初,贝尔实验室的Ken Thompson与Dennis M.Ritchie简化了Multics,基于兴趣开发了Unix,具有进程、设备文件、命令行解释器、小型文件系统等核心工具。经历汇编语言、B语言、C语言的版本,于1974年正式发布。

AT&T向学术机构研究/教学以免费授权的形式提供源码,他人能以此编写程序和改进功能。Unix发展的早期,学术机构和黑客们自由共享源码,合作开发Unix,形成了开源社区的雏形。其中Bill Joy带领研究小组维护的一个Unix版本——伯克利软件套件BSD成为了Unix的一个重要分支。之后Bill Joy成立了Sun公司,产生了Solaris,freeBSD(支持x86架构)等其他版本。

Unix的C语言正式版本具有良好的可移植性,又由于AT&T在初期开放源码,商业公司根据自身硬件推出了不同的Unix版本,如IBM的AIX,惠普的HP UX等。

1979年第7版Unix版权声明中,AT&T提出了不可对学生提供源码的严格限制(1984年限制解除),Unix转向商业项目。1987年,Andrew S. Tanenbaum为教学编写了Minix系统——一个基于x86的不使用Unix源码的类Unix系统内核,以低价售卖。

1983年,Richard Matthew Stallman发起了GNU(GNU’s Not Unix缩写)计划,过程中编写了多种软件工具(除了系统内核),协同律师起草了GPL(GNU通用公共许可证)协议证书。GPL协议下的自由软件,允许用户自由拷贝、修改和销售。但对其源代码的任何修改,都必须向所有用户公开。这些工作促使自由软件运动兴起,推动了开源软件的普及。

Linus Benedict Torvalds基于兴趣初步编写了Linux内核,在论坛上发布并收集修改信息,又参考POSIX(便携式操作系统接口规范)以提高对Unix兼容性。为了支持频繁的代码修改,Linux内核具有模块化的特点,允许内核在运行时动态地插入或删除代码,不用重新编译内核,提高了可维护性。

通过与GNU社区合作,Linux内核与GNU软件结合形成了现在的GNU/Linux操作系统。1994年,Linux1.0版正式发布。

核心、软件、工具合并称为Linux套件,商业公司开始销售自身研发优化的Linux套件,由此诞生出了Linux的诸多发行版本,如Ubuntu、CentOS、Arch等。

回顾另一条发展路线,20世纪70年代,Unix主要用于学术研究和高性能计算领域,1975年MITS推出了第一台商用微型计算机Altair 8800,微型计算机发展刚刚起步,仍然缺乏合适的操作系统。

1974年,Gary Kildall研发了CP/M,后来成为第一个广泛使用的微型计算机操作系统,随着微型计算机的传播,CP/M系统开始在行业内流行。

20世纪80年代,IBM公司开始筹备微型计算机产品的计划,与CP/M的版权方DR公司合作失败后,IBM采用了西雅图计算机公司的Tim Paterson模仿CP/M开发的QDOS(Quick and Dirty Operating System)系统(后改名86-DOS)。后来微软将86-DOS版权买断,1981年,微软正式推出了MS-DOS系统,随着IBM个人电脑产品快速占领市场。

在80年代微软陆续发布了多个DOS版本,为了实现GUI功能在1985年产生了Windows系统,90年代间DOS逐渐退居二线,1990年Windows3.0的成功使微软加大了Win系列投入,之后几十年陆续诞生了WinNT、Win95/98、WinXP、Win7等经典版本。

再看GUI的发展过程,1973年,施乐公司PARC设计了The Xerox Alto,首次在操作系统中使用了GUI技术。

1984年,苹果的Macintosh计算机搭载了图形化用户界面的操作系统System 1,将GUI推向大众,从System 7.6版本该系统开始改名为Mac OS。2001年,Mac OS X发布,与之前的Classic Mac OS的区别在于其发展路径:NEXTSTEP(乔布斯离开苹果后所创NeXT公司开发,基于Mach内核与BSD)---->OPENSTEP---->XNU内核---->Darwin操作系统(开源)---->Mac OS X。

微软则从80年代开始将GUI技术应用在Windows系列,逐渐取代DOS。

MIT于1984年研发了X Window,逐渐成为Unix和类Unix系统中使用的GUI技术。1994年Linux 1.0发布时即采用X Windows以提供GUI功能,之后也支持了KDE和GNOME两大开源桌面项目。

回顾80年代,在个人电脑进一步小型化的趋势下,产生了一系列PDA(个人数字助理)产品,厂商各自研发的PDA控制程序可视为移动终端最早的操作系统。90年代,Palm公司的Palm OS和RIM公司的BlackBerry OS成为早期移动终端产品所使用的系统。

1996年,微软发布了Windows CE 操作系统,微软开始进入手机操作系统行业,直至2003年前市场份额仅次于Palm系统。

Psion公司曾在1989年推出EPOC系统,在1998年与诺基亚、爱立信和摩托罗拉联合,共同成立了塞班(Symbian)公司,EPOC/EPOC32 被正式更名为Symbian OS。同期爱立信和诺基亚发布的手机都搭载了Symbian系统,成为21世纪初移动设备操作系统的主流,称霸中低端机市场。

2007年,苹果发布了第一代iPhone,将其操作系统称为Mac OS X的手机版本。2008年,iPhone系统有了独立名称iPhone OS,2010年改名为iOS。

回到2003年,Android公司成立,于2005年被Google收购,2007年Google正式展示了Android操作系统(基于Linux内核),同时宣布联合了摩托罗拉、高通、HTC 和 T-Mobile 在内多家公司,共同组建了开放手机联盟,发起了AOSP(Android Open Source Project)计划,以推动Android作为开源系统的普及。2008年,第一款搭载Android的手机推出,在几年内安卓迅速成为了市场主流。

每一代的安卓系统更新由全球开发者共同贡献代码,由谷歌维护和发布。基于AOSP,各方根据自己的需求定制设计了多种商用安卓系统(服务套件),如国内小米的MIUI,华为的EMUI,OPPO的Color OS,国外的LineageOS,Fuchsia OS等。

中国操作系统本土化始于 20 世纪末,并多以 Unix/Linux 为基础二次开发为主。由于种种原因,国产操作系统在市场中幸存者寥寥无几,目前较为知名的有开源的Deepin操作系统(前身为2004年由hiweed发起的hiweed linux项目),鸿蒙的开源(OpenHarmony)闭源(HarmonyOS)版本。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值