1、20062007 学年度第二 学期一、单项选择题(每题1分,共 20分)1操作系统的发展过程是(C )A、原始操作系统,管理程序,操作系统B、原始操作系统,操作系统,管理程序C、管理程序,原始操作系统,操作系统D、管理程序,操作系统,原始操作系统2用户程序中的输入、输出操作实际上是由(B )完成。A、程序设计语言B、操作系统C、编译系统 D、标准库程序3 进程调度 的对象和任务分别是(C )。A、作业,从就绪队列中按一定的调度策略选择一个进程占用CPU B、进程,从后备作业队列中按调度策略选择一个作业占用CPU C、进程,从就绪队列中按一定的调度策略选择一个进程占用CPU D、作业,从后备作业
2、队列中调度策略选择一个作业占用CPU 4支持程序浮动的地址转换机制是(A)A、动态重定位 B、段式地址转换C、页式地址转换 D、静态重定位5在可变分区 存储管理中,最优适应分配算法要求对空闲区表项 按(C )进行排列。A、地址从大到小 B、地址从小到大C、尺寸从小到大 D、尺寸从大到小6设计批处理多道系统时,首先要考虑的是(B )。A、灵活性和可适应性B、系统效率和吞吐量C、交互性和响应时间 D、实时性和可靠性7当进程因时间片用完而让出处理机时,该进程应转变为(B )状态。A、等待B、就绪 C、运行 D、完成8文件的保密是指防止文件被(C )。A、篡改 B、破坏C、窃取 D、删除9 若系统中有
3、五个并发 进程涉及某个相同的变量A,则变量 A的相关临界区是由(D )临界区构成。A、2 个 B、3 个 C、4 个D、5 个10按 逻辑结构 划分,文件主要有两类:(A)和流式文件。A、记录式文件 B、网状文件 C、索引文件 D、流式文件11UNIX中的文件系统采用(D)。A、网状文件 B、记录式文件 C、索引文件D、流式文件12文件系统的主要目的是(A)。A、实现对文件的按名存取 B、实现虚拟存贮器C、提高外围设备的输入输出速度 D、用于存贮系统文档13文件系统中用(D)管理文件。A、堆栈结构 B、指针 C、页表D、目录14为了允许 不同用户 的文件具有 相同 的文件名,通常在文件系统中采
4、用(B )。A、重名翻译 B、多级目录 C、约定 D、文件名15在多进程的并发系统中,肯定不会因竞争(C)而产生死锁。A、打印机 B、磁带机C、CPU D、磁盘16一种既有利于短小作业又兼顾到长作业的作业调度算法是(C )。A、先来先服务 B、轮转C、最高响应比优先 D、均衡调度17两个进程合作完成一个任务。在并发执行中,一个进程要等待其合作伙伴发来消息,或者建立某个条件后再向前执行,这种制约性合作关系被称为进程的(B )。A、互斥B、同步 C、调度 D、伙伴18当每类资源只有一个个体时,下列说法中不正确 的是(C)。A、有环必死锁 B、死锁必有环C、有环不一定死锁 D、被锁者一定全在环中19
5、数据文件 存放在到存储介质上时,采用的逻辑组织 形式是与(A)有关的。A、文件逻辑结构 B、存储介质特性C、主存储器管理方式 D、分配外设方式20在 单处理器 的多进程系 统中,进程什么时候占用处理器和能占用多长时间,取决于(B)。A、进程相应的程序段的长度B、进程自身和进程调度策略C、进程总共需要运行时间多少 D、进程完成什么功能二、填空题(每空2 分,共 20 分)1若信号量S的初值定义为10,则在 S 上调用了16 次 P 操作和 15 次 V 操作后 S 的值应该为(9)。2进程调度的方式通常有(抢占)和(非抢占)两种方式。3每个索引文件都必须有一张(索引结点)表,其中的地址登记项用来
6、指出文件在外存上的位置信息。4在一请求分页系统中,假如一个作业的页面走向为:4、3、2、1、4、3、5、4、3、2、1、5,当分配给该作业的物理块数为4 时(开始时没有装入页面),采用 LRU 页面淘汰算法将产生(8)次缺页中断。5信号量被广泛用于三个目的是(同步)、(互斥)和描述前趋关系。6程序并发执行时的特征是(间断性)、(失去了封闭性)、(不可再现性)和独立性。三、判断题(每题1 分,共 10 分)(T)1文件系统中分配存储空间的基本单位不是记录。(F)2具有多道功能的操作系统一定是多用户操作系统。(T)3 虚拟存储器是由操作系统提供的一个假想的特大存储器,它并不是实际的内存,其大小可比
7、内存空间大得多。(T)4批处理系统的(主要优点)是系统的吞吐量大、资源利用率高、系统的开销较小。(F)5文件系统中源程序是有结构的记录式文件。(F)6即使在多道程序环境下,普通用户也能设计用内存物理地址直接访问内存的程序。(F)7顺序文件适合建立在顺序存储设备上,而不适合建立在磁盘上。(T)8 SPOOLing 系统实现设备管理的虚拟技术,即:将独占设备改造为共享设备。它由专门负责I/O 的常驻内存进程以及输入、输出井组成。(F)9系统调用是操作系统与外界程序之间的接口,它属于核心程序。在层次结构设计中,它最靠近硬件。(F)10若系统中存在一个循环等待的进程集合,则必定会死锁。四、程序与算法(
8、共10 分)设有一缓冲池P,P中含有 20 个可用缓冲区,一个输入进程将外部数据读入P,另有一个输出进程将P 中数据取出并输出。若讲程每次操作均以一个缓冲区为单位,试用记录型信号量写出两个进程的同步算法,要求写出信号量的初值。解:semaphore mutex=1;semaphore empty=20;semaphore full=0;int in,out=0;item p 20;void Producer()while(ture)producer an item in nextp;wait(empty);wait(mutex);pin:=nextp;in:=(in+1)mod 20;sign
9、al(mutex);signal(full);void Consumer()while(ture)wait(full);wait(mutex);nextc:=pout;out:=(out+1)mod 20;signal(mutex);signal(empty);五、问答题(共16 分)某系统有A、B、C、D 四类资源可供五个进程P1、P2、P3、P4、P5 共享。系统对这四类资源的拥有量为:A 类 3 个、B 类 14 个、C 类 12 个、D 类 12 个。进程对资源的需求和分配情况如下:进程已占有资源最大需求数A B C D A B C D P1 0 0 1 2 0 0 1 2 P2 1
10、0 0 0 1 7 5 0 P3 1 3 5 4 2 3 5 6 P4 0 6 3 2 0 6 5 2 P5 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 0 P2 0 7 5 0 P3 1 0 0 2 P4 0 0 2 0 P5 0 6 4 2 存在安全序
11、列,如P1,P3,P4,P5,P2,所以安全(3)能,因为试探分配后,可用资源为1,1,0,0。可找到安全序列,所以可分配。六、计算题(第1 题 6 分;第 2 题 10 分;第 3题 8 分;共 24 分)1、某虚拟存储器的用户编程空间共32 个页面,每页为1KB,内存为16KB。假定某时刻一用户页表中已调入内存的页面的页号和物理块号的对照表如下:页号物理块号0 5 1 10 2 4 3 7 则逻辑地址0A5D(H)所对应的物理地址是什么?(6 分)0A5D(H)=0000 1010 0101 1101 2 号页对应4 号块,所以物理地址是0001 0010 0101 1101 即 125D
12、(H)。2、设有三道作业,它们的提交时间及执行时间由下表给出:作业号提交时间执行时间1 8.5 2.0 2 9.2 1.6 3 9.4 0.5 试计算在单道程序环境下,采用先来先服务调度算法和最短作业优先调度算法时的平均周转时间(时间单位:小时,以十进制进行计算;要求写出计算过程)(10分)FCFS:作业号提交时间执行时间开始时间完成时间周转时间1 8.5 2.0 8.5 10.5 2.0 2 9.2 1.6 10.5 12.1 2.9 3 9.4 0.5 12.1 12.6 3.2 平均周转时间=(2.0+2.9+3.2)/3=2.7(小时)SJF:作业号提交时间执行时间开始时间完成时间周转
13、时间1 8.5 2.0 8.5 10.5 2.0 2 9.2 1.6 11.0 12.6 3.4 3 9.4 0.5 10.5 11.0 1.6 平均周转时间=(2.0+3.4+1.6)/3=2.3(小时)3、假定当前磁头位于100 号磁道,进程对磁道的请求序列依次为55,58,39,18,90,160,150,38,180。当采用先来先服务和最短寻道时间优先算法时,总的移动的磁道数分别是多少?(请给出寻道次序和每步移动磁道数)(8 分)FCFS:服务序列依次为:55,58,39,18,90,160,150,38,180 移动的磁道数分别是:45,3,19,21,72,70,10,112,14
14、2 总的移动的磁道数是:494 SSTF:服务序列依次为:90,58,55,39,38,18,150,160,180 移动的磁道数分别是:10,32,3,16,1,20,132,10,20 总的移动的磁道数是:244 2007-2008 学年第一学期考试试卷B 操作系统一、填空题(每空 1 分,共 10 分)1.按信息交换方式不同,通道可分为三类_ 字节多路通道_、数组多路通道、选择通道。2.Linux 中,1#进程是由0#进程建立的。3作业控制方式有_脱机_方式和 _联机方式二种。4文件的逻辑结构分为_字符流的无结构文件和_记录式_的有结构文件二种。5解决死锁问题可以采用的方式中,采用死锁避
15、免策略,如银行家算法算法虽然保守,但可以保证系统时时处于安全状态。6一作业8:00 到达系统,估计运行时间为1 小时,若10:00 开始执行该作业,其响应比是 3。7 设有 8 页的逻辑空间,每页有1024 字节,它们被映射到32 块物理存储区中。那么,逻辑地址的有效位是_13_位,物理地址至少是 _15_位。二、单选题(每题 2 分,共 20 分)1操作系统的基本功能不包括(C)。A、处理器管理B、存储管理C、用户管理D、设备管理2中央处理器处于目态时,执行(A)将产生“非法操作”事件。A、特权指令B、非特权指令C、用户程序D、访管指令3一个作业被调度进入内存后其进程被调度进入CPU 运行,
16、在执行一段指令后,进程请求打印输出,此间该进程的状态变化是(C)。A、运行态就绪态等待态B、等待态就绪态运行态C、就绪态运行态等待态D、就绪态等待态运行态4在单处理器系统中,如果同时存在有个进程,则处于就绪队列中的进程最多为(C)个。A、B、C、D、5操作系统为用户提供按名存取的功能,在以下目录结构中,不能解决文件重名问题的是(A).A、一级目录结构B、二级目录结构C、树形目录结构D、以上三个答案都不对6在磁盘文件的物理结构中,(C)既适合顺序存取,又方便随机存取。A、顺序结构B、链式结构C、索引结构D、文件的目录结构7.Windows 内核使用(C)个优先级表示线程要求执行的紧迫性。A、16
17、B、30C、32D、36 8现有 3 个作业同时到达,每个作业的计算时间都是1 小时,它们在一台处理机上按单道方式运行,则平均周转时间为(B)。A、1 小时B、2 小时C、3 小时D、6 小时9通过硬件和软件的功能扩充,把原来独占的设备改造成若干用户共享的设备,这种设备称为(C)。A、存储设备B、系统设备C、虚拟设备D、并行设备10对磁盘而言,输入输出操作的信息传送单位为(C)。A、字符B、字C、块D、文件三、简答题。(每题 5 分,共 20 分)1在操作系统中,P 操作和 V 操作各自的动作是如何定义的?P 操作:P 操作一次,信号量S1 如果 S 0 表示有资源,当前进程可执行如果 S0
18、无资源,则当前进程进入队列的队尾等待,等另一进程执行V(S)操作后释放资源。此时,|S|绝对值表示等待资源进程的个数要求V 操作:V 操作一次,信号量S+1 如果 S 0(有资源,告诉其它进程可以继读)如果 S 0(等待队列中另一进程释放资源后才能执行)2 二级目录和多级目录的好处是什么?符号文件目录表和基本文件目录表是二级目录吗?二级目录和多级目录的好处是:1、层次清楚2、解决重名问题3、提高检索目录的速度符号文件目录表和基本文件目录表不是二级目录,而是实现文件共享的方法。3什么是分页?什么是分段?二者主要有何区别?分页:把程序中的逻辑地址分成大小相等的许多页,把主存储器进行分块,块的大小与
19、页的大小一致.块是进行主存空间分配的物理单位。这样,就可把作业信息按页存放到块中。分段:作业的地址空间被划分为若干个段,每个段是一组完整的逻辑信息,每个段都有自己的段号,都是从零开始编址的一段连续的地址空间,各段长度是不等的。区别:(1)段是信息的逻辑单位,它是根据用户的需要划分的,因此段对用户是可见的;页是信息的物理单位,是为了管理主存的方便而划分的,对用户是透明的。(2)页的大小固定不变,由系统决定。段的大小是不固定的,它由其完成的功能决定。(3)段式向用户提供的是二维地址空间,页式向用户提供的是一维地址空间,其页号和页内偏移是机器硬件的功能。(4)由于段是信息的逻辑单位,因此便于存贮保护
20、和信息的共享,页的保护和共享受到限制。4.外设和内存之间常用的数据传送控制方式有哪4 种?外设和内存之间常用的数据传送控制方式有:(1)程序直接控制方式(CPU 直接询问方式)(2)中断方式(3)DMA 方式(4)通道方式四、计算题(每题 10 分,共 30 分)1 若在一个单道批处理系统中4 个作业(J1,J2,J3,J4),估计它们的提交时刻和需要运行的时间如下表所示。试用SJF 算法计算各作业进入主存的时间和它们的平均周转时间。作业 J1 进入内存时间为10:00;1 分作业 J2 进入内存时间为12:30;1 分作业 J3 进入内存时间为13:30;1 分作业 J4 进入内存时间为12
21、:00;1 分平均周转时间为:(2+3+3.17+1.17)/4=2.34 6 分2一个请求分页系统中,若系统分配给一个作业的物理块数为2块,且作业的页面走向为 2,3,2,1,5,2,4,5,3,2,5,2。试用 FIFO 和 LRU 两种算法分别计算出程序访问过程中所发生的缺页次数,并计算它们各自的缺页率。(假设初始作业装入时已经依次装入了页号为1 和 2 的两个页面)(1)FIFO:(5 分)2 3 2 1 5 2 4 5 3 2 5 2 1 2 3 3 1 5 2 4 5 3 2 5 5 2 1 2 2 3 1 5 2 4 5 3 2 2 F=9/12=75%(2)LRU:(5 分)2
22、 3 2 1 5 2 4 5 3 2 5 2 1 2 3 2 1 5 2 4 5 3 2 5 2 2 1 2 3 2 1 5 2 4 5 3 2 5 F=9/12=75%3假定某移动磁盘上,处理了访问56 号柱面的请求后,现在正在70 号柱面上读信息,目前有下面的请求访问磁盘柱面的序列:73,68,100,120,60,108,8,50。请写出:(1)用最短查找时间优先算法,列出响应的次序。(2)用电梯调度算法,列出响应的次序。(1)用最短查找时间优先算法,响应的次序为68、73、60、50、8、100、108、120。(2)(5 分)用电梯调度算法,响应的次序为73、100、108、120、
23、68、60、50、8。五、综合分析题(每题10 分,共 20 分)1、设系统中有五个并发进程(P1,P2,P3,P4,P5)共享系统中的三类资源(R1,R2,R3),它们的资源总数量分别为(16,5,19),在 T0 时刻系统状态如下图所示,系统采用银行家算法实施死锁避免策略。进程最大资源需求量已分配资源数量R1 R2 R3 R1 R2 R3 P1 5 5 9 2 1 2 P2 5 3 6 4 0 2 P3 4 0 11 4 0 5 P4 4 2 5 2 0 4 P5 3 2 4 3 1 4 问题 1:判断在T0 时刻是否处于安全状态,为什么?A(1,3,2);N5=(0,1,0)A,假分配
24、P5,A(4,4,6);N2=(1,3,4)A,假分配 P2,A(8,4,8);N1=(3,4,7)A,假分配 P1,A(10,5,10);N3=(0,0,6)A,假分配 P3,A(14,5,15);作业名提交时刻运行时间(小时)SJF IN OUT J1 10:00 2 10:00 12:00 J2 10:30 1 12:30 13:30 J3 10:50 1.5 13:30 15:00 J4 11:20 0.5 12:00 12:30 作业名提交时刻运行时间(小时)J1 10:00 2 J2 10:30 1 J3 10:50 1.5 J4 11:20 0.5 N4=(2,2,1)A,假分配
25、P4,A(16,5,19).故 T0 状态是安全状态。问题 2:在 T0 时刻若进程P2 提出(1,0,1)的资源请求,是否实施分配?为什么?A(1,3,2);R2=(1,0,1)A,假分配,A(0,3,1),U2=(5,0,3);N5=(0,1,0)A,假分配P5,A(3,4,5);N2=(0,3,3)A,假分配P2,A(8,4,8);N1=(3,4,7)A,假分配P1,A(10,5,10);N3=(0,0,6)A,假分配P3,A(14,5,15);N4=(2,2,1)A,假分配P4,A(16,5,19).实施分配,因为是安全的。2、有一只最多能装2 只兔子的铁笼子,猎人仅能向笼子中放入兔子
26、(每次只能放入1 只),若笼子是满的,则猎人必须等待;饭店老板仅能从笼子中取兔子(每次只能取出 1 只),若笼子是空的则他也必须等待。假设初始时笼子是空的。定义信号量并初始化,使用P、V 操作模拟猎人和饭店老板进程之间的同步与互斥。mutex,empty,fullsemaphore;1 分mutex=1,empty=2;full=0;2分以下内容7 分cobegin pcocedure Hunter(x)begin:P(empty);P(mutex);/放兔子;V(mutex);V(full);Goto begin;pcocedure Boss(x)begin:P(full);P(mutex)
27、;/放兔子;V(mutex);V(empty);Goto begin;coend;2007-2008 学年第一学期考试试卷A 操作系统1.填空题(每空 1 分,共 10 分)1.如果操作系统具有很强的交互性,可同时供多个用户使用,但时间响应不太及时,则属于 _分时操作类型;如果操作系统可靠,时间响应及时但仅有简单的交互能力,则属于 _实时操作 _类型;如果操作系统在用户提交作业后,不提供交互能力,它所追求的是计算机资源的高利用率,大吞吐量和作业流程的自动化,则属于_批处理操作 _类型。2.虚拟设备是通过_SPOOLING _技术,把_独占 _设备变成能为若干用户_ 共享_的设备。3磁盘与主机之
28、间传递数据是以_数据块 _为单位进行的。4静态重定位在_程序装入时 _时进行;而动态重定位在_程序执行 _时进行。5进程调度负责处理机的分配工作。2.单选题(每题 2 分,共 20 分)1从用户的观点看,操作系统是(A)。A、用户与计算机之间的接口B、控制和管理计算机资源的软件C、合理地组织计算机工作流程的软件D、由若干层次的程序按一定的结构组成的有机体2用 V 操作唤醒一个等待进程时,被唤醒进程的状态变为(B)。A、等待B、就绪C、运行D、完成3信箱通信是一种(B)通信方式。A、直接通信B、间接通信C、低级通信D、信号量4某系统中有3 个并发进程,都需要同类资源4 个,则该系统不会发生死锁的
29、最少资源数是(B)个。A、9B、10C、11D、12 5既考虑作业等待时间,又考虑作业执行时间的调度算法是(A).A、响应比高者优先B、短作业优先C、优先级调度D、先来先服务6系统在(C),发生从目态到管态的转换。A、发出 P 操作时B、发出 V 操作时C、执行系统调用时D、执行置程序状态字时7在虚拟存储系统中,若进程在内存中占3 块(开始时为空),采用先进先出页面淘汰算法,当执行访问页号序列为:1、2、3、4、1、2、5、1、2、3、4、5、6 时,将产生(D)次缺页中断。A、7B、8C、9D、108作业在执行中发生了缺页中断,经操作系统处理后,应让其执行(B)指令。A、被中断的前一条B、被
30、中断的C、被中断的后一条D、启动时的第一条9(B)用作连接大量的低速和中速I/O 设备。A、选择通道B、字节多路通道C、数组多路通道D、以上都不是10一个文件的绝对路径名是从(B)开始,逐步沿着每一级子目录向下追溯,最后到指定文件的整个通路上所有子目录名组成的一个字符串。A、当前目录B、根目录C、多极目录D、二级目录六、简答题(共 20 分)1试比较进程和程序的区别(6 分)答:(1)进程是一个动态概念,而程序是一个静态概念,程序是指令的有序集合,无执行含义,进程则强调执行的过程。(2 分)(2)进程具有并行特征(独立性,异步性),程序则没有。(2分)(3)不同的进程可以包含同一个程序,同一个
31、程序在执行中也可以产生多个进程。(2 分)2产生死锁的必要条件是什么?(4 分)答:(1)互斥条件(2)不剥夺条件(3)部分分配(4)环路条件3什么是虚拟存储器,其特点是什么?(5 分)答:虚拟存储器是一种存储管理技术,其思想是把辅助存储器作为对主存储器的扩充,向用户提供一个比实际主存大得多的逻辑地址空间。(2分)其特点是:(1)程序装入时,不必将其全部读入到内存,而只需将当前需要执行的部分页或段读入到内存,就可让程序开始执行;(2)在程序执行过程中,如果需执行的指令或访问的数据尚未在内存(称为缺页或缺段),则由处理器通知操作系统将相应的页或段调入到内存,然后继续执行程序;(3)操作系统将内存
32、中暂时不使用的页或段调出保存在外存上,从而腾出空间存放将要装入的程序以及将要调入的页或段(即具有请求调入和置换功能,只需程序的一部分在内存就可执行)。(每个特点1 分)4什么是文件目录?文件目录中包含哪些信息?(5 分)答:一个文件的文件名和对该文件实施控制管理的说明信息称为该文件的说明信息,又称为该文件的目录。(2 分)文件目录中包含文件名、与文件名相对应的文件内部标识以及文件信息在文件存储设备上的始址等信息。另外还可能包含关于文件逻辑结构、物理结构、存取控制和管理等信息。(3 分)七、计算题(每题 10 分,共 30 分)1在某个多道程序系统中,供用户使用的内存空间有100K,系统采用可变
33、分区方式分配内存,优先分配内存的低地址区域且不准移动已在内存中的作业。现有一作业序列如下表所示。假设作业调度和进程调度均采用FCFS 算法,问:(1)作业执行的次序是什么?(2)各作业的周转时间(3)平均周转时间(1)作业执行次序是:A,B,D,E,C(3 分)(2)各作业的周转时间分别是:25,25,30,40,75(每个 1分,共 5 分)(3)作业平均周转时间是:(25+25+30+40+75)/5=39(2 分)2某操作系统采用可变分区分配存储管理方法,用户区为512K 且始址为0,用空闲分区表管理空闲分区。若分配时采用分配空闲区低地址部分的方案,且初始时用户区的 512K 空间空闲,
34、对下述申请序列:Req(300K),req(100K),release(300K),req(150K),req(30K),req(40K),req(60K),release(30K)回答下列问题:(1)采用首次适应算法,空闲分区中有哪些空闲块(给出图示,并给出始址、大小)?首次适应算法(5 分)(用阴影表示空闲)(图 2 分)150K作业40K 作业60K 作业100K作业(指出空闲分区大小和始址,每个1 分)分区大小起始地址0 1 2 30K 20K 112K 150K 280K 400K(2)采用最佳适应算法,空闲分区中有哪些空闲块(给出图示,并给出始址、大小)?(图 2 分)150K作业
35、60K 作业100K作业40K 作业(指出空闲分区大小和始址,每个1 分)分区大小起始地址作业名到达时间运行时间(分钟)要求内存量A 8:00 25 15K B 8:15 15 60K C 8:20 20 50K D 8:30 20 20K E 8:35 15 10K 0 150K 180K 220K 280K 300K 400K 512K-1 512K-1 150K 210K 300K 400K 430K 470K 0 1 2 30K 42K 90K 400K 470K 210K 3假定某移动磁盘上,磁头的当前位置为100 磁道,磁头正向磁道号增加方向移动。现有一磁盘读写请求队列:23,37
36、6,205,132,19,61,190,398,29,4,18,40。请写出:(1)用最短寻道时间优先算法,列出响应的次序,并计算平均寻道长度。最短寻道时间优先算法(5分)响应的次序为:132、190、205、61、40、29、23、19、18、4、376、398。(3分)(可以用图表示)平均寻道长度:58.3(2 分)(2)用电梯调度算法,列出响应的次序,并计算平均寻道长度。电梯调度算法(5 分)响应的次序为:132、190、205、376、398、61、40、29、23、19、18、4。(3分)(可以用图表示)平均寻道长度:57.7(2 分)八、综合分析题(每题10 分,共 20 分)1、
37、某系统有R1、R2 和 R3 共三种资源,在T0 时刻 P1、P2、P3 和 P4 这 4 个进程对资源的占用和需求情况如下表所示,此时系统的可用资源向量为(2,1,2)。进程最大资源需求量已分配资源数量R1 R2 R3 R1 R2 R3 P1 3 2 2 1 0 0 P2 6 1 3 4 1 1 P3 3 1 4 2 1 1 P4 4 2 2 0 0 2 问题1:将系统中各种资源总数和此刻各进程对各资源的需求数目用向量或矩阵表示出来;系统中资源总量为(9,3,6)(1 分)各进程对资源的需求量为:(每个 1 分,共 4 分)2,2,2 2,0,2 1,0,3 4,2,0 问题 2:如果此时P
38、1 和 P2 均发出资源请求向量request(1,0,1),为了保证系统的安全性,应该如何分配资源给这两个进程?说明你所采用策略的原因。若此时 P1发出资源请求request1(1,0,1),按银行家算法进行检查:request1(1,0,1)=need1(2,2,2)request1(1,0,1)=available(2,1,2)试分配并修改相应数据结构,资源分配情况如下:进程allocation need available P1 P2 P3 P4 2,0,1 4,1,1 2,1,1 0,0,2 1,2,1 2,0,2 1,0,3 4,2,0 1,1,1 再利用安全性算法检查系统是否安全
39、,可用资源Available(1,1,1)已不能满足任 何 进 程,故 系 统 进入不安 全 状 态,此 时 系统不能 将 资 源分 配 给P1。(2 分)若此时 P2发出资源请求request2(1,0,1),按银行家算法进行检查:Request2(1,0,1)=need2(2,0,2)Request2(1,0,1)=available(2,1,2)试分配并修改相应数据结构,资源分配情况如下:进程allocation need available P1 P2 1,0,0 5,1,2 2,2,2 1,0,1 1,1,1 P3 P4 2,1,1 0,0,2 1,0,3 4,2,0 再利用安全性算
40、法检查系统是否安全,可得此时刻的安全性分析情况:进程Work Need Allocation Work+Allocation Finish P2 P3 P4 P1 1,1,1 6,2,3 8,3,4 8,3,6 1,0,1 1,0,3 4,2,0 2,2,2 5,1,2 2,1,1 0,0,2 1,0,0 6,2,3 8,3,4 8,3,6 9,3,6 True True True true 从上述分析中可以看出,此时存在一个安全序列(P2,P3,P4,P1),故该状态是安全的,可以立即将P2所申请的资源分配给它。(3 分)2、有三个进程PA、PB 和 PC 合作解决文件打印问题:PA 将文件
41、记录从磁盘读入主存的缓冲区1,每执行一次读一个记录;PB 将缓冲区1 的内容复制到缓冲区2,每执行一次复制一个记录;PC 将缓冲区2的内容打印出来,每执行一次打印一个记录。缓冲区的大小等于一个记录的大小。请用PV 操作来保证文件的正确打印。Empty1,empty2,full1,full2:semaphore;(1 分)Empty1=empty2=1;(1 分)Full1=full2=0;(1 分)Main()(1 分)Cobegin PA();PB();PC();coend;PA()(2 分)While(1)从磁盘读一个记录;P(empty1);将记录存入缓冲区1;V(full1);PB()(2 分)While(1)P(full1);从缓冲区1 中取出记录;V(empty1);P(empty2);将记录存入缓冲区2;V(full2);PC()(2 分)While(1)P(full2);从缓冲区2 中取出记录;V(empty2);打印记录;