操作系统孙钟秀课后答案

上传人:豆*** 文档编号:127420615 上传时间:2022-07-30 格式:DOC 页数:60 大小:386.50KB
返回 下载 相关 举报
操作系统孙钟秀课后答案_第1页
第1页 / 共60页
操作系统孙钟秀课后答案_第2页
第2页 / 共60页
操作系统孙钟秀课后答案_第3页
第3页 / 共60页
点击查看更多>>
资源描述
CH1 应用题参照答案1 有一台计算机,具有1MB内存,操作系统占用200KB,每个顾客进程各占200KB。如果顾客进程等待I/O的时间为80%,若增长1MB内存,则CPU的运用率提高多少?答:设每个进程等待I/O的比例为P,则n个进程同步等待I/O的概率是Pn ,当n个进程同步等待I/O期间CPU是空闲的,故CPU的运用率为1-Pn 。由题意可知,除去操作系统,内存还能容纳4个顾客进程,由于每个顾客进程等待I/O的时间为80%,故: CPU运用率=1-(80%)4 =0.59若再增长1MB内存,系统中可同步运营9个顾客进程,此时: CPU运用率=1-(80%)9 =0.87故增长1MB内存使CPU的运用率提高了47%: 87%59%=147% 147%-100%=47%2 一种计算机系统,有一台输入机和一台打印机,既有两道程序投入运营,且程序A先开始做,程序B后开始运营。程序A的运营轨迹为:计算50ms、打印100ms、再计算50ms、打印100ms,结束。程序B的运营轨迹为:计算50ms、输入80ms、再计算100ms,结束。试阐明(1)两道程序运营时,CPU有无空闲等待?若有,在哪段时间内等待?为什么会等待?(2)程序A、B有无等待CPU的状况?若有,指出发生等待的时刻。答:画出两道程序并发执行图如下:解决器输入机打印机程序A程序BA计算B计算计算计算时间(ms)0 50 100 150 180 200 250 300打印计算打印输入计算A打印A打印B输入A计算B计算一(1) 两道程序运营期间,CPU存在空闲等待,时间为100至150ms之间(见图中有色部分)。(2) 程序A无等待现象,但程序B有等待。程序B有等待时间段为180ms至200ms间(见图中有色部分)。3 设有三道程序,按A、B、C优先顺序运营,其内部计算和I/O操作时间由图给出。ABCC1130msC21=60msC31=20msI1240msI22=30msI32=40msC1310msC23=10msC33=20ms试画出按多道运营的时间关系图(忽视调度执行时间)。完毕三道程序共花多少时间?比单道运营节省了多少时间?若解决器调度程序每次进行程序转换化时1ms,试画出各程序状态转换的时间关系图。答:1) 忽视调度执行时间,多道运营方式(抢占式):时间 0 3 7 8 10 12 13 14 17 19 单位10 msI/O I12 I22 I32 CPU C11 C21 C13 C21 C31 C23 C33 抢占式共用去190ms,单道完毕需要260ms, 节省70ms。 忽视调度执行时间,多道运营方式(非抢占式):时间 0 3 7 9 10 12 13 14 16 18 单位10 msI/O I12 I22 I32 CPU C11 C21 C13 C31 C23 C33 非抢占式共用去180ms,单道完毕需要260ms, 节省80ms。2) 调度执行时间1ms,多道运营方式(抢占式):时间 0 303132 71727374 8485 105107 127 136137 147 177178 198 单位1msI/O I12 I22 I32 CPU C11 C21 C13 C21 C31 C23 C33 OS 调度执行时间1ms,多道运营方式(非抢占式):时间 0 303132 7172 939495 105106 139 168169 189 单位1msI/O I12 I22 I32 CPU C11 C21 C21 C13 C31 C31 C23 C33 OS 4 在单CPU和两台I/O(I1,I2)设备的多道程序设计环境下,同步投入三个作业运营。它们的执行轨迹如下:Job1:I2(30ms)、CPU(10ms)、I1(30ms)、CPU(10ms)、I2(20ms)Job2:I1(20ms)、CPU(20ms)、I2(40ms)Job3:CPU(30ms)、I1(20ms)、CPU(10ms)、I1(10ms)如果CPU、I1和I2都能并行工作,优先级从高到低为Job1、Job2和Job3,优先级高的作业可以抢占优先级低的作业的CPU,但不抢占I1和I2。试求:(1)每个作业从投入到完毕分别所需的时间。(2) 从投入到完毕CPU的运用率。(3)I/O设备运用率。答:画出三个作业并行工作图如下(图中着色部分为作业等待时间):CPUI1I2Job1Job2Job3时间(ms)CPU CPU0 10 20 30 40 50 60 70 80 90 100 110CPU I1I1 I1CPUCPU I2 I2CPU I1CPU I2 Job1 Job2 Job3Job2Job1Job2Job3Job1Job3 Job2Job1 Job1Job3Job3(1) Job1从投入到运营完毕需110ms,Job2从投入到运营完毕需90ms,Job3从投入到运营完毕需110ms。(2) CPU空闲时间段为:60ms至70ms,80ms至90ms,100ms至110ms。因此CPU运用率为(110-30)/110=72.7%。(3) 设备I1空闲时间段为:20ms至40ms,90ms至100ms,故I1的运用率为(110-30)/110=72.7%。设备I2空闲时间段为:30ms至50ms,故I2的运用率为(110-20)/110=81.8%。5 在单CPU和两台I/O(I1,I2)设备的多道程序设计环境下,同步投入三个作业运营。它们的执行轨迹如下:Job1:I2(30ms)、CPU(10ms)、I1(30ms)、CPU(10ms)Job2:I1(20ms)、CPU(20ms)、I2(40ms)Job3:CPU(30ms)、I1(20ms)如果CPU、I1和I2都能并行工作,优先级从高到低为Job1、Job2和Job3,优先级高的作业可以抢占优先级低的作业的CPU。试求:(1)每个作业从投入到完毕分别所需的时间。(2) 每个作业投入到完毕CPU的运用率。(3)I/O设备运用率。答:画出三个作业并行工作图如下(图中着色部分为作业等待时间):CPUI1I2Job1Job2Job3时间(ms)CPU CPU0 10 20 30 40 50 60 70 80 90 I1 I1CPUCPU I2 I2CPU I1CPU Job1 Job2 Job3Job2Job1Job2Job3Job1 Job2 Job1Job3(1) Job1从投入到运营完毕需80ms,Job2从投入到运营完毕需90ms,Job3从投入到运营完毕需90ms。(2) CPU空闲时间段为:60ms至70ms,80ms至90ms。因此CPU运用率为(90-20)/90=77.78%。(3) 设备I1空闲时间段为:20ms至40ms,故I1的运用率为(90-20)/90=77.78%。设备I2空闲时间段为:30ms至50ms,故I2的运用率为(90-20)/90=77.78%。6 若内存中有3道程序A、B、C,它们按A、B、C优先顺序运营。各程序的计算轨迹为:A:计算(20)、I/O(30)、计算(10) B:计算(40)、I/O(20)、计算(10)C:计算(10)、I/O(30)、计算(20)如果三道程序都使用相似设备进行I/O(即程序用串行方式使用设备,调度开销忽视不计)。试分别画出单道和多道运营的时间关系图。两种状况下,CPU的平均运用率各为多少?答:分别画出单道和多道运营的时间图0 20 40 50 60 80 100 120 140 160 180 190I/OCPU时间(ms)AAABBB C CC(1) 单道运营时间关系图单道总运营时间为190ms。CPU运用率为(190-80)/190=57.9%(1) 单道运营时间关系图I/OCPU时间(ms)AAAB C0 20 40 50 60 80 100 120 140 BBCCB多道总运营时间为140ms。CPU运用率为(140-30)/140=78.6%7 若内存中有3道程序A、B、C,优先级从高到低为A、B和C,它们单独运营时的CPU和I/O占用时间为:程序A: 60 20 30 10 40 20 20 (ms) I/O2 CPU I/O1 CPU I/O1 CPU I/O1程序B: 30 40 70 30 30 (ms) I/O1 CPU I/O2 CPU I/O2程序C: 40 60 30 70 (ms) CPU I/O1 CPU I/O2如果三道程序同步并发执行,调度开销忽视不计,但优先级高的程序可中断优先级低的程序,优先级与I/O设备无关。试画出多道运营的时间关系图,并问最早与最迟结束的程序是哪个?每道程序执行到结束分别用了多少时间?计算三个程序所有运算结束时的CPU运用率?答:画出三个作业并发执行的时间图:.CPUI01I02ABC时间(ms)cpu0 30 60 90 120 150 180 210 240 270 300 330 I01 cpucpu I02 I02 cpu cpuI01cpu A BBA B CB C A CI01 cpu I01A C AAcpu cpu I01 cpu cpu I02I02 B C B CA(1) 最早结束的程序为B,最后结束的程序为C。(2) 程序A为250ms。程序B为220ms。程序C为310ms。(3) CPU运用率为(310-120)/310=61.3%8 有两个程序,A程序按顺序使用:(CPU)10秒、(设备甲)5秒、(CPU)5秒、(设备乙)10秒、(CPU)10秒。B程序按顺序使用:(设备甲)10秒、(CPU)10秒、(设备乙)5秒、(CPU)5秒、(设备乙)10秒。在顺序环境下先执行A,再执行B,求出总的CPU运用率为多少?答:程序A执行了40秒,其中CPU用了25秒。程序B执行了40秒,其中CPU用了15秒。两个程序共用了80秒,CPU化了40秒。故CPU运用率为40/80=50%。9 在某计算机系统中,时钟中断解决程序每次执行的时间为2ms(涉及进程切换开销)。若时钟中断频率为60HZ,试问CPU用于时钟中断解决的时间比率为多少?答:因时钟中断频率为60HZ,因此,时钟周期为:1/60s=50/3ms。在每个时钟周期中,CPU花2ms执行中断任务。因此,CPU用于时钟中断解决的时间比率为:2(50/3)=6/50=12%。CH2 应用题参照答案1 下列指令中哪些只能在核心态运营? (1) 读时钟日期;(2)访管指令;(3)设时钟日期;(4)加载PSW;(5)置特殊寄存器;(6) 变化存储器映象图;(7) 启动I/O指令。答:(3),(4),(5),(6),(7)。2 假设有一种低档调度算法是让“近来使用解决器较少的进程”运营,试解释这种算法对“I/O繁重”型作业有利,但并不是永远不受理“解决器繁重”型作业。答:由于I/O繁忙型作业忙于I/O,因此它CPU用得少,按调度方略能优先执行。同样因素一种进程等待CPU足够久时,由于它是“近来使用解决器较少的进程”,就能被优先调度,故不会饥饿。3 并发进程之间有什么样的互相制约关系?下列平常生活中的活动是属哪种制约关系:(1)踢足球,(2)吃自助餐,(3)图书馆借书,(4)电视机生产流水线工序。答:并发进程之间的基本互相制约关系有互斥和同步两种。其中(1)、(3)为互斥问题。(2)、(4)为同步问题。4 在按动态优先数调度进程的系统中,每个进程的优先数需定期重新计算。在解决器不断地在进程之间交替的状况下,重新计算进程优先数的时间从何而来?答:许多操作系统重新计算进程的优先数在时钟中断解决例程中进行,由于中断是随机的,遇到哪个进程,就插入哪个进程中运营解决程序,并把解决时间记在这个进程的账上。5 若后备作业队列中档待运营的同步有三个作业J1、J2、J3,已知它们各自的运营时间为a、b、c,且满足ab0可见,采用短作业优先算法调度才干获得最小平均作业周转时间。6 若有一组作业J1,Jn,其执行时间依次为S1,Sn。如果这些作业同步达到系统,并在一台单CPU解决器上按单道方式执行。试找出一种作业调度算法,使得平均作业周转时间最短。答:一方面,对n个作业按执行时间从小到大重新进行排序,则对n个作业:J1,Jn,它们的运营时间满足:S1 S2 S(n-1)Sn。那么有: T=S1 +( S1+S2)+ (S1 + S2+ S3)+(S1 + S2+ S3+ Sn)/n =nS1 +( n-1)S2+ (n-3)S3+ Sn/n =(S1 + S2+ S3+ Sn)-0S1+1S2 +2S3 +(n-1) Sn/n由于任何调度方式下,S1 + S2+ S3+ Sn为一种拟定的数,而当S1 S2 S(n-1)Sn 时才有:0S1+1S2 +2S3 +(n-1) Sn的值最大,也就是说,此时T值最小。因此,按短作业优先调度算法调度时,使得平均作业周转时间最短。7 假定执行表中所列作业,作业号即为达到顺序,依次在时刻0按顺序1、2、3、4、5进入单解决器系统。1) 分别用先来先服务调度算法、时间片轮转算法、短作业优先算法及非强占优先权调度算法算出各作业的执行先后顺序(注意优先权高的数值小);2) 计算每种状况下作业的平均周转时间和平均带权周转时间。作业号执行时间优先权1234510121531342答:(1) 采用FCFS算法调度作业,运作状况:执行顺序 执行时间 等待时间 开始时间 完毕时间 周转时间 带权周转时间 1 10 0 0 10 10 1 2 1 10 10 11 11 11 3 2 11 11 13 13 6.5 4 1 13 13 14 14 14 5 5 14 14 19 19 3.8作业平均周转时间 T=(10+11+13+14+19)/5=13.4作业平均带权周转时间 W=(1+11+6.5+14+3.8)/5=7.26(2) 采用RR算法调度作业,若令时间片长=1,各作业执行状况为:1、2、3、4、5、1、3、5、1、5、1、5、1、5、1、1、1、1、1。作业 执行时间 提交时间 完毕时间 周转时间 带权周转时间 1 10 0 19 19 1.9 2 1 0 2 2 2 3 2 0 7 7 3.5 4 1 0 4 4 4 5 5 0 14 14 2.8 作业平均周转时间 T=(19+2+7+4+14)/5=9.2作业平均带权周转时间 W=(1.9+2+3.5+4+2.8)/5=2.84(3) 采用SJF算法调度作业,运作状况:执行顺序 执行时间 等待时间 开始时间 完毕时间 周转时间 带权周转时间 2 1 0 0 1 1 1 4 1 1 1 2 2 2 3 2 2 2 4 4 2 5 5 4 4 9 9 1.8 1 10 9 9 19 19 1.9作业平均周转时间 T=(1+2+4+9+19)/5=7作业平均带权周转时间 W=(1+2+2+1.8+1.9)/5=1.74(4) 采用非剥夺优先权算法调度作业,运作状况:执行顺序 优先数 执行时间 等待时间 周转时间 带权周转时间 2 1 1 0 1 1 5 2 5 1 6 1.2 1 3 10 6 16 1.6 3 3 2 16 18 9 4 4 1 18 19 19 作业平均周转时间 T=(1+6+16+18+19)/5=12作业平均带权周转时间 W=(1+1.2+1.6+9+19)/5=6.368 对某系统进行监测后表白平均每个进程在I/O阻塞之前的运营时间为T。一次进程切换的系统开销时间为S。若采用时间片长度为Q的时向片轮转法,对下列多种状况算出CPU运用率。1)Q 2)QT 3)SQT 4QS 5Q接近于0答:1)Q= CPU运用率=T/(T+S)2)QT CPU运用率=T/(T+S)3)TQS CPU运用率=Q/(Q+S)4) Q=S CPU运用率=50%5) Q0 CPU运用率09 有5个待运营的作业,各自估计运营时间分别是:9、6、3、5和x,采用哪种运营顺序使得平均响应时间最短?答:按照最短作业优先的算法可以使平均响应时间最短。X取值不定,按照如下状况讨论:1) x3 顺序为:x,3,5,6,92) 3x5 顺序为:3,x,5,6,93) 5x6 顺序为:3,5,x,6,94) 6x9 顺序为:3,5,6,x,95) 90是什么算法?(2) 若0是什么算法答:(1) 是先进先出算法。由于在就绪队列中的进程比在CPU上运营的进程的优先数提高得快,故进程切换时,先进入就绪队列的进程优先权就越高。(2) 是后进先出算法。由于在就绪队列中的进程比在CPU上运营的进程的优先权下降得快,故后进入就绪队列的进程此先进入的进程的优先权高。17 17 有一种四道作业的操作系统,若在一段时间内先后达到6个作业,它们的提交和估计运营时间由下表给出:作业 提交时间 估计运营时间(分钟) 1 8:00 60 2 8:20 35 3 8:25 20 4 8:30 25 5 8:35 5 6 8:40 10 系统采用SJF调度算法,作业被调度进入系统后半途不会退出,但作业运营时可被更短作业抢占。(1)分别给出6个作业的执行时间序列、即开始执行时间、作业完毕时间、作业周转时间。(2)计算平均作业周转时间。答:执行顺序 提交时间 执行时间 开始时间 完毕时间 周转时间 J1 8:00 60 8:00 9:00 60 J5 8:35 5 9:00 9:05 30 J6 8:40 10 9:05 9:15 35 J3 8:25 20 9:15 9:35 70 J4 8:30 25 9:35 10:00 90 J2 8:20 35 10:00 10:35 135作业平均周转时间T=(60+30+35+70+90+135)/6=70注意,J1被调度运营后,直到它执行结束,才会引出作业调度程序工作。因此,J2至J6虽在J1执行期间进入,但未被调度,均在等待。当J1撤离后,作业调度程序工作,按SJF算法,显然有执行顺序:J5、J6、J3、J4、和J2。18 有一种具有两道作业的批解决系统,作业调度采用短作业优先的调度算法,进程调度采用以优先数为基本的抢占式调度算法,在下表所示的作业序列,作业优先数即为进程优先数,优先数越小优先级越高。作业名 达到时间 估计运营时间 优先数A 10:00 40分 5B 10:20 30分 3C 10:30 50分 4D 10:50 20分 6(1)列出所有作业进入内存时间及结束时间。(2)计算平均周转时间。答:每个作业运营将通过两个阶段:作业调度(SJF算法)和进程调度(优先数抢占式)。此外,批解决最多容纳2道作业,更多的作业将在后备队列等待。进程就绪队列作业后备队列时间(分钟) 10:00 10:20 10:30 10:50 11:10 12:00 12:20A B A C DA D D C CPU(1) 10:00,作业A达到并投入运营。(2) 10:20,作业B达到且优先权高于作业A,故作业B投入运营而作业A在就绪队列等待。(3) 10:30,作业C达到,因内存中已有两道作业,故作业C进入作业后备队列等待。(4) 10:50,作业B运营结束,作业D达到,按SJF短作业优先算法,作业D被装入内存进入就绪队列。而由于作业A的优先级高于作业D,故作业A投入运营。(5) 11:10,作业A运营结束,作业C被调入内存,且作业C的优先级高于作业D,故作业C投入运营。(6) 12:00,作业C运营结束,作业D投入运营。(7) 12:20,作业D运营结束。作业 进入内存时间 运营结束时间 A 10:00 11:10 B 10:20 10;50 C 11:10 12:00 D 10:50 12:20各作业周转时间为:作业A 70,作业B 30,作业C 90,作业D 90。平均作业周转时间为70分钟。19 某多道程序设计系统供顾客使用的主存为100K,磁带机2台,打印机1台。采用可变分区内存管理,采用静态方式分派外围设备,忽视顾客作业I/O时间。既有作业序列如下:作业号 进入输入井时间 运营时间 主存需求量 磁带需求 打印机需求 1 8:00 25分钟 15K 1 1 2 8:20 10分钟 30K 0 1 3 8:20 20分钟 60K 1 0 4 8:30 20分钟 20K 1 0 5 8:35 15分钟 10K 1 1 作业调度采用FCFS方略,优先分派主存低地址区且不准移动已在主存的作业,在主存中的各作业平分CPU时间。现求:(1)作业被调度的先后顺序?(2)所有作业运营结束的时间?(3)作业平均周转时间为多少?(4)最大作业周转时间为多少?答:(1)作业调度选择的作业顺序为:作业1、作业3、作业4、作业2和作业5。 (2)所有作业运营结束的时间9:30。 (3)周转时间:作业1为30分钟、作业2为55分钟、作业3为40分钟、作业4为40分钟和作业5为55分钟。 (4)平均作业周转时间=44分钟。 (5) )最大作业周转时间为55分钟。20 某多道程序设计系统采用可变分区内存管理,供顾客使用的主存为200K,磁带机5台。采用静态方式分派外围设备,且不能移动在主存中的作业,忽视顾客作业I/O时间。既有作业序列如下:作业号 进入输入井时间 运营时间 主存需求量 磁带需求 A 8:30 40分钟 30K 3 B 8:50 25分钟 120K 1 C 9:00 35分钟 100K 2 D 9:05 20分钟 20K 3 E 9:10 10分钟 60K 1 现求:(1)FIFO算法选中作业执行的顺序及作业平均周转时间?(2)SJF算法选中作业执行的顺序及作业平均周转时间?答:(1) FIFO算法选中作业执行的顺序为:A、B、D、C和E。作业平均周转时间为63分钟。(2) SJF算法选中作业执行的顺序为:A、B、D、E和C。作业平均周转时间为58分钟。CH3 应用题参照答案1 有三个并发进程:R负责从输入设备读入信息块,M负责对信息块加工解决;P负责打印输出信息块。今提供;1) 一种缓冲区,可放置K个信息块;2) 二个缓冲区,每个可放置K个信息块;试用信号量和P、V操作写出三个进程对的工作的流程。答:
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 解决方案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!