整体框架
1、手工操作阶段
1.1、主要缺点
用户独占全机、人机速度矛盾导致资源利用率极低
-
一个用户把自己的程序放入纸带机,等待计算机执行完后,用户再取走自己的数据。
这时候,下一个用户才可以继续接着使用该计算机系统
在一个时间段内只允许一个用户使用,速度相差极大
2、批处理阶段
2.1、单道批处理系统
引入 脱机输入 / 输出技术 \color{red}脱机输入/输出技术 脱机输入/输出技术(用磁带完成),
-
并 监督程序 \color{red}监督程序 监督程序负责控制作业的输入、输出
操作系统的雏形
例如:程序员提前将自己的程序放入纸带机上,通过外围机将纸带数据读到磁带(输入/输出设备)
-
计算机直接从磁带(更高速的输入/输出设备上)把各程序依次读到计算机的内存中进行处理,
处理完之后再依次输出到设备当中…
2.1.1、主要优点&缺点
主要优点:缓解了一定程度的人机速度矛盾,资源利用率有所提升
主要缺点: 内存中仅能有一道程序运行 \color{red}内存中仅能有一道程序运行 内存中仅能有一道程序运行,
- 只有该程序运行结束之后才能调入下一道程序。
- CPU 有大量的时间是在空闲等待 I/O 完成 \color{red}\texttt{CPU}有大量的时间是在空闲等待 \texttt{I/O} 完成 CPU有大量的时间是在空闲等待I/O完成(例如:每一次对磁带进行输入/输出数据)。
- 资源利用率依然很低。
2.2、多道批处理系统
2.2.1、主要优点&缺点
主要优点:多道程序 并发 \color{red}并发 并发执行, 共享 \color{red}共享 共享计算机资源。
- 资源利用率大幅提升 \color{red}资源利用率大幅提升 资源利用率大幅提升,CPU 和其他资源保持 “忙碌” 状态,系统吞叶量增大。
主要缺点:用户响应时间长, 没有人机交互功能 \color{red}没有人机交互功能 没有人机交互功能
- 用户提交自己的作业之后就只能等待计算机处理完成,中间不能控制自己的作业执行
问题:为何多道批处理系统能使资源利用率大幅提升?
假设计算机需要处理三个作业
作业一:输入1 秒,计算 1 秒,输出 1 秒
作业二:输入1 秒,计算 1 秒,输出 1 秒
作业三:输入1 秒,计算 1 秒,输出 1 秒
计算进程在计算的时候,输入进程可以开始输入数据,输出进程可以开始输出数据
例如:计算机组成原理中的流水线技术,计算机网络中的分组交换
3、分时操作系统
分时操作系统:计算机以 时间片 \color{red}时间片 时间片为单位 轮流为各个用户 / 作业服务 \color{red}轮流为各个用户/作业服务 轮流为各个用户/作业服务,各个用户可通过终端与计算机进行交互。
例如:Linux 操作系统可以明显的体现出多个用户可以通过终端与计算机进行交互。
- 典型的分时操作系统
3.1、主要优点&缺点
主要优点:用户请求可以被即时响应, 解决了人机交互问题 \color{red}解决了人机交互问题 解决了人机交互问题。
- 允许多个用户同时使用一台计算机,并且用户对计算机的操作相互独立,感受不到别人的存在。
主要缺点: 不能优先处理一些紧急任务 \color{red}不能优先处理一些紧急任务 不能优先处理一些紧急任务。
- 操作系统对各个用户/作业都是完全公平的,循环地为每个用户作业服务一个时间片,不区分任务的紧急性。
4、实时操作系统(硬实时/软实时)
4.1、主要优点
主要优点:能够优先响应一些紧急任务,某些紧急任务不需时间片排队。
在实时操作系统的控制下,计算机系统接收到外部信号后及时进行处理,
- 并且 要在严格的时限内处理完事件 \color{red}要在严格的时限内处理完事件 要在严格的时限内处理完事件。
- 实时操作系统的主要特点是 及时性 \color{red}及时性 及时性和 可靠性 \color{red}可靠性 可靠性
5、其他几种操作系统
网络操作系统:是伴随着计算机网络的发展而诞生的,能把网络中各个计算机有机地结合起来,
-
实现数据传送等功能,
-
实现网络中各种资源的共享 ( 如文件共享 ) 和各台计算机之间的通信。 \color{red}实现网络中各种资源的共享(如文件共享)和各台计算机之间的通信。 实现网络中各种资源的共享(如文件共享)和各台计算机之间的通信。
(如: Windows NT就是一种典型的网络操作系统,网站服务器就可以使用)
分布式操作系统:主要特点是 分布性和并行性 \color{red}分布性和并行性 分布性和并行性。
- 系统中的各台计算机地位相同,
- 任何工作都可以分布在这些计算机上,由它们并行、协同完成这个任务 \color{red}任何工作都可以分布在这些计算机上,由它们并行、协同完成这个任务 任何工作都可以分布在这些计算机上,由它们并行、协同完成这个任务。
个人计算机操作系统:如 Windows XP、MacOS,方便个人使用。