1、2-12假设系统有四道作业,他们的提交时间及估计执行时间(以下是为单位)如下表所示。在单道批处理系统中,采用先来先服务、最短作业优先和响应比高者优先的调度算法时,分别计算下表列出作业的平均周转时间。作业号提交时间(小时)估计运行时间(小时)12348.009.009.5010.202.01.20.50.3计算机采用CSCF、SJN、RHN的平均周转时间和平均带权周转时间:提交时间估计运行时间开始运行时刻FCFS SJN RHN完成时刻8.0 8.0 8.010.0 10.8 10.511.2 10.0 10.011.7 10.5 11.710.0 10.0 10.011.2 12.0 11.7
2、11.7 10.5 10.512.0 10.8 12.0 2.05/3.3071.65/1.8751.875/2.81251)FCFS 作业运行程序:1.2.3.4 各作业的周转时间Ti和平均周转时间T:T1=10.00-8.00=2.0 T2=11.2-9.00=2.2T3=11.7-9.5=2.2 T4=12.0-10.2=1.8T=(T1+T2+T3+T4)/4=(2.0+2.2+2.2+1.8)/4=8.2/4=2.05各个作业的平均带权周转时间W计算如下W=(2/2+2.2/1.2+2.2/0.5+1.8/0.3)=(1+1.83+4.4+6)/4=3.3072)SJN 作业运行程序
3、:T1=10.00-8.00=2.0 T2=12-9.00=3T3=10.5-9.5=1.0 T4=10.8-10.2=0.6T=( T1+T2+T3+T4)/4=(2.0+3.0+1.0+0.6)/4=6.6/4=1.65W=(2/2+3/1.2+1/0.5+0.6/0.3)/4=1.8753)RHN 作业运行程序: 先选择作业1 从8.00-10.00。当作业1完成时,究竟选谁运行,只有通过计算,选择响应比较高者运行: 作业2的响应比=(10-9.0)+1.2)/1.2=1.83 作业3的响应比=(10-9.5)+0.5)/0.5=2.0 作业4还未到,只能选作业3运行。作业3进行到 10
4、.5结束,再计算剩余的作业2和4:作业2的响应比=(10.5-9.0)+1.2)/1.2=2.25作业4的响应比=(10.5-10.2)+0.3)/0.3=2 选作业2运行。 作业2到11.7完成。最后运行作业4。运行到12.0全部结束。各个作业的周转时间计算如下:T1=2 T2=11.7-9=2.7 T3=10.5-9.5=1 T4=12-10.2=1.8各个作业的平均周转时间计算如下:T=(2+2.7+1+1.8)/4=1.875各个作业的平均带权周转时间计算如下:W=(2/2+2.7/1.2+1/0.5+1.8/0.3)/4=2.81253-8有一容量为100的循环缓冲区,有多个并发执行
5、进程通过该缓冲区进行通信。为了正确地管理缓冲区,系统设置了两个读写指针分别为IN、OUT。IN 和OUT的值如何反映缓冲区为空还是满的情况。首先这里的IN和OUT分别表示读写指针,而不是信号量。在系统初启时,环行缓冲区为空,此时IN和OUT都初始化为0。当并发进程通过环行缓冲区通信时,写进程不断的写,读进程不断的读,使得读写指针不断变化。写进程的速度太快,缓冲区会满;读进程的速度太快,缓冲区会空。已知循环缓冲区的容量为100,则当(IN+1)%100=OUT时,说明缓冲区已满。当IN=OUT时,说明缓冲区已空。初始化时,IN=OUT=0,一段时间以后:B1 B2B3B4 OUT IN3-15设
6、有8个进程M1,M2,.M8,它们有如图3.16所示的优先关系,试用P、V操作实现这些进程间的同步。M1:M2:M3:M4:P(s12);P(s13);P(s14);V(s12);V(s13);V(s26);V(s36);V(s47);V(s14);V(s38);附加:m个同类资源,n个进程,每个进程的对资源的最大需求量: 当mn时,每个进程最多可以请求m/n个该类资源 当m=n时,每个进程最多可以请求1个该类资源 当mn时,每个进程最多可以请求(m+n-1)/n个该类资源)3-21考虑某一系统,它有四类资源R1,R2,R3,R4,有5个并发进程P0,P1,P2,P3,P4。请按照银行家算法回
7、答下列问题:分配向量最大需求量R1R2R3R4P0P175P26P3P4当前剩余资源向量(1)个进程的最大资源请求和分配的资源矩阵及系统当前的剩余资源向量如图3.18所示,计算各进程的剩余资源请求向量组成的矩阵。(2)系统当前处于安全状态吗?(3)当进程P2申请的资源分别为(1,0,0,1)时,系统能立即满足吗? (1)最大需求矩阵分配矩阵剩余请求矩阵00120000175010000750Max=2356Allocation=1354Need=1002065206320020065600140642剩余资源向量:Available=(1502)(2)当前系统是安全的。判断系统是否安全,只要检
8、查系统剩余资源向量能否对各进程的剩余请求向量找到一个进程完成序列,当按照这个序列为各进程分配资源时,各进程都能成功完成。若能找到,则系统是安全的,否则,为不安全。先找到p0,因为p0已满足最大资源请求,它可以完成,释放其占有的资源,使系统剩余资源向量为(1514)之后,系统剩余资源向量(1514),可满足进程p2,使p2可以完成,释放其占有的资源,使系统剩余资源向量为(2868)之后无论选哪一个进程都可以成功完成。故找到的进程完成序列可为:p0,p2,p4,p3,p1;或p0,p2,p3,p1,p4等,故系统是安全的。(3)因系统剩余可用向量为(1502),p2的剩余请求向量为(1002),即
9、(1502)(1002)。故,当p2提出(1001)请求时,能满足。进程完成序列:p0,p2,p4,p3,p1。3-作业 生产进程两个P操作顺序互换会发生什么现象?无论是生产者还是消费者,P操作的顺序是重要的,应该将互斥使用的信号量P操作放在紧挨临界区的位置,如果把生产者进程中的两个P操作交换顺序,当缓冲区满时,生产者欲向缓冲区放产品时,将在P(empty)上等待,但它已得到了使用缓冲区的权力。若此后,消费者欲取产品时,由于申请使用缓冲区不成功,它将在P(mutex)上等待,从而导致生产者等待消费者取走产品,而消费者却在等待生产者释放缓冲区,这种相互等待是无休止的,从而造成系统死锁。4-14考
10、虑有一个可变分区系统,含有如下顺序的空闲区:10K,40K,20K,18K,7K,9K,12K和15K现有请求分配存储空间的序列:(1)12K;(2)10K;(3)9K.若采用首次适应算法时,将分配哪些空间区;若采用最佳、最坏适应算法呢?(1)若采用首次适应算法12K的请求,将分配40K的空闲块,40K变为剩余的(40-12)K=28K;空闲队列变为:10K28K20K18K7K9K12K和15K;10K的请求将分配10K的空闲块,空闲队列变为:28K20K18K7K9K12K和15K;9K的请求将分配28K的空闲块,空闲队列变为(28-9)=19K20K18K7K9K12K和15K;(2)最
11、佳适应算法12K的请求将分配12K的空闲块,空闲队列变为:10K40K20K18K7K9K15K;40K20K18K7K9K15K;9K的请求将分配9K的空闲块,空闲队列变为:40K20K18K7K15K;(3)最坏适应算法12K的请求将分配40K的空闲块,空闲队列变为:10K28K20K18K7K9K15K;10K的请求将分配28K的空闲块,空闲队列变为:20K18K7K9K12K15K;9K的请求将分配20K的空闲块,空闲队列变为:11K18K7K12K15K4-15有如图4.32所示的页表中的虚地址与物理地址之间的关系,即该进程分得6个主存块。页的大小为4096.给出对应下面虚地址的物理
12、地址。(1)20;(2)5100;(3)8300;(4)47000; 解:(1)虚地址20变为页号0和页内偏移20 由页号查页表得0页对应内存块号为2,可计算得物理地址=块号*页的大小+页内偏移=2*4096+20=8212(2)虚地址5100变为页号1和页内偏移1004(5100/4096) 由页号查页表得1页对应内存块号为1,可计算得物理地址=块号*页的大小+页内偏移=1*4096+1004=5100(3)虚地址8300变为页号2和页内偏移108 由页号查页表得2页对应内存块号为6,可计算得物理地址=块号*页的大小+页内偏移=6*4069+108=24684(4)虚地址47000变为页号11和页内偏移1944 117 页号越界。 . .
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1