操作系统第四版汤小丹课后答案

2026/4/27 20:32:41

要。 (3)用户要求,用户进程的紧迫程度及用户所付费用的多少来确定优先权的。

12、试比较fcfs和spf两种进程调度算法。

【解】fcfs算法按照作业提交或进程变为就绪状态的先后次序,分派cpu。当前作业或进程占有cpu,直到执行完或阻塞,才让出cpu。在作业或进程唤醒后,并不立即恢复执行,通常等到当前作业或进程让出cpu。fcfs比较有利于长作业,而不利于短作业;有利于cpu繁忙的作业,而不利于i/o繁忙的作业。 spf有利于短进程调度,是从就绪队列中选出一估计运行时间最短的进程,将处理机分配给它,使它立即执行并一直执行到完成,或发生某事件而被阻塞放弃处理机时,再重新调度。比fcfs改善了平均周转时间和平均带权周转时间,缩短了作业的等待时

间,提高了系统的吞吐量。但spf有其不容忽视的缺点:该算法对长作业不利;完全未考虑作业的紧迫程度,因而不能保证紧迫性作业(进程)会被及时处理;用户可能会有意无意地干扰作业的运行时间,致使该算法不一定能真正做到短作业优先调度。 13、在时间片轮转法中,应如何确定时间片的大小?

【解】时间片应略大于一次典型的交互需要的时间。一般应考虑三个因素:系统对相应时间的要求、就绪队列中进程的数目和系统的处理能力。

14、通过一个例子来说明通常的优先级调度算法不能适用于实时系统?

【解】实时系统的调度算法很多,主要是基于任务的开始截止时间和任务紧急/松弛程度的任务优先级调度算法,通常的优先级调度算法不能满足实时系统的调度实时性要求而不适用。

15、为什么说多级反馈队列调度算法能较好地满足各方面用户的需要?

【解】(1)对于终端型用户来说,他们提交的大多属于较小的交互型作业,系统只要能使这些作业(进程)在第一队列所规定的时间片内完成,便可使终端型作业用户都感到满意。 (2)对短批处理作业用户来说,在第一队列中执行一个时间片或至多只需在第二队列和第三队列中各执行一个时间片即可完成。 (3)对长批处理作业用户来说,只要将作业依次在第1,2,??,n个队列中运行,然后再按轮转方式运行,用户不必担心其作业长期得不到处理。 16、

19、为什么在实时系统中,要求系统(尤其是cpu)具有较强的处理能力?

【解】在实时系统中都存在着若干个实时进程或任务,它们用来反应或控制某个(些)外部事件,往往带有某种程度的紧迫性,因而对实时系统中的调度提出了某些特殊要求。 若处理机的处理能力不够强,则有可能因处理机忙不过来而使某些实时任务不能得到及时处理,从而导致发生难以预料的后果。 20、按调度方式可将实时调度算法分为哪几种?

【解】按调度方式可将实时调度算法分为两大类四小类: (1)非抢占式调度算法:①非抢占式轮转调度算法;②非抢占式优先调度算法; (2)抢占式调度算法:①基于时钟中断的抢占式优先权调度算法;②立即抢占的优先权调度算法。 21、什么是最早截止时间优先调度算法?举例说明之。

【解】在系统中保持一个实时任务就绪队列,该队列按各任务截止时间的早晚排序,截止时间愈早的优先级愈高,在队列中排列愈靠前,调度程序在选择任务时,总是选择就绪队列中的第一个任务,为之分配处理机,使之投入运行。 例:四个非周期任务,它们先后到达。系统首先调度任务1执行,在任务1执行期间,任务2、3又先后到达。由于任务3的开始截止时间早于任务2,系统在任务1后将调度任务3执行。在此期间又到达作业4,其开始截止时间仍是早于任务2的,在任务3执行完后,系统又调度任务4的执行,最后才调度任务2执行。 22、什么是最低松弛度优先调度算法?举例说明之。

【解】该算法是根据任务紧急(或松弛)的程度,来确定任务的优先级。任务的紧急程度愈高,为该任务所赋予的优先级就愈高,以使之优先执行。例如,一个任务在200 ms 时必须完成,而它本身所需的运行时间就有100 ms,因此,调度程序必须在100 ms 之前调度执行,该任务的紧急程度(松弛程度)为100 ms。又如,另一任务在400 ms 时必须完成,它本身需要运行 150 ms,则其松弛程度为 250 ms。 27、何谓死锁?产生死锁的原因和必要条件是什么?

【解】 所谓死锁,是指多个进程因竞争资源而造成的一种僵局,若无外力作用,这些进程都将永远不能再向前推进。 产生死锁的原因: (1) 竞争资源,当系统中供多个进程所共享的资源,不足以同时满足它们的 需要时,引起它们对资源的竞争而产生死锁; (2) 进程推进顺序非法,进程在运行过程中,请求和释放资源的顺序不当,

导致进程死锁。 产生死锁的必要条件: (1) 互斥条件 进程对所分配到的资源进行排他性使用。如果此时还有其他进程请求该资源,请求者只能阻塞,直到占有该资源的进程释放该资源。 (2) 请求和保持条件 进程已经保持了至少一个资源,但又提出了新的资源要求,而该资源又已被其他进程占有,此时请求进程阻塞,但请求进程又对已经获得的其他资源保持不放。 (3) 不剥夺条件 进程已获得的资源,在未使用完之前,不能被剥夺,只能在使用完后由自己释放。 (4) 环路等待条件 在发生死锁时,必然存在一个进程——资源的环形链。

29、请详细说明可通过哪些途径预防死锁?

【解】可以通过: (1) 摒弃“请求和保持”条件,系统要求所有进程要一次性地申请 在整个运行过程所需的全部资源。如系统有足够的资源分配给进程,便一次性的把其所需要的所有资源分配给该进程。这样,该进程在整个运行期间,便不会再提出资源要求,从而摒弃了请求条件。但在分配时,只要有一种资源要求得不到满足,则即使是已有的其他资源,也全部不分配给该进程,而让该进程等待。这样,由于等待期间的进程未占有任何资源,因而也摒弃了保持条件,从而可以避免发生死锁。 (2) 摒弃“不剥夺”条件,进程是在需要资源时才提出请求,这样, 一个已经保持了某些资源的进程,当它在提出新的资源要求而不能立即得到满足时,必须释放它已经保持的所有资源,待以后需要时再重新申请。这意味着进程已经占有的资源,在运行过程中可能会暂时释放,也可认为是被剥夺了,从而摒

弃了“不剥夺条件”。 (3) 摒弃“环路等待”条件,系统将所有资源按类型进行线性排队, 并赋予不同的序号。所有进程对资源的请求必须严格按资源序号递增的次序提出,这样,在所形成的资源分配图中,不可能再出现环路,从而摒弃了“环路等待”条件。

(2)p2发出请求向量request(1,2,2,2),系统按银行家算法进行检查:

①request2(1,2,2,2)=need2(2,3,5,6)②request2(1,2,2,2)=available(1,6,2,2)

③系统先假定可为p2分配资源,并修改available,allocation2和need2向量: 30、在银行家算法的例子中,如果p0发出的请求向量由request(0,2,0))改为request(0,1,0),问系统可否将资源分配给它?

【解】能。

request0(0,1,0)≤need0(7,4,3);request0(0,1,0)≤available(2,3,0); 系统暂时先假定可为p0分配资源,并修改有关数据,如下所示: allocation needavailable a b c a b c a b c p00 2 0 7 3 3 2 2 0 p13 0 2 0 2 0 p23 0 2 6 0 0 p32 1 1 0 1 1 p40 0 2 4 3 1

存在一个安全序列{p1,p3,p0,p2,p4},故系统是安全的,可以分配资源。 31、在银行家算法中,若出现下述资源分配情况: process allocation need availablep0 0 0 3 2 0 0 1 21 6 2 2 p1 1 0 0 0 1 7 5 0 p2 1 3 5 4 2 3 5 6p3 0 3 3 2 0 6 5 2p4 0 0 1 4 0 6 5 6 试问: (1)该状态是否安全? (2)若进程p2提出请求

request(1,2,2,2)后,系统能否将资源分配给它? 【解】(1)利用安全性算法对上面的状态进行分析(见下表),找到了一个安全序列{p0,p3,p4,p1,p2},故系统是安全的。

work need allocationwork+allocationfinish p01 6 2 2 0 0 1 2 0 0 3 2 1 654 true p31 6 5 4 0 6 5 2 0 3 3 2 1 986 true p41 9 8 6 0 6 5 6 0 0 1 4 1 9910 true p11 9 9 101 7 5 0 1 0 0 0 2 9910 true p22 9 9 102 3 5 6 1 3 5 4 3 12 14 14 true

available=(0,4,0,0) allocation2=(2,5,7,6) need2=(1,1,3,4) ④进行安全性检查:此时对于所有的进程,条件

needi≤available(0,4,0,0)都不成立,即available不能满足任何进程的请求,故系统进入不安全状态。 因此,当进程p2提出request(1,2,2,2)后,系统不能将资源分配给它。


操作系统第四版汤小丹课后答案.doc 将本文的Word文档下载到电脑
搜索更多关于: 操作系统第四版汤小丹课后答案 的文档
相关推荐
相关阅读
× 游客快捷下载通道(下载后可以自由复制和排版)

下载本文档需要支付 10

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:xuecool-com QQ:370150219