操作系统大题
- 格式:doc
- 大小:84.00 KB
- 文档页数:6
大题:1、操作系统在发展过程中经历过哪些形式?无OS (人工操作方式、脱机输入\输出方式)、单道批处理、多道批处理、分时系统、实时系统、网络及分布式系统1请画出进程的状态转换图。
并说明是什么事件引起每种状态的变迁? 状态转换图如下: (2分)就绪到执行:处于就绪状态的进程,在调度程序为之分配了处理器之后,该进程就进入执行状态。
(2分)执行到就绪:正在执行的进程,如果分配给它的时间片用完,则暂停执行,该进程就由执行状态转变为就绪状态。
(2分)执行到阻塞:如果正在执行的进程因为发生某事件(例如:请求I/O ,申请缓冲空间等)而使进程的执行受阻,则该进程将停止执行,由执行状态转变为阻塞状态。
阻塞到就绪:处于阻塞状态的进程, 如果引起其阻塞的事件发生了,则该进程将解除阻塞状态而进入就绪状态。
(2分) 请用信号量实现下图所示的前趋关系。
Var a,b,c,d,e,f:semaphore:=0,0,0,0,0,0;Begin ParbeginBegin S1;signal(a);sigan(b);signal(c);end; 2分 Begin wait(a);S2;signal(d);end; 2分 Begin wait(c);S3;signal(e);end; 2分 Begin wait(d);S4;signal(f);end; 2分 Begin wait(b);wait(e);wait(f);S5;end; 2分 parend end 进程的三种状态“就绪”、“执行”、“阻塞”之间的转换关系中,从哪个状态到哪个状态的转换会引起进程调度?就绪阻塞 执行 I/O 完成 I/O 请求进程调度 时间片完 S 1S 2 S 3 S 4S 51)“执行”转换成“阻塞”,由于此时没有运行的进程,要选择一个来运行,这是一定会引起调度的;2)“阻塞”转换成“就绪”,由于新转换成“就绪”状态的进程的优先级可能比正在执行的进程的优先级高,所以可能会引起进程调度。
1、某系统中有10台打印机,有三个进程P1,P2,P3分别需要8台,7台和4台。
P1,P2,P3已申请到4台,2台和2台。
若此时P3提出还需要使用2台打印机的请求,试问:按银行家算法能分配给P3吗?答:系统能为进程P3分配二台打印机。
因为尽管此时10台打印机已分配给进程P1 4台,P22台和P34台,全部分配完,但P3已分配到所需要的全部4台打印机,它不会对打印机再提出申请,所以它能顺利运行下去,能释放占用的4台打印机,使进程P1,P2均可能获得乘余的要求4台和5台,按银行家算法是安全的。
有一个仓库,可以存放A和B两种产品,但要求:(1)每次只能存放一种产品(A或B);(2)-N<A产品数量-B产品数量<M;其中N和M是正整数。
试用p、v操作描述产品A和产品B的入库过程。
答:信号量的定义如下:Var mutex,SA,SB:semphore=1,M-1,N-1;(M,N为题目中给出的整数值)。
这里mutex用来做为互斥的信号量,保证每次只能存放一种产品(A或B);SA用来保证<A 产品数量-B产品数量<M,SB用来保证-N< A产品数量-B产品数量即B产品数量-A产品数量<N。
对这两个信号量的具体操作是,每当放入一个A产品,SA的值就减1,SB 的值就加1;,每当放入一个B产品,SA的值就加1,SB的值就减1;当然这些操作都是由pv操作来完成的。
具体程序如下:(用C或者类C来写都可以)BeginPrabeginPA: (表示A产品放置动作对应的进程)BeginRepeatP(SA)P(mutex)放入一个A产品;V(mutex);V(SB);Until false;EndPB: (表示B产品放置动作对应的进程)BeginRepeatP(SB)P(mutex)放入一个B产品;V(mutex);V(SA);Until false;第三章6 简述死锁产生的必要条件答:(1)互斥条件:进程对所分配到的资源进行排他性使用。
(2分)(2)请求和保持条件:进程在保持资源的同时,又去申请新的资源。
(3分)(3)不剥夺条件:进程已获得的资源,在未使用完之前,不能被剥夺。
(3分)(4)循环等待条件:存在资源-进程的循环链。
(2分)7 简述死锁的防止与死锁的避免的区别。
死锁的防止是系统预先确定一些资源分配策略,进程按规定申请资源,系统按预先规定的策略进行分配,从而防止死锁的发生。
(3分)而死锁的避免是当进程提出资源申请时系统测试资源分配,仅当能确保系统安全时才把资源分配给进程,使系统一直处于安全状态之中,从而避免死锁。
(3分)32、什么是死锁?产生死锁的原因和必要条件是什么?答:(1)在多道程序系统中,当一组进程中的每个进程均无限期地等待被改组进程中的另一进程所占有且永远不会释放的资源,此时的系统处于死锁状态,简称死锁。
(2分)(2)死锁产生的原因:(a)系统提供的资源有限;(b)进程推进顺序不当。
(2分)(3)产生死锁的必要条件:互斥条件、不可剥夺条件、请求和保持条件、循环等待条件。
(2分)说明:论述条理清晰,包含上述要点,本题即可得满分33、说明作业调度,中级调度和进程调度的区别,并分析下述问题应由哪一级调度程序负责。
(1) 在可获得处理机时,应将它分给哪个就绪进程;(2) 在短期繁重负载下,应将哪个进程暂时挂起。
答:(1) 作业调度用于决定把外存中处于后备队列中的哪些作业调入内存,并为它们创建进程,分配资源,然后将新创建进程插入就绪队列;中级调度负责将内存中暂时不具备运行条件的进程换到外存交换区存放,但内存空闲时,又将外存中具备运行条件的进程重新换入内存;进程调度决定将处理机分配给就绪进程队列的哪个进程。
(4分)(2)进程调度、中级调度(2分)说明:论述条理清晰,包含上述要点,本题即可得满分9 .试比较进程调度与作业调度的不同点。
(1)作业调度是宏观调度,它决定了哪一个作业能进入主存。
进程调度是微观调度,它决定各作业中的哪一个进程占有中央处理机。
(3分)(或)作业调度是高级调度,它位于操作系统的作业管理层次。
进程调度是低级调度,它位于操作系统分层结构的最内层。
(2)作业调度是选符合条件的(收容态)作业装入内存。
进程调度是从就绪态进程中选一个占用处理机。
(3分)10简述操作系统中的调度有哪些类型?1高级调度,又称作业调度或长程调度,用于决定把后备队列中的哪些作业调入内存;(2分)2低级调度,又称进程调度或短程调度,用来决定就绪队列中哪个进程应先获得处理机;(2分)3中级调度,又称中程调度,它按一定的算法将外存中已具备运行条件的进程换入内存,而将内存中处于阻塞状态的某些进程换出至外存。
(2分)11.银行家算法中的安全状态是一个什么样的状态?在系统中的若干并发进程,如果存在一个进程的顺序序列,按照这个顺序去执行,每个进程都能获得自己所需的资源而执行,那么当前进程所处于的状态就是安全状态。
某系统有A、B、C、D四类资源可供五个进程P1、P2、P3、P4、P5共享。
系统对这四类资源的拥有量为:A类3个、B类14个、C类12个、D类12个。
进程对资源的需求和分配情况如下:进程已占有资源最大需求数A B C D A B C DP1 0 0 1 2 0 0 1 2P2 1 0 0 0 1 7 5 0P3 1 3 5 4 2 3 5 6P4 0 6 3 2 0 6 5 2P5 0 0 1 4 0 6 5 6按银行家算法回答下列问题:(1)现在系统中的各类资源还剩余多少?(4分)(2)现在系统是否处于安全状态?为什么?(6分)(3)如果现在进程P2提出需要A类资源0个、B类资源4个、C类资源2个和D类资源0个,系统能否去满足它的请求?请说明原因。
(6)(1)A:1;B:5;C:2;D:0(2)need矩阵为:P1 0 0 0 0P2 0 7 5 0P3 1 0 0 2P4 0 0 2 0P5 0 6 4 2存在安全序列,如P1,P3,P4,P5,P2,所以安全(3)能,因为试探分配后,可用资源为1,1,0,0。
可找到安全序列,所以可分配。
2、设有三道作业,它们的提交时间及执行时间由下表给出:作业号提交时间执行时间1 8.5 2.02 9.2 1.63 9.4 0.5试计算在单道程序环境下,采用先来先服务调度算法和最短作业优先调度算法时的平均周转时间 (时间单位:小时,以十进制进行计算;要求写出计算过程)(10分)FCFS: 作业号提交时间执行时间开始时间完成时间周转时间1 8.5 2.0 8.5 10.5 2.02 9.2 1.6 10.5 12.1 2.93 9.4 0.5 12.1 12.6 3.2平均周转时间=(2.0+2.9+3.2)/3=2.7(小时)SJF: 作业号提交时间执行时间开始时间完成时间周转时间1 8.5 2.0 8.5 10.5 2.02 9.2 1.6 11.0 12.6 3.43 9.4 0.5 10.5 11.0 1.6平均周转时间=(2.0+3.4+1.6)/3=2.3(小时)2、 End假设一个系统中有5个进程,到达时间和服务时间见下表,请按照先来先服务、非抢占及抢占式的短作业优先、响应比高者优先、时间片轮转(q=1)、多级反馈队列(第i级队列的时间片=2i-1)进行调度,算出各种方法得到的完成时间、周转时间、带权周转时间、平均周转时间及平均带权周转时间。
算法进程名创建时刻结束时刻周转时间平均周转时间/ms先来先服务P1 0 3 3 (3+7+912+12)/5=8.60 P2 2 9 7进程到达时间服务时间A 0 3B 2 6C 4 4D 6 5E 8 2P3 4 13 9 P4 6 18 12 P5 8 20 12时间片轮转P1 0 4 4 (4+16+13+14+7)/5=10.80 P2 2 18 16P3 4 17 13P4 6 20 14P5 8 15 7非剥夺式优先级P1 0 3 3 (3+7+9+12+12)/5=8.60 P2 2 9 7P3 4 13 9P4 6 18 12P5 8 20 12剥夺式优先级P1 0 3 3 (3+18+4+7+7)=7.80 P2 2 20 18P3 4 8 4P4 6 13 7P5 8 15 7。