操作系统 (Operating System)
1.1 操作系统目标和作用
目标:
方便性、有效性、可扩充性、开放性
作用:
- 作为用户与计算机硬件系统之间的接口。
- 作为计算机系统资源的管理者。
- 实现了对计算机资源的抽象
1.2 操作系统的发展过程
未配置操作系统的计算机系统
1.人工操作方式
特点:
-
用户独占全机,计算机的所有资源被上机用户独占。
-
CPU等待人工操作。
缺点:产生人机矛盾,严重降低了计算机资源的利用率。
2.脱机输入/输出方式(Off-Line I/O)
特点:
事先将装有用户程序和数据的纸带装入纸带输入机,在外围机的控制下,把纸带上的数据输入到磁带上。当CPU需要这些数据和程序时,再从磁带上高速的调入内存。
优点:减少了CPU的空闲时间,提高了I/O速度。
单道批处理系统
目标:实现对作业的连续处理
(一定程度上解决人机矛盾,CPU与I/O设备速度不匹配问题)。
方式:先把一批作业以脱机方式输出到磁带上,然后由监督程序将磁带上的第一个作业装入内存,并把运行控制权交给作业,当该作业处理完成后,再把运行控制权交给监督程序,监督程序在把第二个作业调入内存…以此类推,直至磁带上作业全都完成。
特点:内存中始终保持一道作业,故称为单道批处理系统。
(自动性,顺序性,单道性)
优点:一定程度上解决人机矛盾。缓解CPU与I/O设备速度不匹配问题。
缺点:由于在内存中只有一道程序,系统资源利用率很低。
多道批处理系统
目标:提高计算机资源利用率和系统吞吐量。
(OS/360是第一个能运行多道程序的操作系统。)
方式:用户提交的作业先放外存,并排成一个 后备队列,然后由作业调度程序按一定算法,从后备队列选若干作业调入内存,使它们共享CPU和系统资源,由于在内存中同时有多道程序,则系统可在执行某程序时遇到I/O等操作而暂停使用CPU的空档时间,让CPU去执行另外的程序,即多道程序交替运行,始终让CPU处于忙碌状态。(宏观上同时运行,微观上交替运行)
特点:多道性,无序性,调度性。
优点:资源利用率高,系统吞吐量大。
缺点:平均周转时间长(作业要排队),
无交互能力(用户一旦把作业提交给系统,必须等作业全部执行完后,才能与自己的作业交互!)。
多道批处理系统需解决的问题:
- 处理机争用问题
- 内存分配和保护问题
- I/O设备分配问题
- 文件的组织和管理问题
- 作业管理问题
- 用户与系统的接口问题
基于此,给出操作系统定义:
操作系统是一组
能有效的组织和管理计算机硬件和软件资源,
合理的对各类作业进行调度,
以及方便用户使用的程序的集合。
分时系统
指在一台主机上连接多个配有显示器和键盘的终端,由此组成的系统。计算机以时间片为单位轮流为各个用户/作业服务,该系统允许多个用户同时使用自己的终端,以交互方式使用计算机,共享主机中的资源。
目标:实现人机交互,实现共享主机。(UNIX)
分时系统的关键问题:
- 及时接收(多路卡)
- 及时处理(作业直接进内存、采用轮转运行方式(时间片))
分时系统特征:
- 多路性(多个用户共享一台主机)
- 独立性(每个终端互不干扰)
- 及时性(用户请求在很短时间得到响应)
- 交互性(人机交互)
主要优点:
用户请求可以被即时响应,解决了人机交互问题。允许多个用户同时使用一台计算机,并且用户对计算机的操作相互独立,感受不到别人的存在。
主要缺点:
不能优先处理一些紧急任务。操作系统对各个用户/作业都是完全公平的,循环地为每个用户/作业服务一个时间片,不区分任务的紧急性。
实时系统
指系统能及时响应外部事件的请求,在规定时间内完成对事件的处理,并控制所有实时任务协调一致地运行。
优点:能优先处理紧急任务。
常见的实时系统类型:
- 工业(武器)控制系统
- 信息查询系统
- 多媒体系统
- 嵌入式系统
实时任务类型:
- 周期性实时任务
- 非周期性实时任务(开始截止时间、完成截止时间)
- 硬实时任务(HRT,系统必须满足对截止时间的要求,否则会出现难以预测的后果)
- 软实时任务(SRT,偶尔错过任务的截止时间,对系统产生的影响不大)
开始截止时间:指某任务在某时间以前必须开始执行。
完成截止时间:指某任务在某时间以前必须完成。
实时系统特征:
- 多路性(系统周期性对多路现场信息进行采集)
- 独立性(每个终端互不干扰)
- 及时性(以截止时间来确定)
- 交互性(访问系统某些特定程序)
- 可靠性(分时系统要求系统可靠,实时系统要求高度可靠)
微机操作系统的发展
1.单用户单任务操作系统
只允许一个用户上机,只允许一个用户程序作为一个任务运行。
(CP/M,MS-DOS)
2.单用户多任务操作系统
只允许一个用户上机,但允许用户把程序分为若干个任务,使它们并发执行,从而有效的改善系统性能。(windows)
3.多用户多任务操作系统
允许多个用户通过各自的终端,使用同一台机器,共享主机系统中的各种资源,每个用户程序又可进一步分为几个任务,使它们并发执行,从而提高资源利用率和系统吞吐量。
(Unix OS, Solaris OS, Linux OS)
1.3 操作系统的基本特征
1.并发(Concurrence)
并发性:指两个或多个事件在同一时间间隔内发生。
并行性:指两个或多个事件在同一时刻发生。
进程可以并发执行,所谓进程指在系统中能独立运行,并作为资源分配的基本单位,它由一组机器指令,数据和堆栈等组成,是一个独立运行的活动实体。
2.共享 (Sharing)
系统资源可供多个并发执行的程序程序共同使用。
共享资源的使用 既限定了时间(进程在内存期间),又限定了空间(内存中)。
实现资源共享的方式:
1.互斥共享方式
打印机,磁带机等临界资源。
临界资源:指一段时间内只允许一个进程访问的资源。
2.同时访问方式
例如磁盘设备,和一些用重入码编写的文件。
3.虚拟(Virtual)
时分复用技术
空分复用技术
4.异步(Asynchronism)
进程以不可预知的速度向前推进,并不是“一气呵成的”,而是“停停走走”的方式运行。
并发和共享是多用户多任务OS两个最基本特征。
1.4操作系统的主要功能
- 处理机管理:用于分配和控制处理机。
- 存储器管理:负责对内存的分配与回收。
- I/O设备管理:负责I/O设备的分配与操纵。
- 文件管理:实现对文件的存取、共享、保护。
- 向用户提供方便的用户接口。
操作系统结构设计
- 无结构OS
- 模块化结构OS
- 分层式结构OS
- 微内核结构OS
微内核结构主要思想:在操作系统内核中仅保留最基本的功能,而其他功能尽可能的从内核中分离出去,由若干服务器进程实现,形成所谓C/S模式。普通用户进程通过内核向服务器进程发送请求,以取得操作系统服务。
微内核结构是建立在模块化,层次化结构之上的,并采用了面向对象的程序设计技术。
优点:提高了系统可扩展性,增强系统可靠性,可移植性,以及对分布式系统的支持。
习题:
1.如果操作系统具有很强的交互性,可同时供多个用户使用,但时间响应不太及时,则属于( 分时 )类型;
如果操作系统可靠,时间响应及时但仅有简单的交互能力则属于( 实时 )类型。
2.操作系统的基本功能包括( 处理机 )管理、存储器管理、设备管理、文件管理。除此之外还为用户使用操作系统提供了用户接口。
3.操作系统的发展经历了五个阶段:未配置操作系统、单道批处理、( 多道批处理系统 )、分时系统、实时系统。
4.UNIX操作系统是著名的( A )系统。
A. 分时
B. 多道批处理
C. 实时
D. 分布式
所学课本:
计算机操作系统 第四版(汤小丹等)西安电子科技大学出版社
王道操作系统复习指导(王道论坛)电子工业出版社