操作系统作业参考答案及其知识点

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
10、什么是临界区和临界资源?对临界区管理的基本原则是什么?
答:临界区:并发进程中与共享变量有关的程序段。
临界资源:在临界区中共享变量代表的资源。
一次至多允许一个进程进入临界区内
一个进程不能无限地停留在临界区内
一个进程不能无限地等待进入临界区
14、什么是信号量?如何对它们进行分类?
答:信号量,一个进程在某一特殊点上被迫停止执行直到接收到一个对应的特殊变量值,这种特殊变量。
3、中断的概念、过程
4、进程的定义和属性、三种基本状态及其转化事件
5、进程包含的三大类基本信息、进程的创建、阻塞、唤醒、撤销、挂起、激活的基本过程
6、处理器调度的分类及其常见的调度算法(HRRF算法)
7、平均周转时间的计算
8、周转时间、响应时间、等待时间、执行时间的概念
9、作业的四种状态
第三章
思考题:
mutex:semaphor;
empty:semaphor;
empty=100;mutex=1;
信号量和P/V操作的实现过程
Process Pi //每个读者的进程
Begin
p(empty);
p(mutex);
进入登记
v(mutex);
进入阅览室阅读;
p(mutex);
退出登记
v(mutex);
离开阅览室
28、进程最基本的状态有哪些?哪些事件可能引起不同状态之间的转换?
答:进程有三个最基本的状态:运行态(running)、就绪态(ready)、等待态(blocked)。
35、何谓进程控制块?它包含哪些基本信息?
答:进程控制块PCB,是操作系统用于记录和刻画进程状态及有关信息的数据结构。也是操作系统掌握进程的唯一资料结构,它包括了进程执行时的情况,以及进程让出处理器后所处的状态、断点等信息。
•现场信息包括通用寄存器内容、控制寄存器内容、用户堆栈指针、系统堆栈指针等。
(3)控制信息
•进程调度相关信息
•进程组成信息
•进程间通信相关信息
•进程在二级存储器内的地址信息
•CPU资源的占用和使用信息
•进程特权信息
•资源清单,包括进程所需全部资源、已经分得资源等
40、什么叫模式切换?它与进程切换有何主要区别?
响应时间:互式进程从提交一个请求(命令)到接收到响应之间的时间间隔。
吞吐率:单位时间内处理的作业数。
89、叙述典型的实时调度算法。
答:
1)单比率调度算法
基本思想:为每个进程分配一个与事件发生频率成正比的优先数。例如,周期为20ms的进程优先数为50,周期为100ms的进程优先数为10,运行时调度程序总是调度优先数最高的就绪进程,并采取抢占式分配策略。
4)动态调度算法
基本思想:由操作系统和应用进程共同完成调度。
应用题:
15、单道批处理系统中,下列三个作业采用FIFO调度算法和最高响应比优先算法进行调度,哪一பைடு நூலகம்算法性能好?请完成下表:
FIFO调度算法
作业
提交时间
运行时间
开始时间
完成时间
周转时间
带权周转时间
1
10:00
2:00
10:00
12:00
2:00
答:CPU的利用率=1-Pn,其中P为程序等待I/O操作的时间占其运行时间的比例
1MB内存时,系统中存放4道程序,CPU的利用率=1-(0.8)4=59%
2MB内存时,系统中存放9道程序,CPU的利用率=1-(0.8)9=87%
所以系统CPU的利用率提高了28%
2、一个计算机系统,有一台输入机和一台打印机,现有两道程序投入运行,且程序A先开始做,程序B后开始运行。程序A的运行轨迹为:计算50ms,打印100ms,再计算50ms,打印100ms,结束。程序B的运行轨迹为:计算50ms,输入80ms,再计算100ms,结束。试说明(1)两道程序运行时,CPU有无空闲等待?若有,在哪段时间内等待?为什么会等待?(2)程序A、B有无等待CPU的情况?若有,指出发生等待的时刻。
2)限期调度算法
基本思想:当一个事件发生时,对应的进程就按照截止期限被加入就绪进程队列。对于一个周期性事件,其截止期限即为事件下一次发生的时间。该调度算法首先运行队首进程,即截止时间最近的那个进程
3)最少裕度法
基本思想:首先计算各个进程的富裕时间,即裕度(laxity),然后选择裕度最少的进程执行。裕度=截止时间-(就绪时间+计算时间)
如果P1先执行,则最后的值为x=10,y=9,z=15
如果P2先执行,则最后的值为x=10,y=19,z=15
4、有一阅览室,读者进入时必须先在一张登记表上登记,该表为每一个座位列出一个表目,包括座号、性命、读者离开时要注销登记信息;假如阅览室有100个座位。试用信号量和P/V操作。
答:
(一)定义两个信号量并初始化
1
2
10:10
1:00
12:25
13:25
3:15
3.15
3
10:25
0:25
12:00
12:25
2:00
4.8
平均作业周转时间:2:25平均作业带权周转时间W=3.13
通过平均作业周转时间和平均作业带权周转时间比较,最高响应比优先算法比FIFO调度算法性能好。
知识点:
1、单处理器与多处理器的概念
2、处理器的状态分类及其执行的指令分类
银行家算法进行计算时必须知道要管理的全部资源信息,包括多少种资源,每种资源的数量,当前有多少个进程,每个进程需要资源的最大数量,要求每个进程获取最大的资源后应该有限时间内释放所有所占的资源。每次资源分配时,新的状态要求必须时安全的,也就是能够找到一个安全序列使所有的进程能获取其申请的最大资源数量,这是此次分配是可行的,如果不能找到一个安全序列则拒绝此次分配。这就是银行家算法的基本原理。
互斥条件:进程互斥使用资源
占有和等待条件:申请新资源时得不到满足等待,不释放已占有资源
不剥夺条件:一个进程不能抢夺其他进程占有的资源
循环等待条件:存在一组进程循环等待资源的
31、何谓银行家算法?叙述其基本原理。
答:
银行家算法是资源分配时的保守算法,系统掌握资源动态申请和使用情况,每次资源申请时用某种分配算法测试安全性,以避免死锁发生。
有效合理使用它们可以提高OS效率和安全性
76、解释:(1)作业周转时间;(2)作业带权周转时间;(3)响应时间;(4)吞吐率。
答:
作业周转时间:批处理用户从作业提交给系统开始,到作业完成为止的时间间隔。
作业带权周转时间:如果作业i的周转时间为ti,所需运行时间为tk,则称wi=ti /tk为该作业的带权周转时间,n个作业的带权周转时间的平均值为作业带权周转时间。
基本工作原理:当一个进程要发送消息时,先在自己的消息发送区里生成发送的消息;然后向系统申请一个消息缓冲区,把消息从发送区复制到消息缓冲区中;随后该消息缓冲区被挂到接收消息的进程的消息队列上,供接近者在需要时从消息队列中摘下并复制到消息接近区去使用,同时释放消息缓冲区
29、叙述产生死锁的必要条件。
答:
1
2
10:10
1:00
12:00
13:00
2:50
17/6=2.83
3
10:25
0:25
13:00
13:25
3:00
7.2
平均作业周转时间:2:37平均作业带权周转时间W=3.68
最高响应比优先算法
作业
提交时间
运行时间
开始时间
完成时间
周转时间
带权周转时间
1
10:00
2:00
10:00
12:00
2:00
包含三类基本信息:
(1)标识信息
•PID用于唯一地标识一个进程,分由用户使用的外部标识符和被系统使用内部标识号。
•常用的标识信息有进程标识符、父进程的标识符、用户进程名、用户组名等。
(2)现场信息
•保留进程运行时存放在处理器现场中的各种信息,进程让出处理器时必须把处理器现场信息保存到PCB中,当该进程重新恢复运行时也应恢复处理器现场。
信号量按其用途分为:公用信号量和私有信号量。
信号量按其取值分为:二元信号量和一般信号量。
17、何谓管程?它有哪些属性?
答:管程,是由局部于自己的若干公共变量及其说明和所有访问这些公共变量的过程所组成的软件模块。
•共享性
•安全性
•互斥性
25、什么是消息队列机制?叙述其工作原理。
答:消息队列机制,通过OS统一管理一组用于通信的消息缓冲存储区,来实现通信双方相互传递消息的机制,接收方的缓冲区采用队列进行管理,这就是消息队列机制。
操作系统作业参考答案及其知识点
第一章
思考题:
10、试叙述系统调用与过程调用的主要区别?
答:
(一)、调用形式不同
(二)、被调用代码的位置不同
(三)、提供方式不同
(四)、调用的实现不同
提示:每个都需要进一步解释,否则不是完全答案
13、为什么对作业进程批处理可以提高系统效率?
答:批处理时提交程序、数据和作业说明书,由系统操作员把作业按照调度策略,整理为一批,按照作业说明书来运行程序,没有用户与计算机系统的交互;采用多道程序设计,可以使CPU和外设并行工作,当一个运行完毕时系统自动装载下一个作业,减少操作员人工干预时间,提高了系统的效率。
y:=z+y;z:=z+x;
end;end;
答:P1和P2两个进程的头两句是可以并行执行的,而且不是数据相关的。后去语句可根据PV操作原理可知,P1必定先执行,直到P(S2);暂停,此时P2执行,过了V(S2);语句,P1才能继续执行,此时x=10,y=4,z=5。P1和P2进程的最后两个语句执行的顺序关系非常大,因为是数据相关的。
答:模式切换:为了提高系统资源利用率,当中断发生时,暂时中断正在执行的用户进程,把进程从用户状态切换到内核状态,去执行操作系统例行程序以获得服务,这就是一次模式切换。
模式切换不同于进程切换,它并不引起进程状态变化,也不一定引起进程的切换,在完成了中断调用之后,完全可以再通过一次逆向的模式切换来继续执行用户进程。
4、多道程序设计中CPU利用率的计算
5、操作系统提供的接口:程序接口与系统调用
第二章
思考题:
5、为什么要把机器指令分成特权指令和非特权指令?
答:当前计算机中都采用操作系统来管理资源,控制系统的执行流程,操作系统核心程序能够使用全部指令,但用户程序只能使用机器指令系统的一个子集,即非特权指令。因为用户程序如何使用有关资源管理的特权指令很容易造成系统的混乱,造成系统或用户信息的破坏。
答:单处理机A、B程序执行的时序图如下所示
在100-150毫秒期间,打印机和输入机同时工作,CPU等待。
在180-200毫秒期间,程序A在150毫秒处开始执行,180毫秒处程序B要执行,但是不得不等待到程序A执行完毕。
知识点:
1、操作系统的概念
2、操作系统的目标、层次结构
3、操作系统的作用与功能、主要特性
1、过程控制系统(生产过程控制)
2、信息查询系统(情报检索)
3、事务处理系统(银行业务)
19、分时系统中,什么是响应时间?它与哪些因素有关?
答:响应时间是用户提交的请求后得到系统响应的时间(系统运行或者运行完毕)。它与计算机CPU的处理速度、用户的多少、时间片的长短有关系。
应用题:
1、有一台计算机,具有1MB内存,操作系统占用200KB,每个用户进程占用200KB。如果用户进程等待I/0的时间为80%,若增加1MB内存,则CPU的利用率提高多少?
v(empty);
End;
(二)定义三个信号量并初始化
mutex:semaphor;
empty,full:semaphor;
empty=100,full=0;mutex=1;
信号量和P/V操作的实现过程
应用题:
3、有两个优先级相同的进程P1和P2,各自执行的操作如下,信号量S1和S2初值均为0。试问P1、P2并发执行后,x、y、z的值各为多少?
P1:P2:
beginbegin
y:=1;x:=1;
y:=y+3;x:=x+5;
V(S1);P(S1);
z:=y+1;x:=x+y;
P(S2);V(S2);
18、什么是实时操作系统?叙述实时操作系统的分类。
答:实时操作系统(Real Time Operating System)指当外界事件或数据产生时,能接收并以足够快的速度予以处理,处理的结果又能在规定时间内来控制监控的生产过程或对处理系统做出快速响应,并控制所有实时任务协调一致运行的操作系统。
有三种典型的实时系统:
90、试述典型的多CPU调度算法。
答:
1)负载共享调度算法
基本思想:进程并不分配给一个特定处理器,系统维护一个全局性就绪线程队列,当一个处理器空闲时,就选择一个就绪线程占有处理器运行。
2)群调度算法
基本思想:把一组进程在同一时间一次性调度到一组处理器上运行。
3)处理器专派调度算法
基本思想:给一个应用指派一组处理器,一旦一个应用被调度,它的每个线程被分配一个处理器并一直占有处理器运行直到整个应用运行结束。
相关文档
最新文档