操作系统课后习题1-9答案.docx

上传人:scccc 文档编号:12766770 上传时间:2021-12-06 格式:DOCX 页数:17 大小:160.98KB
返回 下载 相关 举报
操作系统课后习题1-9答案.docx_第1页
第1页 / 共17页
操作系统课后习题1-9答案.docx_第2页
第2页 / 共17页
操作系统课后习题1-9答案.docx_第3页
第3页 / 共17页
操作系统课后习题1-9答案.docx_第4页
第4页 / 共17页
操作系统课后习题1-9答案.docx_第5页
第5页 / 共17页
点击查看更多>>
资源描述

《操作系统课后习题1-9答案.docx》由会员分享,可在线阅读,更多相关《操作系统课后习题1-9答案.docx(17页珍藏版)》请在三一文库上搜索。

1、练习11.1-1.10题解见书1.11 有一台输入设备和一台输出设备的计算机系统上,运行有两道程序。两道程序投入运行情况如下:程序1先开始运行,其运行轨迹为:计算50ms输出100ms计算50ms 输出100ms结束;程序2后开始运行,其运行轨迹为:计算50ms输入100ms计算100ms 结束。1. 忽略调度时间,指出两道程序运行时,CPU是否有空闲?在哪部分空闲?指出程序1和程序2. 有无等待CPU的情况?如果有,发生在哪部分? 题解:由题画出CPU利用图如下:t/ms150200250300由图可知,1.CPU有空闲,在100ms150m时间段是空闲的。2. 程序1无等待时间,而程序2在

2、一开始的0ms50ms寸间段会等待。1.12 在计算机系统上运行三道程序,运行次序为程序1、程序2、程序3。程序1的运行轨迹为:计算20ms输入40ms计算10ms程序2的运行轨迹为:计算40ms输入30ms计算10ms程序3的运行轨迹为:计算60ms输入30ms计算20ms。忽略调度时间,画出三道程序运行的时间关系图;完成三道程序共花多少时间? 与单道程序比较,节省了多少时间?解答:三道程序运行,完成三道程序共花170ms与单道程序(260ms比较,节省了 90ms(始终按照1-2-3的次序,即程序1程序2程序3程序1程序2(在程 序3运行前会停10ms等待输入完成)程序3。(如果不是按照程

3、序1、2、3的次序完成则会有多种情况。)1.13 在计算机系统上有两台输入/输出设备,运行两道程序。程序1的运行轨迹为:计算10ms输入5ms计算5ms输出10ms 计算10ms程序2的运行轨迹为:输入10ms计算10ms输出5ms计算5ms 输出10ms在顺序环境下,先执行程序1,再执行程序2,求总的CPU利用率为多 少?题解:由题画出CPU利用图如下:程序1程序2由图可知,在总共80ms的时间里,CPL空闲时间为40ms 即:CPU 利用率=40ms/80ms*100%=50%1.14 一个计算机系统有足够的内存空间存放 3道程序,这些程序有一半的时间 在空闲等待I/O操作。问多大比例的C

4、PU时间被浪费掉了。题解:由题画图如下:因为每个程序有一半的时间在等待I/O操作,所以在并发状态下,程序1、程序2、程序3所占时间比依次减半(如上图),所以浪费的时间比例为1/8。练习22. 18某系统中进程状态变化如图2.22所示,当对系统中的进程进行观察时, 发现某一进程产生的一次状态变化会引起另一进程发生状态变化。(1) 在什么情况下,一个进程的状态变化3能够立即引起另一进程的状态变化1 ?(2) 在什么情况下,一个进程的状态变化2能够立即引起另一进程的状态变化1 ?(3) 进程的状态变化3是否可能引起另一进程的状态变化 2?进程的状态变化3 是否可能引起另一进程的状态变化 1?(1)

5、当就绪队列中还存在其它进程的情况下,一个进程的状态变化3能够立即 引起另一进程的状态变化2。(2) 当就绪队列中还存在其它进程的情况下,一个进程从运行状态变化到就绪 状态后,另一个就绪进程能够从就绪状态变为运行状态。(3) 不可能,可能。2. 19分别写出相应的程序来描述图2.23中的前趋图 解答程序:S1:a:=x+1S2:b:=a+2S3:c:=a+3S4:d:=b+4S5:e:=b+cS6:f:=e+5S7:g=e+6程序:S1:a:=x+1S2:b:=a+2S3:c:=a+3S4:d:=b+4S5:e:=b+cS6:f:=d+eS7:g:=c+e2.20 假设在一个系统中,新进程以每分

6、钟8个进程的速率到达,每个进程请 求服务的平均时间为6s,估计在一个单处理器系统中 CPU亡的时间比率。如果新进程以每分钟10个进程的速率到达,每个进程请求服务的平均时间 也为6s,估计在一个单处理器系统中 CPU忙的时间比率。如果新进程创建以每分钟超过10个进程的速率到达,每个进程请求服务的 平均时间为6s,估计在一个单处理器系统中 CPU忙得时间比率,并解释此时的 情况。解答:因为新进程每分钟8个进程的速率到达,每个进程之间达到的时间间隔为 7.5s。由于每个进程占用6s的CPU寸间。所以,1分钟之内CPU的空间时间为 8*1.5s=12s。CPU勺利用率为 48/60=0.8,即 80%

7、因为新进程每分钟10个进程的速率到达,每个进程之间达到的时间间隔为 6s。由于每个进程占用6s的CPU寸间。所以,1分钟之内CPU勺空间时间为0s。 CPU勺利用率为100%如果新进程创建以每分钟超过10个进程的速率到达,每个进程请求服务的 平均时间为6s,则请求服务时间会大于1分钟,CPU-直会处于繁忙,所以CPU 忙的时间比率同样为100%2.21 一个系统中有4个进程,进程P1要求20s后运行,经过40s后再次运行; 进程P2要求25s后运行;进程P3要求35s后运行,经过35s后再次运行;进程 P4要求60s后运行。进程在阻塞队列等待被唤醒后运行,试创建进程的唤醒队列。解答:进程的唤醒

8、队列为 P1 P2 PIP1 P3注意:“经过40s后再次运行”表示第1次运行完成后再过40s。2.22 如果线程是在用户空间线程库中实现,解释为什么当进程中的一个线程阻塞时,进程内的所有其它线程都会阻塞?如果线程是在内核空间中实现,而进程内的一个线程阻塞不会引起进程内的其他线程被阻塞,为什么?解答:用户级线程由用户空间运行的用户级线程库实现。当一个应用程序提交给操作系统后,操作系统首先为该应用程序建立一个内核管理进程,然后用户级线程 库为该进程创建一个或多个用户级线程,但内核并不知道用户空间线程的活动, 内核只是以进程为单位,实现进程状态的转换,因此当进程中的一个线程阻塞时, 进程内的所有其

9、它线程都会阻塞。如果线程是在内核空间中实现的,这些内核级线程都由内核创建和控制管理,内核为整个进程及进程中的所有线程维护现场信息,内核的调度是在线程的基础上进行的,因而进程的一个线程阻塞不会引起进程内的其他线程被阻塞。练习33.13证明作业调度算法中短作业优先调度算法具有最小平均等待时间。 证明:假设在作业队列中等待运行的作业有 N道,分别为N0, N1,N2, ,, Nn-1, 它们的运行时间分别为t0,t1,,, tn-1,且满足t0<t1< , <tn-1。由于短作业有限调度算法总是选择最短的作业先调度,故这些作业总的等 待时间为:T1=0 + t0 +(t0 + t1

10、 ) + (t0 + t1 + t2 ) + , + (t0 + t1 + t2 +, +tn-2 )=(N - 1) tO + ( N - 2) t1 + ( N - 3) t2 +,+ tn-2 如果不按照短作业优先调度算法,可设调度顺序为:N1, NO, N2, , , Nn-1,故这些作业总的等待时间为:T2= 0 + t1 + ( tO + t1 )+( tO + t1 + t2 ) + , +( tO + t1 + t2 +, +tn-2)=(N - 2) tO + ( N - 1) t1 + ( N - 3) t2 +,+ tn-2 (2)(2)-( 1)得:T2 - T1 =

11、t1 - tO >O说明任何一种作业调度顺序的作业的平均等待时间都大于按照短作业优先的作 业的平均等待时间。3.14假设在一个处理器上执行5个作业,作业到达的次序和需要执行的时间分 别为:JO (75mS、J1 (15mS、J2 (5mS、J3 (15mS、J4 (45mS,假定系统中使用FCFS调度算法,作业J3的周转时间是多少?作业的平均等 待时间是多少?答:周转时间(ms)等待时间(mSJ0750J19075J29590J311095J4155110平均等待时间(mS743.15在单道批处理系统中,三个作业的提交时间分别为:1O: OO、10: 1O、1O:2O,需要执行时间分别为

12、:2小时、1小时、O.5小时,分别按照短作业优先调 度算法和高响应比优先调度算法进行调度,比较哪一种调度算法更好?解:(1) 不抢占:执行顺序为A, C, B平均周转时间:(12O+13O+2OO /3=15O (min)平均带劝周转时间:(120/120+130/30+200/60 ) /3 =26/9抢占:A(10: 10), B (10: 20), C(10:50),B(11:40),A(13:30)平均周转时间:(210+90+30 /3=110 (min)平均带劝周转时间:(210/120+90/60+30/30 ) /3 =510/360=17/12(2) 响应比高者优先调度算法不

13、会抢占,因此,只存在这样一种情况:执行顺序为A, C, B平均周转时间:(120+130+200 /3=150 (min)平均带劝周转时间:(120/120+130/30+200/60 ) /3 =26/9所以,如果要比较哪一种算法好自然针对不抢占的情况。根据比较结果, 它们的平均周转时间和平均带权周转相同, 这主要是该应用正好发生了这样凑巧 的情况。3.16假设在具有一个处理器的系统上执行下面的作业,假如采用抢占式短作业 优先调度算法,作业需要处理时间 T和到达时间A分别如下:那么:IT到达时间A050013510220103255544095作业1的周转时间是多少?作业的平均等待时间是多少

14、?答:1。执行顺序为:0( 10),2( 30),1( 65),3( 90), 0( 130),4( 170) 作业0的周转时间为:130,作业1的周转时间为:55,作业2的周转时间为:20,作业3的周转时间为:35作业4的周转时间为:65平均周转时间=305/5=61作业0的等待时间为:130-50=80,作业1的等待时间为:55-35=20,作业2的等待时间为:10-10=0,作业3的等待时间为:,35-25=10作业4的等待时间为:,65-40=253.17假如在具有一个处理器系统中,采用优先级高者优先的进程调度算法,优 先数小代表优先级高,进程达到顺序I和需要处理时间T、优先数分别如下

15、:IT优先级0753115125431554452(1)没有优先级抢占情况下,写出进程的执行先后序列,进程2的周转时间是多少?进程的平均等待时间是多少?(3)有优先级抢占情况下,写出进程的执行先后序列,进程2的周转时间是多少?进程的平均等待时间是多少?答:(1 )无抢占:执行顺序为:1 (15), 4 (60), 0 (135), 2 (140), 3 (155)进程0的周转时间为:135进程1的周转时间为:15进程2的周转时间为:140进程3的周转时间为:155进程4的周转时间为:60进程的平均等待时间=(135-75) + (15-15) + (140-5) + (155-15) + (6

16、0-45) /5 = 702)有抢占:优先级抢占同上一样3. 18假如在具有一个处理器的系统中,采用时间片轮转调度算法,时间片大小 为10。进程需要处理时间T和到达时间A分别如下:IT到达时间A050013510220103158044085写出进程的执行序列,进程3的周转时间是多少?进程的平均等待时间是多 少?答:进程的执行序列为:0, 1, 2, 0, 1, 2, 0, 1, 3, 4, 0, 1, 3, 4, 0, 4 进程0的周转时间T0= 140进程1的周转时间T仁105进程2的周转时间T仁50进程3的周转时间T仁40进程4的周转时间T仁75进程的平均等待时间为:(140-50) +

17、(105-35) +(50-20) +(40-15) + (75-40) /5=503.18在时间片轮转调度算法中,有 n个进程共享CPU1)如果进程切换的时间不可忽略,每次进程切换用去时间为 s秒,在保 证每个进程至少每t秒内能够在CPU上轮回一次的前提下,确定时间片大小 q使得进程切换所造成的负载最小。(2) 如果n=100, t=1 , s=0.001,那么q的大小应该是多少? 答:(1) 时间片大小q = (t-ns ) /n(2) q= (1-100*0.001 ) /100 = 0.0093.19有一个四道作业的操作系统,若在一段时间内先后到达6个作业,它们的提交时间和估计运行时间

18、由下表给出:作业提交时间估计运行时间(分钟)1 8:00602 8:203538:252048:302558:35568:4010系统采用短作业优先调度算法,作业被调度进入系统后中途不得退出。但作 业运行时可被更短的作业抢占。分别给出6个作业的执行时间序列,作业的周转时间,平均周转时间。答:作业的执行顺序为:1(8:20),2(8:25),3(8:45), 5(8:50),6(9: 00),4(9: 25),2(9: 55),1( 10: 35)作业1的周转时间=155 min作业2的周转时间=95 min作业3的周转时间=20 min作业4的周转时间=55 min作业5的周转时间=15 mi

19、n作业6的周转时间=20 min作业的平均周转时间为:360/6=603.20在一个实时系统中有4个周期性事件,周期分别为 50、100、150、200ms 假设其处理时间分别需要30、25、20和xms,则该系统可调度允许的x值最大 为多少?解:30/50 + 25/100 +150/20 +200/x =1X = 10/3 3.21某系统的进程状态变化如图3.23所示,该系统的进程调度为非抢占方式, 根据该状态图叙述系统的调度策略、调度效果。图3.23状态变化图y答:首先采用优先权高者优先调度算法,然后采用时间片为100ms的调度算法。该调度算法如果调度效果考虑更周到的话, 应该让阻塞队列

20、上的进程唤醒后 进入低优先级就绪队列,这样能够保证优先级高的进程及时调度,优先级低的进 程能够合理的得到调度。4.13 如果有n个进程共享一个互斥段(1)如果每次只允许一个进程进入互斥段。(2)如果每次最多允许m个进程同时进入互斥段(叶n)。问采用的信号量初值是否相同?信号量值的变化范围如何?答:所采用互斥信号量的初值不同。(1)互斥信号量初值为1,变化范围为-n+1,1。当没有进程进入互斥段时,信号量值为1;当有1个进程进入互斥段时,但没有进程等待进入互斥段时,信号量值为0;当有1个进程进入互斥段,有1个进程等待进入互斥段时,信号量值为-1 ; 最多可有n-1个进程等待进入互斥段,故此时信号

21、量的值为 -(n-1 )。(2)互斥信号量初值为m,变化范围为m-n,m。当没有进程进入互斥段时,信号量值为m当有1个进程进入互斥段时,但没有进程等待进入互斥段时,信号量值为m-1;当有m个进程进入互斥段,但没有进程等待进入互斥段时,信号量值为0;当有m个进程进入互斥段,有1个进程等待进入互斥段时,信号量值为-1 ; 最多可有n-m个进程等待进入互斥段,故此时信号量的值为 -(n-m)。4.14 在两条双向道路的交叉路口,没有行人通过,只有汽车通过。交通情况如 下:(1)任何给定的时刻只能有一辆车过马路;(2)当一辆车到达交叉路口并且另一条街道上没有车来到的时候,应该允 许此车通过;(3)当两

22、个方向上都有车到达的时候,它们应该轮流通过,以防止在其中 一个方向上的无限期延迟。用信号量操作实现道路交通问题。解:semphore S1=0,S2=0; 有无车到达,为0时无到达semphore M仁 1,M2=0; 路中被占P1:if(车到达)v(S1);while(!S1);if(!S2)过一辆车;elsep(M2);P(M1);过一辆车;v(M1);P2:if(车到达)v(S2);while(!S2);if(!S1)过一辆车;elseP(M1);P(S2);过一辆车;v(M2);4.15 在哲学家进餐问题中,假设5个哲学家中第i个执行下面的代码段 p(mutex);P(forki);p

23、(forki+1%5);v(mutex);eat;v(forki);v(forki+1%5);(1) 说明这段代码是否满足哲学家进餐问题的所有需求。(2) 如果V(mutex)语句改在第二个V()操作之后,或者在两个 P()操作之间, 说明这两种解决方法是改进了算法还是变坏了算法。答:(a) 满足(b) 都不行4.16 有两个优先级相同的进程P1和P2,各自执行的操作如下,信 号量S1和S2的初值都为0,试问P1、P2并发执行后,x、y、z 的值各为多少?P1:P2:beg inbegi ny: = 1;(1)x: = 1;(5)y: = y + 3;(2)x: = x + 5;(6)V(S1

24、);P(S1);z: = y + 1;(3)x: = x + y;(7)P(S2);V(S2);y: = y + z;(4)z: = x + z;(8)end;end;答:语句(1) (2) (5) (6)不相交,任何执行顺序,结果相同 情况1:语句(4)先执行x=10, y=9, z=15;情况2:语句(8)先执行x=10, y=19, z=15;情况3:语句(3)推迟到语句(8)之后,x不定,y=4, z不定;4.17 两个进程A B,考虑下面的信号量编码 semaphore s = 1;int x=10,y=2;fork(A, 0);fork(B, 0);A( ) B( ) (1)x+;

25、(4) if (x>10)(2)V(s);(5)x -;(3)y=x -2;(6)else P(s);x-;分别说明(1)、 (2)、 (3)、 (4)、 (5)、(6)语句之后的x、y值为多少?答:(1)x=11,y=2(2) x=11,y=2(3) x=11,y=9 x=11,y=9(5) x=10,y=9(6) x=10,y=84.18 三个进程:输入、计算、输出。它们通过两个缓冲区传递数据,如图4.11 所示。每个缓冲区一次只能放入一条数据。写出用信号量进行同步。+|公共缓冲区I -O f|公共缓冲区2 -©解: var empty1,full1,empty2,full

26、2:semaphore:=1,0,1,0; begi nparbeg inI:beg inrepeatwait(empty1);put to buffer1;sig nal(full1);un til false;end;P:begi nrepeat wait(fulll);get from bufferl; sig nal(emptyl); wait(empty2); put to buffer2;sig nal(full2); un til false;end;O:beg in repeat wait(full2) get from buffer2; sig nal(empty2); un

27、 til false;end;pare nd; end;5.1什么是死锁?引起死锁的原因和必要条件是什么?死锁是指多个进程因为竞争资源造成的一种僵局。 原因:并发进程对临界资源的竞争和并发进程推进顺序不当。 必要条件:互斥条件,占有并请求条件,不剥夺条件,环路等待条件。5.2比较解决死锁的方法中,那种方法最容易实现?那种方法使得资源的利用率 最咼?解决死锁的方法:预防死锁,避免死锁,检测死锁,解除死锁。预防死锁是通过设计协同资源管理程序,在进程运行期间,柏怀死锁产生 的四个条件之中的任何一个,是指不成立。是最容易实现的方法。解除死锁是在发现死锁后,解除死锁,释放资源。是资源利用率最高的方 法。

28、5.3预防死锁的方法有哪些?破坏互斥条件,破坏占有并请求,阻止环路等待,允许剥夺5.8系统中有3个进程共享4个资源,每个进程每次只能申请或释放一个资源, 每个进程最多需要2个资源,给进程是否会发生死锁,为什么?解:2个资源。总有一不会发生死锁。3个进程共享4个资源,每个进程最多需要 个进程的请求会满足,运行并释放资源。不会形成环路等待。5.9系统中有20个进程,每个进程最多使用3个资源,每个进程逐个申请并竞争 使用60个同类资源。一旦某进程获得所需要的资源,完成后立即释放全部资源。 系统是否会发生死锁?为什么?系统不会发生死锁。以最坏的情况来考虑, 20个进程都需要使用3个资 源。当前,每个进

29、程都持有2个资源。(20*2=40).都在申请第3个资源(60-40=20) 对于剩余的20个资源,每个进程多会得到一个资源。不会形成环路等待。5.10 一台计算机有8台打印机,被N个进程竞争使用,每个进程最多需要3台。请问N为多少时,系统没有死锁的危险,说明原因。解:N=3时,没有死锁的危险。对于N个进程,都持有2台打印机时,申请第3台打印机,只要有一台的多余的打印机能被申请到,则系统就没有死锁的危险。即N*2+1<=8 ,得N<=3。进程P3,P4会发生死锁。对于进程P1,P2,进程的推进不需要等待其他进程的完成。进程P3,P4 P3要等P4完成并释放资源后方能推进。而P4要等

30、到P3完成后才 能。结果是P3,P4都不能完成。形成死锁。5.12 假定有3个人排队等候上电梯。当电梯门打开的时候,3个人都朝门口冲去,但是门不够大,他们 3人不能同时进门。描述解决这种死锁的方法,可 以让3个人都上电梯。说明你的解决方案清除了哪个死锁的必要条件。答:让3个人轮流进电梯。破坏了死锁发生的4个必要条件中的“不剥夺条件”。5.13 假定一个系统具有四种资源类型,分别为: R=3, 7,2,3,最大资源 需求数表如图5.10所示。资源分配器根据图5.11中的表来分配资源,这个状态 安全吗?为什么?进桿臨R|兀R,3411叫2512p33223Pl3I130312进桿阳Ri见P*2)0

31、0Pi020ip30100Pt00100101图 5.10图 5.11答:这个状态安全。存在安全执行序列P4,P0,P1,P3,P2;6.9 如果一个分页系统能够向用户提供的逻辑地址最大为16页,页面大小为2K,内存总共有8个存储块。请问逻辑地址应该为多少位?内 存空间为多大?解:逻辑地址应该为4+1仁15 (位)内存空间为8*2K =16K6.10如果一个分页系统的页表存放在内存。(1) 若对内存的一次存取需要1.2 Js,请问一次页面访问的存取需 要花多少时间?(2) 若系统配置了联想寄存器,对快表的命中率为70%假如查询 联想寄存器的时间忽略不计,请问实现一次页面访问的存取 时间是多少?

32、解:(1)访问一次页面的存取需要花费的时间为 2*1.2七=2.4七 (2)实现一次页面访问的存取时间 =0.3*1.2七+1.2七=1.56七6.11 如果一个分页系统逻辑地址长度为 16位,页面大小为4KB第0、1、2 页对应10、12、14号物理块, 请问逻辑地址为2F6AH对应的物理地址为多少?解:逻辑地址为2F6AH对应的二进制码为:0010 1111 0110 1010,页号为:2, 页内偏移为F6AH查询页表2号页面对应14号块,所以,物理地址为1110 11110110 1010, 最终物理地址为:EF6AH6.12 如果内存中有4个空闲块,每个空闲块的大小为 10MB有10个

33、请求,每次请求1MB的内存大小,对于下面列出的内存分配方法中的每一种,确定所有10个请求都被满足之后剩余空闲块的大小。(a首次适应算法(b) 循环首次适应算法(c) 最佳适应算法(d) 最坏适应算法解:(a)首次适应算法:块1用完,块2,3, 4剩余10MB(b) 循环首次适应算法:块1, 2余7MB块3.4余8MB(c) 最佳适应算法:块1用完,块2, 3, 4余10MB(d)最坏适应算法:块1, 2余7MB块3, 4余8MB6.13 如果一个系统的段表为:段号1始址段长0200510190030210080312005004180080求下列逻辑地址相应的物理地址。如果越界请指明。0,38

34、0、1,20、1,24、2,200、3,500、4,120。解:0,380表示为0段,段内偏移为380,物理地址为580;1,20 表示为1段,段内偏移为20,物理地址为920; 1,24表示为1段,段内偏移为24,物理地址为924; 2,200表示为2段,段内偏移为200,已经越界; 3,500表示为3段,段内偏移为500,物理地址为1700; 4,120表示为4段,段内偏移为120,已经越界。7.5 在分页虚拟存储器管理中,如果已知时间利用率为:CPU20%分页磁盘92%外设50%请问采取哪些措施可以改善 CPU的利用率?解:增大分页磁盘空间。7.6 一个32位地址的计算机系统使用二级页表

35、,虚拟地址为9位顶级页表,11位二级页表和偏移。请问:页面长度为多少?虚拟地址空间有多少个页面?解:页面占用的位数=32-9-1仁12位,页面长度为4K。虚拟地址空间有1M个页 面。7.7如果分页虚拟存储系统向用户提供的逻辑地址空间最大为16页,每页2KB,内存总共有8个存储块,请问逻辑地址至少应为多少位?内 存空间多大?解:解:逻辑地址应该为4+1仁15 (位)内存空间为8*2K =16K7.8 在一个请求分页的虚拟存储器管理中,一个程序的运行页面走向为:1、2、3、4、2、3、5、6、3、1、4、6、7、5、2、4、1、3、2如果为程序分配页框为3个、4个,请分别用FIFO、OPT和LRU

36、算法求 出缺页中断次数和缺页率。解:页框为3:FIFO缺页中断次数为14;缺页率为14/19。 OPT缺页中断次数为8;缺页率为8/19。LRU缺页中断次数为13;缺页率为13/19。页框为4:FIFO缺页中断次数为7;缺页率为7/19。OPT缺页中断次数为5;缺页率为5/19。LRU缺页中断次数为10;缺页率为10/19。9.9 若采用字长为16位的位示图管理磁盘空间,某操作系统的磁盘文件空间 共有500块,问位示图需要多少个字?第i列第j行对应的块号为多少?答:32,i,j 按照书上公式9.10 一个链接文件由5个逻辑记录组成,每个逻辑记录的大小与磁盘块大小都为512字节,一次存放在25,

37、70,98, 83, 60号磁盘上。若要存取文件的第 1769逻辑字节处的信息,问需要访问哪个磁盘块?答:839.11 在UNIX操作系统中,如果一个盘块的大小为1KB,每个盘块号占用4个 字节,即每块可放256个地址,如果进程要访问偏移为 143 140处的数据,问 需要几次寻址?答:1次间址9.12从磁盘高速缓存读取数据需要1ms从磁盘读取数据需要 40ms如果命中率为50%计算出读取数据的平均时间。答: 20.5ms9.13 一个请求磁盘I/O的磁盘队列,分别在下列柱面上阻塞:40,90,170,38,110,20,144,48,59。请分别按照FCFS SSTF SCAN CSCAN

38、CLOO调度算法计算平均寻道 长度,并说明那种调度算法最优。9.14 如果磁盘总共包括A个块,其中F个是空闲的。一个磁盘地址需要 dB。 位示图为每个块使用1位。空闲链表中的每个链指向一个单独的空闲块。(a)假设空闲链表方法单独地链接了所有的块,给出两种方法开销相同时必 须满足条件(用A,F,d表示)。(b)假设空闲链表方法链接了相邻块组,而不是单独的块,重复上面的问题。每个链元素指向了组中的第一块,并包括了一个说明在该组中有多少个块的2字节数。一个组的平均大小是 5个磁盘块。答:位示图的开销:位示图的列为 dByte,行为(A)/d,开销为(A)空闲链表至少包括空闲块号、指针(A-F个)9.15 比较使用位示图和使用空闲链表表示磁盘空闲块的情况

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1