操作系统之操作系统引论"/>
操作系统之操作系统引论
操作系统引论
操作系统的目标和作用
操作系统的目标
-
方便性
方便用户操作计算机
-
有效性
提高系统资源的利用率
提高系统的吞吐量
-
可扩充性
方便添加新的功能和模块,以及对原有的功能和模块进行修改
-
开放性
系统遵循世界标准规范,系统之间彼此兼容
操作系统的作用
-
OS作为用户与计算机硬件系统之间的接口
用户通过OS使用计算机硬件系统
-
OS作为计算机系统资源的管理者
对处理机、存储器、I/O设备、文件 四类资源进行有效管理
-
OS实现了对计算机资源的抽象
如果让用户直接操作硬件,往往难以推广,故将I/O设备抽象成数据结构和操作命令,而无需关心具体实现,便于用户操作。
操作系统的发展过程
未配置操作系统的计算机系统
-
人工操作方式
由人工控制数据的输入,其缺点为:用户独占计算机所有资源、CPU等待人工操作,CPU与I/O设备之间速度严重不匹配
-
脱机输入/输出(Off-Line I/O)方式
为解决CPU与I/O设备之间速度不匹配。该方式的做法是首先由一台外围机将纸带上的数据输入到磁带上,当CPU需要这些数据时,再从磁带高速地调入内存。
其优点为:减少了CPU空闲的时间,利用外围机处理一些原本需要CPU处理的工作;提高了I/O操作,减轻了CPU与I/O速度之间的不匹配程度。
单道批处理系统(Simple Batch Processing System)
-
处理过程
一个接一个的处理作业,像流水线一样。
-
缺点:
- 系统资源得不到充分利用,系统的资源被单个作业独占,当该作业进行I/O操作时,CPU空闲,得不到利用
多道批处理系统(Multiprogrammed Batch Processing System)
-
多道程序设计的基本概念
为了提高系统资源的利用率和系统吞吐量,形成了多道批处理系统。
该系统中,将用户提交的作业存放至外存,排成一个队列,称为“后备队列”,接着作业调度程序按一定的算法,从后备队列中选择若干个作业调入内存,使他们共享系统资源,这样在程序A与外部进行交互、CPU空闲时,其他程序就可以使用系统资源,可以使CPU更加忙碌,提高系统资源的利用率。
-
多道批处理系统的优缺点
- 资源利用率高:作业交替运行,CPU保持忙碌
- 系统吞吐量大
- 平均周转时间长:作业排队处理、交错处理,可能使得作业的平均周转时间较长
- 无交互能力:一旦将作业提交,用户不再能和作业进行交互,直到作业完成
-
多道批处理系统需解决的问题
- 处理机争用问题:满足作业运行的需要,且要提高处理机利用率
- 内存分配和保护问题:为每道程序分配必要的内存空间,且不能出现因某道程序出现异常而影响其他程序的情况
- I/O设备分配问题
- 文件的组织和管理问题
- 作业管理问题
- 用户与系统的接口问题
为了解决以上问题,产生了一组软件,用以对以上问题做出合适的处理,这就是我们所说的操作系统。
操作系统(Operating System):
操作系统是一组能有效的组织和管理计算机硬件和软件资源,合理地对各类作业进行调度,以及方便用户使用的程序的集合。
分时系统(Time Sharing System)
-
分时系统的引入
多道批处理系统的出现是为了提高系统资源利用率和吞吐量,而分时系统的出现是为了满足人机交互的需求。
用户的需求有:
- 人-机交互
- 共享主机:用户共享一台主机,且希望每个人都能像独占主机一样进行操作,即可以随时和主机交互,且感受不到其他用户的存在。
分时系统:
分时系统是指,在一台主机上连接了多个配有显示器和键盘的终端并由此所组成的系统。
该系统允许多个用户同时通过自己的终端,以交互方式使用计算机,共享主机中的资源。
-
分时系统实现中的关键问题
-
及时接收
及时接收多个用户键入的命令或数据,可以在系统中配置一个多路卡。
多路卡的作用是,实现分时多路复用,即主机以很快的速度周期性地扫描各个终端,在每个终端停留很短的时间,用于接收从终端来的数据。
为了使终端上输入的数据被依次处理,还需要为每个终端配置一个缓冲区,存储用户键入的数据。
-
及时处理
及时处理用户键入的命令,从而使用户可以对自己的作业及时的进行控制。
为实现人机交互:采用下面的系统运行方式:
- 作业直接进入内存:因作业在磁盘上无法运行
- 采用轮转运行方式:避免一个作业长期独占处理机。系统规定每个作业每次只能运行一个时间片,超过时间片就会调度下一个作业运行,
-
-
分时系统的特征:
- 多路性:多终端共享主机
- 独立性:用户们独立操作自己的终端,彼此间互不影响
- 及时性:用户的请求在很短的时间内可以获得响应
- 交互性:用户可以和系统进行交互
实时系统(Real Time System)
实时系统:
实时系统是指系统能及时相应外部事件的请求,在规定的时间内完成对该事件的处理,并控制所有实时用户协调一致地运行。
即实时系统不仅要求系统可以及时处理用户的请求,还要求要在规定的时间内处理。
- 实时系统的特征
- 多路性
- 独立性
- 及时性
- 交互性
- 可靠性,分时系统要求系统可靠,实时系统要求系统高度可靠
微机操作系统
微机操作系统:
配置在微型机上的操作系统称为微机操作系统。
其分类有:
-
单用户单任务操作系统
只允许一个用户上机,且只允许用户程序仅以一个任务运行
-
单用户多任务操作系统
只允许一个用户上机,但允许用户将程序分为若干个任务,使它们并发执行
-
多用户多任务操作系统
允许多个用户通过各自的终端,使用同一台机器,共享该机器的各种资源。而且每个用户程序可以分为几个任务,使它们可以并发执行。
操作系统的基本特性
并发(Concurrence)
-
并行与并发
- 并行性指两个或多个事件在同一时刻发生
- 并发性指两个或多个事件在统一时间间隔内发生
-
引入进程
为多个程序分别建立一个进程,使之可以并发运行
共享(Sharing)
OS环境下的资源共享或称为资源复用,指系统中的资源可供内存中多个并发执行的进程共同使用。
实现资源共享的方式有两种:
-
互斥共享方式
一段时间内,只允许一个进程访问该资源
-
同时访问方式
允许一段时间内由多个进程“同时”访问该资源
并发和共享是互为存在的条件:
- 资源共享以进程的并发执行为条件,如果系统不允许并发也就不存在资源的共享
- 如果系统对资源 共享蹦年有效的管理,势必会影响各进程并发执行的程度。
虚拟(Virtual)
在OS中,通过“时分复用”或“空分复用”技术将一个物理实体变为若干个逻辑上的对应物的功能称为“虚拟”
-
时分复用技术
利用CPU的空闲时间运行其他程序,提高处理机的利用率
-
空分复用技术
利用存储器的空闲空间分区存放和运行其他的多道程序,提高内存的利用率
异步(Asynchronism)
异步性:
进程是以人们不可预知的速度向前推进的。
但不管如何执行(正常情况下),进程的运行结果是不变的。
操作系统的主要功能
处理机管理功能
- 进程控制
- 进程同步
- 进程通信
- 调度
存储器管理功能
- 内存分配
- 内存保护
- 地址映射
- 内存扩充
设备管理功能
- 缓冲管理
- 设备分配
- 设备处理
文件管理功能
- 文件存储空间的管理
- 目录管理
- 文件的读/写管理和保护
OS结构设计
传统操作系统结构
-
无结构操作系统结构
一组程序的集合
-
模块化结构OS
将OS按其功能划分为若干个具有一定独立性和大小的模块
-
分层式结构OS
-
在目标系统An和裸机系统A0之间,铺设若干个层次的软件A1、A2、…、An-1,使An通过An-1、An-2、…、A1,最终能在A0上运行。
分层设计的基本原则使:每一层都建立在可靠的基础上。为此规定,每一层仅能使用其底层提供的功能和服务。
-
优点:
- 保证系统的正确性
- 易扩充和易维护性
-
缺点:
系统效率低 ,各层间的通信
-
微内核OS结构
将操作系统中最基本的部分放入内核中,而将操作系统搞得绝大部分功能都放在微内核外面的一组服务器(进程中实现)。
更多推荐
操作系统之操作系统引论
发布评论