常熟理工学院操作系统期末复习Word格式文档下载.docx
《常熟理工学院操作系统期末复习Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《常熟理工学院操作系统期末复习Word格式文档下载.docx(22页珍藏版)》请在冰点文库上搜索。
所谓死锁是指多个进程在运行过程中因争夺资源而造成的一种僵局,当进程处于这种僵局的时候,若没有外力的干预,它们都将无法再向前推进。
根本原因:
一是系统提供的资源有限,不能满足每个进程的需要;
二是多道程序运行时,进程推进顺序不合理
解决死锁的基本方法有三种(注意填空):
死锁的预防,死锁的避免,死锁的检测与恢复
死锁的预防主要是打破造成死锁的4个必要条件之一:
(1)破坏“互斥”条件。
(该条无法做到)
(2)破坏“占用并等待”条件
(3)破坏“不可剥夺”条件
(4)破坏“循环等待”条件
死锁的避免是指通过某种算法,当系统分配资源时始终能做出是否分配的正确选择,从而避免死锁。
目前运用的避免死锁的算法是E.W.Dijkstra提出的银行家算法
7.为什么要使用联想寄存器(快表)?
联想寄存器里存放的内容是什么?
为了提高地址变换速度
用来存放当前作业的最常用的页号和与之相应的物理块号
8.什么是虚拟技术?
虚拟技术需要什么物质基础?
操作系统中的所谓“虚拟”,是指通过某种技术把一个物理实体变为若干个逻辑上的对应物。
物理实体(前者)是实的,即实际存在的;
而后者是虚的,是用户感觉上的东西。
相应地,用于实现虚拟的技术,称为虚拟技术。
在程序装入时可将一部分程序装入内存,其余仍在外存。
程序在执行过程中根据需要再调入需要的部分。
若内存空间不够,可将一部分暂时不用的数据调入外存。
这样好像为用户提供了比实际内存大的多的存储器,这样的存储器叫“虚拟存储器”
虚拟存储器的实现需要三方面的物质支持:
1、有一定容量的内存。
因为必须有一定的信息存放在内存上程序才能运行;
2、有相当的容量的外存,以补充内存不足;
3、有地址变换机构,以动态实现虚地址到实地址的变换。
常用的虚拟存储器技术有:
请求分页存储管理,请求分段存储管理,请求段页式存储管理。
9.在设备管理中为什么要引入缓冲区?
常见的缓冲技术有哪几种?
现在最常用的是哪种?
主要原因:
1、缓和CPU与I/O设备间速度不匹配的矛盾
2、减少对CPU的中断频率
3、提高CPU和I/O设备之间的并行性
常用的缓冲技术:
单缓冲、双缓冲、循环缓冲和缓冲池
常用的是缓冲池
10.什么是SPOOLING系统?
SPOOLING系统由哪几部份构成?
举一个利用SPOOLING技术的例子。
SPOOLING系统:
操作系统中在联机情况下实现的同时外围操作功能(假脱机操作)
SPOOLing系统主要由以下三部分组成:
(1)输入井和输出井。
(2)输入缓冲区和输出缓冲区
(3)输入进程SPi和输出进程SPo。
共享打印机
11.以打印机为例,说明SPOOLING的工作原理
当用户进程请求打印输出时,SPOOLing系统统一为其打印,但并不真正立即把打印机分配给用户进程,而只为它做两件事:
①由输出进程在输出井中为之申请一个空闲磁盘块,并将要打印的数据存放其中;
②输出进程再为用户进程申请一张空白的用户请求打印表,将用户的打印要求填入其中,再将该表挂到请求打印队列上。
如果还有进程要求打印输出,系统仍可接受其请求,也同样为该进程做上述的两件事。
如果打印机空闲,输出进程将从请求队列的队首取出一张请求打印表;
根据表中的要求将要打印的数据,从输出井传送到内存输出缓冲区;
再由打印机进行打印。
打印完后,输出进程再查看请求队列中是否还有打印请求表。
若有,又取出队列的第一张表,按要求打印,直至打印请求队列为空,输出进程才将自己阻塞起来。
仅当下次再有打印请求的时候,输出进程才被唤醒。
12.有哪几种常见的输入输出控制机制?
简述其工作原理。
(格外注意),书169--170
程序(直接控制)I/O方式
中断控制I/O方式
DMA控制方式
通道控制方式
操作题(共有6种类型的题,20分上下))
(1).作业调度:
分别用先来先服务、最短作业优先、响应比高者优先算法调度,计算作业的平均周转时间和平均带权周转时间。
注:
在时间运算上,可用10进程,也可用60进制参与运算。
(2).信号量机制和P、V(Wait、Signal)操作。
理解P、V操作的定义,理解信号量值的含义。
能够在具体的应用里,根据题意,建立信号量,并用伪代码(类C或类PASCAL)来表达进程之间的同步与互斥。
(3).银行家算法:
(一种典型的死锁避免策略)
这是一种避免死锁的策略。
要会根据当前资源情况和进程需求情况,判断当前状态是否安全;
若当前状态安全,再有进程申请新的资源,可否给它?
(4)逻辑地址到内存地址的转换:
给定一个逻辑地址(段号,段内地址)和段表,要求给出物理地址;
给定一个逻辑地址(逻辑地址)、页面尺寸、页表,要求换算出物理地址;
(5)页面淘汰算法:
给定一个页面访问序列,会用以下几种算法分别计算页面的缺页中断数和缺页中断率:
最佳淘汰算法(OPT)、
先进先出淘汰算法(FIFO)、
最近最久未使用淘汰算法(LRU)
(6)磁盘调度算法:
给定一个磁盘访问序列,会分别用以下几种磁盘调度算法计算寻道总长度和平均寻道长度:
先来先服务(FCFS)、最短寻道时间优先(SSTF)
扫描算法(SCAN)——又叫电梯算法、循环扫描(CSCAN)
章节复习要点:
第一章
1.什么是操作系统?
操作系统的目标和作用是什么?
操作系统是为改善计算机系统的性能、提高计算机的利用率、方便用户使用计算机而配备的一种最基本的低层系统软件,是计算机系统的核心。
目标:
1.方便性2.有效性3.可扩充性4.开放性
作用:
1.OS作为用户与计算机硬件之间的接口
2.OS作为计算机系统资源的管理者
3.OS用作扩充机器
2.操作系统给用户提供哪几种接口来操纵和使用计算机?
体会这些接口的含义。
操作系统提供给用户的接口有两大类:
脱机用户接口和联机用户接口
脱机用户接口主要是为批处理系统中的脱机用户准备的。
用户在提交作业时,不仅要提交源程序和初始数据,还要将反映控制意图的说明书“作业控制说明书”一并交给计算机系统。
联机用户接口:
又可分为命令接口、程序接口(又叫系统调用)和图形用户接口。
3.OS作为计算机系统资源的管理者,主要管理哪几方面的资源?
(1)处理机管理
(2)存储器管理(3)I/O设备管理(4)文件管理
4.在操作系统中什么叫并发?
并发是真正的并行处理吗?
至少有几个CPU的情况下才可能实现真正的并行处理?
什么叫共享,什么叫虚拟?
什么叫异步?
并发性是指两个或多个事件在同一时间间隔内发生。
不是
两个
所谓共享是指系统中的资源可供内存中多个并发执行的进程(线程)共同使用。
进程是以人们不可预知的速度向前推进,此即进程的异步性。
5.基本的操作系统有哪几种?
它们各有什么特点?
多道批处理系统、分时系统、实时系统是三种基本的操作系统
多道批处理系统:
资源利用率高。
系统吞吐量大。
平均周转时间长。
无交互能力
分时系统:
采用时间片轮转多路性。
独立性。
及时性。
交互性。
实时系统:
多路性。
及时性。
可靠性。
实时系统的实时性和可靠性要求最高,分时系统的交互性最强,多道批处理系统的交互性最弱
第二章:
进程描述与控制
1.什么是进程?
为什么要引入进程?
在单道程序环境中有无必要引入进程?
进程由哪几个部分构成?
系统是通过什么来感知进程的存在的?
为了使程序能并发进行,且为了对并发执行的程序加以描述和控制
没必要
进程由程序段,相关数据段和PCB构成
系统通过PCB感知进程的存在的
2.进程有哪几种基本的状态?
这些状态都在哪些典型情况下会发生哪种变迁?
挂起有几种状态?
挂起的进程能获得处理机吗?
阻塞挂起状态和就绪挂起状态
不能
3.什么是线程?
操作系统根据什么来感知线程的存在?
线程有哪几种不同的实现方式?
TCB
实现方式:
内核级线程,用户级线程,组合方式
4.比较进程和程序有什么异同和联系。
5.为什么要引进线程的概念?
比较线程和进程之间有什么异同和联系。
进程和线程的区别与联系:
调度:
进程是资源拥有的基本单位,线程是分派和调度资源的基本单位
拥有资源:
进程拥有资源,线程不拥有资源
并发性:
进程和线程都拥有并发性
系统开销:
进程的系统开销远大于线程的系统开销
第三章并发控制——进程的同步与互斥
1.什么叫进程同步?
什么叫进程互斥?
通过前趋图进一步感受进程的同步。
所谓进程同步,是指多个相互合作的进程,在一些关键点上可能需要互相等待或互相交换信息,这种相互制约的关系称为进程同步。
所谓进程互斥是指当有若干进程都要使用某一共享资源时,最多允许一个进程使用,而其他要使用该资源的进程必须等待,直到占用该资源的进程释放了该资源为止。
2.什么叫临界资源?
什么叫临界区?
3.什么叫信号量?
它是一种解决什么问题的机制?
信号量的值可以人为设定几次?
它的值是由哪些操作改变的?
信号量是一个确定的两元组(S,Q),其中S是一个具有非负初值的整型变量,Q是一个初始状态为空的队列
信号量是一种有效的用来解决进程同步与互斥问题的机制
一次
信号量的值仅能由P操作(又叫Wait操作)和V操作(又称Signal操作)来改变。
4.体会、理解信号量以及P、V(Wait、Signal)操作的意义。
P操作:
P操作记为P(S),其中S为一个信号量,它执行时主要完成下述动作:
S=S-1;
若S>
=0则进程继续运行;
否则(即S<
0)阻塞该进程,并将它插入该信号量的等待队列中。
V操作:
V操作记为V(S),S为一个信号量,它执行时主要完成下述动作:
S=S+1;
若S大于0则进程继续执行;
=0)则从信号量等待队列中移出第一个进程,使其变为就绪状态并插入就绪队列,然后再返回原进程继续执行。
5.为什么要引入管程?
管程由哪几个部分组成?
信号量机制对于每个要访问临界资源的进程都必须自备同步操作P(S)和V(S)。
这使得大量的同步操作分散在各个进程中。
这不仅给系统管理带来麻烦,而且还会因为同步操作的使用不当造成系统死锁。
于是在解决上述问题的基础上,产生了一种新的同步工具——管程
管程是一种软件模块,包括一个或多个过程、初始化语句和局部数据。
6.什么是进程的低级通信、高级通信?
高级通信机制分为哪几大类?
进程之间的互斥与同步也是一种通信,由于其所交换的信息量少而被叫做“低级通信”。
高级进程通信,是指用户可直接利用操作系统所提供的一组通信命令,高效地传送大量数据的一种通信方式。
三大类:
共享存储器系统;
消息传递系统;
管道通信系统
第四章处理机调度与死锁
1.简述三级调度的概念。
是否任何操作系统都必须配置作业调度?
哪一级调度是所有操作系统必备的?
高级调度又称作业调度或长程调度,它的功能是按照某种原则从后备作业队列中选取若干作业进入主存
中级调度又称平衡负载调度或中程调度。
引入中级调度的主要目的,是为了提高内存利用率和系统吞吐量。
低级调度也叫进程调度或短程调度,用来决定就绪队列中的哪个进程应获得处理机,然后再由分派程序执行具体的操作,把处理机分配给具体的进程。
不是任何操作系统都必须配置作业调度
低级调度是所有操作系统必备的
2.常见的作业调度算法有哪些?
常见的进程调度有哪些?
哪些调度是可剥夺的,哪些是不可剥夺的?
1.先来先服务调度算法(FCFS);
2.短作业优先调度算法(SJF);
3.响应比高者优先(HRF)调度算法
常见的进程调度有:
先来先服务、最高优先权优先、时间片轮转、多级反馈队列调度算法
先来先服务一定是非剥夺调度算法,时间片轮转、多级反馈队列调度算法一定是可剥夺调度算法
3.给定一个作业序列,按先来先服务、短作业优先、响应比高者优先算法调度,分别计算该作业序列的平均周转时间和平均带权周转时间
周转时间:
作业从提交到完成所经历的时间
作业i的周转时间为:
Ti=Tei-Tsi
其中,Tei为作业i的完成时间,Tsi为提交时间
平均周转时间:
多个作业周转时间的平均值
T=(T1+T2+……+Tn)/n
平均周转时间越短,作业吞吐率越大,系统效率越高
带权周转时间:
作业周转时间与作业实际运行时间的比。
作业i的带权周转时间为:
Wi=Ti/Tri
其中Ti为作业i的周转时间,Tri为作业i的实际运行时间
平均带权周转时间:
多个作业带权周转时间的平均值
W=(W1+W2+……+Wn)/n
响应比Rp=1+等待时间/估计运行时间
4.什么是死锁?
死锁产生的根本原因是什么?
至少有几个进程并发才可能发生死锁?
至少两个进程并发才可能发生死锁
5.总的来说,解决死锁问题有哪几个方面的策略?
6.预防死锁可从哪几个方面着手?
常见的措施有哪些?
(2)破坏“占用并等待”条件(可以采用静态分配策略。
)
(3)破坏“不可剥夺”条件(方法:
进程需要的资源不是一次性分配给它,而是在运行的过程中,它需要的时候才进行分配。
(4)破坏“循环等待”条件(可采用按序分配资源策略)
7.银行家算法是解决死锁问题的一种什么策略?
什么样的状态为安全状态?
什么样的为不安全状态?
会根据具体问题用银行家算法判断系统是否安全。
避免死锁的算法
若在某一时刻,系统能按某种顺序如<
P1,P2,…,Pn>
来为每个进程分配所需的资源,直至最大需求,使得每个进程都能顺利完成,则称此时的系统状态为安全状态,称<
P1,P2,…Pn>
为安全序列。
若某一时刻系统中不存在这样一个安全序列,则称此时的系统状态为不安全状态
8.什么是死锁定理?
死锁定理有什么用?
系统为死锁状态的充分条件是:
当且仅当该系统状态的资源分配图是不可完全简化的。
该充分条件被称为死锁定理。
检测系统是否已进入死锁状态
第五章存储器管理
1.内存管理的任务是什么?
操作系统的内存管理应具备哪些功能?
存储管理的目的主要有两个:
一是提高资源的利用率,尽量满足多个用户对主存的要求;
二是能方便用户使用主存储器,使用户不必考虑作业存放在哪块区域,如何实现正确运行等问题。
存储管理一般应能完成如下功能:
(1)按作业要求进行内存的分配并进行实时回收;
(2)实现程序中的逻辑地址到物理地址的重定位;
(3)对操作系统及其用户的信息提供存储保护;
(4)实现主存的逻辑扩充,提供给用户更大的存储空间
2.什么是重定位?
什么是静态重定位和动态重定位?
它们重定位的时机都在什么时候?
为使程序能正确运行,必须将逻辑地址空间中的逻辑地址转换为内存空间中的物理地址,这一过程称为地址重定位或地址映射
静态地址重定位是在程序执行之前由操作系统的重定位装入程序完成的。
它根据要装入的内存起始地址,直接修改所有涉及到的逻辑地址,一次性完成逻辑地址到物理地址的装换,在程序运行中,不再进行任何地址转换。
动态地址重定位也称动态地址映射,是指把目标程序装入内存的时候,并不立即把逻辑地址转换为物理地址,而是在程序运行过程中,当CPU访问程序和数据的时候,才进行地址转换。
静态地址重定位是在作业装入时,动态地址重定位是在作业调度时
3.体会几种内存管理的实现方法,引入的原因、组织空闲区的方式、回收的规定:
(1)实存:
单一连续分区、固定分区、可变式分区、分页、分段、段页式
(2)虚存:
请求式分页、请求式分段、请求段页式
第四章121--155
4.上面哪些内存管理有内碎片、哪些有外碎片?
解决碎片有哪些方法?
可变式分区,分段产生外碎片。
固定分区,分页,段页式产生内碎片
5.什么是页表?
什么是段表?
其主要内容是什么?
引入联想寄存器有什么用处?
通常可在内存中为每个作业开辟一块特定区域,建立起作业的逻辑页与存储块之间的对应表格关系,这种表称为页面映像表,简称页表
为使程序能正常运行,亦即,能从物理内存中找出每个逻辑段所对应的位置,应象分页系统那样,在系统中为每个进程建立一张段映射表,简称“段表”
引入联想寄存器是为了提高地址变换速度
第六章设备管理
1.设备的几种分类方式:
输入输出设备和存储设备、高速设备和低速设备、字符设备和块设备。
。
2.分配设备需要的4个数据结构(表):
系统设备表、设备控制表、控制器控制表、通道控制表
4.描述并体会几种常见的输入输出控制方式:
程序直接控制、中断控制、DMA控制、通道控制
5.为什么要开辟缓冲区?
常见的缓冲区有哪几种?
目前最常用的是哪种?
6.设备分配的过程。
尤其注意设备的使用性质和设备的独立性、设备的安全性各指的是什么?
设备的独立性:
设备无关性,指应用程序独立于物理设备
设备分配时的安全性:
该分配是否可能死锁
7.什么是SPOOLING系统?
它由哪几部分构成?
操作系统中在联机情况下实现的同时外围操作功能
第七章文件管理
1.按照文件的几种分类方法体会文件
按用途分类:
(1)系统文件。
是由系统软件构成的文件,对用户不直接开放,只允许用户调用
(2)用户文件。
用户委托系统保存的文件。
如源代码、目标程序等。
(3)库文件。
由标准子程序和常用的应用程序组成的文件。
只允许调用,不许用户修改。
按文件中的数据形式分类:
(1)源文件。
它是由原程序和数据构成的文件。
从终端输入或输出,一般由ASCII代码或汉字组成。
(2)目标文件。
是由相应的编译程序编译而成的文件,由二进制码组成,扩展名为.obj。
(3)可执行文件。
是由目标程序链接成的文件。
文件的扩展名一般为.exe。
按操作保护分类
(1)只读文件。
仅允许对其进行读的文件。
(2)读写文件。
允许用户对其进行读或写操作的文件。
(3)执行文件。
允许用户调用执行,但不允许读,也不允许写的操作。
(4)什么也不许做的文件。
按文件的性质分类
有些系统,如UNIX系统把文件分为三类:
(1)普通文件。
一般的系统文件及用户文件。
(2)目录文件。
由文件目录组成的文件。
(3)特殊文件。
将设备看作特殊文件。
2.文件的逻辑结构(2种)、
文件的逻辑结构分为以下两类:
1.有结构的文件;
2.无结构文件
3.文件的物理结构(3种),各适合于哪种存取方式?
一般来说,文件的物理结构有以下三种:
连续结构、链接结构、索引结构。
连续文件可采用顺序存取,也可以随机存取,
物理结构为顺序结构的文件,若存放在顺序存储介质(如磁带)上,则适宜于顺序存取;
若存放于随机存储介质(如磁盘、磁鼓)上,则文件可顺序存取,也可以随机存取。
隐式链接文件结构只能按队列中的链接指针顺序搜索,因此搜索效率低
链接结构的存取的方法只能顺序存取,不能随机存取
当文件的物理结构为索引结构时,即可顺序存取,也可随机存取。
4.文件的存储介质(磁带、磁盘、磁鼓),各适合于哪种存取方式?
磁带是一种顺序存取设备,对磁带上的用户文件信息只能顺序访问。
故磁带文件的物理结构也只能是将文件连续地存放在磁带上,也即,磁带文件的物理结构只有一种——顺序结构。
根据磁盘设备的物理特性,文件的物理结构可采用顺序结构、链接结构和索引结构。
对磁盘上的文件,既可以顺序存取,也可以随机(直接)存取。
5.磁盘调度算法(FCFS、SSTF、SCAN、CSCAN)
例.(重要)
假定有一个具有200个磁道(0-199磁道)的移动头磁盘,在完成了125磁道的请求后,当前正在磁道143处为一个请求服务。
若请求队列请求的读写磁道为:
86,147,91,177,94,150,102,175,130,对于下列每种磁盘调度算法,总的磁头移动次数(总寻道长度)、平均寻道长度各是多少?
次序
FCFS
SSTF
(最短寻道优先)
SCAN(电梯算法)
CSCAN(循环扫描)
1
143
2
86
147