1、操作系统历史
也许给我介绍其他事物的黑历史我是不想听的,但是了解一下操作系统的历史我很有兴趣。
操作系统的发展主要由两个因素驱动:
- 硬件成本的不断下降。
- 计算机的功能和复杂性的不断变化。
2、操作系统的各个阶段
- ?- 1940 年,状态机操作系统,只是根据特定输入和现在的特定状态进行状态转换而已,不应成为计算机,而应该叫做自动机,不能存储程序。
- 20 世纪 40 年代,单一操作员、单一控制端操作系统,这已经是当时的天才们能想到的最直观的控制计算机的方式了。通过提供一些标准命令给用户使用,而这些操作命令的集合就构成了原始操作系统 SOSC,已经可以提供人工交互。但任何时候只能做一件事,不支持并发和多道程序运行。操作系统并不自我运行,而是等待操作员输入命令再运行。
- 20 世纪 50 年代,批处理操作系统, SOSC 之所以效率低下,是因为计算机总在等待人的下一步动作,而人的动作总是很慢。所以,事先将命令集合打印在纸带上,然后交给一个工作人员一批一批地处理,很多个用户的纸带命令会加载到计算机的磁带(磁带是外存)上。批处理操作系统对应的是第二代通用计算机。批处理操作系统由批处理监视器和库函数构成。由于磁带上存在多个用户的程序,所以出现了文件的概念。批处理操作系统仍然同一时间只能执行一个程序。
- 20 世纪 60 年代,多道批处理系统,由于之前 CPU 和 I/O 设备是串行的,这种让高速设备等待低速设备的状况令人担忧,能否设计成 CPU 和 I/O 并发呢?即在一个程序输入输出时,让另一个程序继续执行、由此出现多道批处理系统。可以在宏观上实现同一时间运行多个程序,因此出现了保护一个进程不受另一个进程干扰。
- 20 世纪 70 年代,
- 分时操作系统,剔剔除统一计算机管理员,由用户自己管自己的程序,分给每个人有限的时间,只要时间到了,就换一个进程。把每一个用户看做一个 I/O 设备。相继出现池化、互斥、进程通信等技术。
- 实时操作系统 ,为满足对计算机响应时间有要求的应用,如流水装备线。实时操作系统是指必须在规定时间内完成的操作系统,即必须满足时序可预测性。
- 20 世纪 80 年代后,现代操作系统,一个特征时网络出现了,人们不满足于一直玩单机,网络促进了网络操作系统和分布式操作系统的出现。传统的网络操作系统是在现有的操作系统的基础上增加网络功能,而分布式操作系统从一开始就把对多计算机的支持考虑进来。
3、操作系统的历史演变
4、小结
总结:发展的过程,前期一直在提高计算机的利用率,改善效率,后期也会考虑用户的需求,比如友好的交互界面。