A.-m~1B.-m~0C.-m-1~nD.-m-1~n-1
16)下面有关管程的叙述中,正确的是(D)
A.管程是进程间互斥的机制,它保证进程互斥地访问共享变量,并方便地阻塞和唤醒进程。
B.管程和P.V一样,同步操作分散在各个进程中。
C.管程和P.V一样,使用不当就可能导致进程死锁。
D.一个管程定义了一个数据结构和能在该数据结构上并发执行进程所的一组操作,这组操作能同步进程和改变管程中的数据。
17)在存储管理的各种方法中,主要考虑程序是否需要一次性装入、程序是否被装入到连续的物理内存中、能否实现存储扩充等问题。
请问能够实现程序部分装入不连续物理内存便可运行的存储管理方法是(C)。
A.分区存储管理B.纯分页存储管理
C.请求分页存储管理D.请求分段存储管理
18)文件系统采用二级目录结构,这样可以(A)。
A.缩短访问文件存储器时间B.实现文件共享
C.节省主存空间D.解决不同用户之间的文件名的冲突问题
19)UNIX系统命令catfile1>>file2功能是(B)。
A.将文件file2的内容添加到文件file1的末尾
B.将文件file1的内容添加到文件file2的末尾
C.连接文件file1和file2
D.显示文件file1和file2
20)在下列进程调度算法中,可能引起进程长时间得不到运行的算法是(D)。
A.可抢占式静态优先数算法B.不可抢占式动态优先数算法
C.时间片轮转算法D.不可抢占式静态优先数算法
21)在UNIX中,文件系统和设备驱动程序之间的接口是(C)
A.函数调用B.文件参数C.设备开关表D.系统调用
22)在设备管理中,用来实现设备分配的四个数据结构中,每个设备一张,描述设备特性和状态,反映设备的特性、设备和控制器的连接情况的数据结构是(A)。
A.设备控制表(DCT)B.系统设备表(SDT)
C.控制器控制表(COCT)D.通道控制表(CHCT)
23)在Windows的FAT文件系统中,对磁盘空闲空间的管理采用(C)
A.空白文件表法B.成组链接法C.位示图法D.索引表法
24)下列文件系统中,不能实现文件别名机制的是(B)
A.Windows的NTFS文件系统B.Windows的FAT文件系统
C.Linux的EXT2文件系统D.Unix的HPFS文件系统。
二、填空题
1.把作业装入内存时完成地址变换的方式称静态地址再定位,而在作业执行期间(访问到指令或数据)才进行地址变换的方式称为动态地址再定位。
2.死锁产生的四个必要条件是互斥执行、保持和等待、不可剥夺和循环等待。
3.通道又称为I/O处理机,它能完成内存和外设之间的信息传输,并与CPU并行工作。
4.在存储管理中,引入快表的目的是_为了加快查询变换标的速度。
5.设某作业的的段表如下:
段号
基地址
段长
0
1
2
3
4
219
2300
90
1327
1952
600
14
100
580
96
那么,逻辑地址(2,88)对应的物理地址是90+88。
逻辑地址(4,100)对应的物理地址是越界。
6.在操作系统中,把不可中断执行的操作称为原语。
7.在UNIX文件管理系统中,为了对磁盘空间的空闲块进行有效的管理,采用的方法是成组链接法。
8.UNIX操作系统将进程控制块分成PROC结构和USER结构两部分。
9.实时系统分为实时控制和实时信息处理两大类,实时控制系统主要用于
.工业生产的过程控制、航天系统的跟踪和控制,武器的制导等对响应速度要求非常高的系统,实时信息处理主要用于售票系统、信息查询和检索等对响应速度要求不是很高的系统中。
10.在作业调度算法中,相应比高者优先算法是先来先服务(FCFS)和最短作业优先调度算法(SJF)的折衷,它既考虑了作业到达的时间,又考虑了作业的长短。
11.在存储管理中,虚拟存储管理是利用了程序执行时的局部性原理。
在纯分页存储管理、请求分页存储管理、纯分段存储管理和请求分段存储管理这四种方法中,请求分页存储管理和请求分段存储管理方法可以实现存储扩充,因此把具有存储扩充功能的存储系统也叫做虚拟存储系统。
12.在请求分页存储管理中,为了减少访问内存的次数采用_快表(或者关联寄存器)。
13.在段页式存储管理中,用分段方法来管理逻辑存储空间,用分页方法来管理物理存储空间。
14.引入线程的系统中,将进程作为资源分配的单位,线程作为单位。
因此将线程称为“轻量级”的进程。
15.当系统采用资源有序分配方法来预防死锁时,破坏了产生死锁的四个必要条件中的环路条件,而采用静态资源分配方法预防死锁时可以破坏产生死锁的四个必要条件中的保持和等待条件。
16.在操作系统中,把不可中断执行的操作称为原语。
17.引入通道和中断技术的目的是控制设备完成内存和外设之间的信息传输,提高I/O设备与CPU并行工作的能力。
18.设备独立性是指用户在编制程序时所使用的设备与物理设备无关,它的优点是可以提高设备分配的灵活性和可扩展性。
19.设备管理中引入缓冲的原因是为了解决CPU和I/O设备之间速度不匹配的问题,从而提高CPU、通道和I/O设备之间的并行性,减少CPU被中断的次数。
20.在UNIX文件管理系统中,为了对磁盘空间的空闲块进行有效的管理,采用的方法是成组链接法。
21.文件系统为了实现按名存取的功能,通过查找文件目录表来实现的。
三、判断改错题
1.分页存储管理中页面的大小是和主存储块的大小是不相等的。
(×)不相等
2.进程同步是进程与进程间的间接制约问题,进程互斥是进程与进程间的直接制约问题(√)。
3.位示图只能用在磁盘空间的管理。
(√)。
4.访管指令能引起访管中断,它本身属于特权指令(×)。
不属于特权指令
5.在分时系统中,响应时间
时间片
用户数,因此为改善系统的响应时间,常用的原则是使时间片越小越好。
(×)。
越小往往越引起系统震荡
6.逻辑文件有两种形式流式文件和记录式文件,源程序文件属于记录式文件,学生选课文件属于流式文件。
(×)。
流式记录式
7.当某进程执行P操作时,首先对S信号量减1,当S≤0时表示资源得不到满足,系统将执行P操作的进程插入等待队列(×)。
S<0
8.移臂调度的目标是使磁盘旋转周数最少(×)。
磁头臂移动次数最少
9.在有m个进程的系统中出现死锁时,死锁进程的个数K应该满足的条件是
。
(√)。
10.多道程序设计是利用了CPU和通道并行工作来提高系统的效率(√)。
四、简答题
1.什么是线程?
它与进程的区别是什么?
参考答案:
线程:
也叫轻量级的进程,它是一个基于进程的运行单位,它可以不占有资源,一个进程可以有一个线程或者多个线程(至少一个),这些线程共享此进程的代码、Data和部分管理信息,但是每个线程都有它自己的PC、Stack和其他。
线程与进程的区别主要表现在以下几个方面:
(1)地址空间和资源不同:
进程间相互独立;同一进程的各个线程之间却共享它们。
(2)通信不同:
进程间可以使用IPC通信,线程之间可以直接读写进程数据段来进行通信;但是需要进程同步和互斥手段的辅助,以保证数据的一致性。
(3)调度和切换不同:
线程上下文切换比进程上下文的切换要快得多。
2.缓冲区的作用是什么?
试述UNIX为块设备设置多缓冲的目的是什么?
参考答案:
缓冲区的作用是:
(1)缓和CPU和I/O设备之间速率不匹配的矛盾
(2)减少对CPU的中断频率,放宽对中断响应时间的限制
(3)提高CPU和I/O设备之间的并行性
UNIX为块设备设置多缓冲的目的是:
为了提高基本速率相差比较大的块设备之间的吞吐量,并减少对CPU的中断次数。
3.什么是分布式操作系统?
主要特点是什么?
参考答案:
分布式系统是指把多个处理机通过线路互联而构成的系统,此系统的处理和控制分布在各个处理机上。
主要特点:
分布性,自治性,模块性,并行性。
4.图中将一组进程分为4类,假定各类进程之间采用优先级调度,每类进程内部采用时间片轮转调度。
请简述P1,P2,P3,P4,P5,P6,P7,P8进程的调度过程。
答:
各类类进程之间采用优先级调度,而同类进程内部采用时间片轮转调度。
先进行优先级4的进程调度,P1,P2,P3按时间片进行轮转;等P1,P2,P3均执行完,执行优先级3的进程P4,P5。
同理P4,P5按时间片轮转,运行完成后调度优先级1的进程P6,P7,P8。
进程P6,P7,P8按时间片轮转直至完成。
5.试述分布式操作系统有哪些功能,它与网络操作系统的区别是什么?
答:
分布式操作系统的功能时:
(1)进程迁移
(2)分布式进程同步(3)任务分配(4)资源管理
分布式OS与网络OS的主要去别是:
通信和资源方面,分布式OS的透明性强,系统中任意两个节点机之间无主从之分,都可以共享系统中的全部资源,多个节点机可以共同写作完成一个任务,可靠性高.若某一个节点机出现故障,系统仍然可以正常工作,只是降阶使用,而网络OS是共享服务器的资源,服务器是系统互联的瓶颈问题.
五.综合题
1.某系统的进程状态转换如下图所示,请问:
(1)引起各种状态转换的的典型事件。
(2)当一个进程的状态变化会引起另一个进程的状态变换,说明下列因果变迁是否可能发生,其原因是什么?
1)3→1
2)3→2
3)2→1
参考答案:
(1)
1:
是由于调度程序的调度引起
2:
是由于时间片用完引起
3:
是由于I/0请求引起
4:
是由于I/O完成引起
(2)
3→1:
可能。
当当前进程被阻塞,使得CPU空闲,此时调度程序会从处于就绪状态的进程中挑选一个新城投入运行。
3→2:
不可能。
2→1:
可能。
当当前进程的时间片用完,会引起调调程序调度另外一个进程来投入执行。
2.有一个桥如图所示,桥上的车流如箭头所示。
桥上不允许两车交会,但允许同方向多辆车依次通行(即桥上可以有多个同方向的车)。
请用P、V操作实现交通管理以防止桥上拥塞的程序。
参考答案:
由于桥上不允许两车相会,故桥应该被互斥访问,而同一方向上允许多辆车一次通过,即临界区允许多个实例访问。
用一个信号量来互斥访问临界区。
用一个信号量来互斥访问临界区。
由于不能允许某一个方向的车完全“控制”桥,应保证最多某一个方向上连续通过一定数量的车后,必须让另外一个方向的车通过。
用另外两个信号量来实现这个。
故:
设
用来表示从南向北最多可通行的车数
用来表示从北向南最多可通行的车数
mutex用来表示对桥的互斥
3.设系统中有三类资源R1、R2、R3和R4,又设系统中有5个进程P1,P2,P3,P4和P5.在T0时刻系统状态如下:
资源
进程
最大需求量
R1R2R3R4
已分配资源量
R1R2R3R4
剩余资源量
R1R2R3R4
P1
P2
P3
P4
P5
8641
4331
10132
3331
5463
1211
3111
4132
3220
1131
2113
(1)系统是否处于安全状态?
若是,则给出进程安全序列。
(2)如果进程P5申请1个资源R1、1个资源R2、1个资源R3和2个资源R4,能否实施分配?
为什么?
4.若某计算机系统中的页式虚拟存储管理采用最近最少使用(LRU)页面淘汰算法,并且分配给某作业的存储块数为3,其中一块用来存放程序和变量i,j(不作他用)。
假定一页可存放150个整数变量,且该作业的程序如下:
VARA:
ARRAY[1..150,1..100]OFinteger;
i,j:
integer;
FORi:
=1to150DO
FORj:
=1to100DO
A[i,j]:
=0;
设变量i,j放在程序页中,初始时,程序及变量i,j已在内存,其余两页为空。
矩阵A按行序存放。
(1)试问当程序执行完后,共缺页多少次?
(2)最后留在内存中的是矩阵A的哪一部分?
参考答案:
(1)数组A[150][100]总共有150行,100列,即每一个页面可以存放1.5行,也就是说矩阵的3行刚好放在2页内,访问他们需要中断2次,这样150行总共需要中断100次。
(2)留在内存中的是矩阵的最后3行。
5.在UNIX操作系统的文件管理采用成组链接法,且最多可直接管理的空闲盘块为100块,若系统超级块中的filsys的情况如下图所示:
Filsys
S_nfree
S_free[0]
S_free[1]
S_free[2]
S_free[3]
S_free[4]
┇
┇
S_free[97]
S_free[98]
S_free[99]
98
56
108
110
278
┇
┇
220
(1)若某作业顺序释放了物理块号为198,237,238,356,378,请画出释放后有关部分的变化结果。
(2)若在
(1)的基础上,某作业申请4个物理块,请画出分配后有关部分的变化结果。
参考答案:
(1)画出释放后有关部分的变化结果是:
(2)分配给改作业的4个物理块分别是198,237,238,356。
分配以后的Filsys卷如下图所示:
6.设有某系统可供用户使用的主存空间为100K,有五个作业J1,J2,J3,J4,J5进入输入井的时间、计算时间和内存要求如下表所示。
若作业在处理机上按单道方式运行,且作业按响应比高者优先调度算法,进程按先来先服务算法。
试写出作业的执行顺序,计算响应比、作业的周转时间和平均周转时间。
作业
进入输入井时间
计算时间
需要主存容量
开始时间
结束时间
周转时间
J1
J2
J3
J4
J5
10:
06
10:
19
10:
30
10:
36
10:
42
42分钟
30分钟
24分钟
24分钟
12分钟
18K
65K
57K
15K
25K
10:
06
10:
48
11:
30
11:
54
11:
18
10:
48
11:
18
11:
54
12:
18
11:
30
42
59
84
102
48
参考答案:
(1)开始的时候,J1先到,所以J1最先执行,它的开始时间是10:
06分,结束时间是10:
48,它的周转时间是42分钟.
(2)当J1执行结束之后,J2,J3,J4,J5的相应比分别是:
J2:
J3:
J4:
J5:
所以应该选择J2,所以J2开始时间是10:
48,结束时间是11:
18,周转时间是59分钟.
(3)当J2执行结束之后,J3,J4,J5的相应比分别是:
J3:
J4:
J5:
所以应该选择J5,所以J5开始时间是11:
18,结束时间是11:
30,周转时间是48分钟.
(4)当J5执行结束之后,J3,J4的相应比分别是:
J3:
J4:
所以应该选择J3,所以J3开始时间是11:
30,结束时间是11:
54,周转时间是84分钟.
(5)最后一个是J4,它的开始时间是11:
54,结束时间是12:
18,周转时间是102分钟.
所以总的执行顺序是:
J1->J2->J5->J3->J4
平均周转时间是
7.设有某多道程序设计系统,可供用户使用的主存空间为100KB。
若系统采用不可移动的可变分区管理方案管理主存中的用户空间,且主存空间分配采用最先适应分配算法,作业调度采用响应比高者优先算法,进程调度采用先来先服务算法。
若有有五个作业J1,J2,J3,J4,J5进入输入井的时间、计算时间和内存要求如下表所示,请写出各作业执行的顺序、计算响应比、计算作业的周转时间和平均周转时间。
(要求写出分析计算过程)
作业名
进入“输入井”时间
(小时)
计算时间
(分钟)
主存要求
J1
J2
J3
J4
J5
10:
06
10:
18
10:
30
10:
36
10:
42
42
30
24
24
12
18K
62K
55K
12K
20K
答:
各个作业的执行顺序是:
J1,J2,J4,J5,J3
作业
入井时间
计算时间
主存要求
开始时间
结束时间
周转时间
J1
J2
J3
J4
J5
10:
08
10:
18
10:
30
10:
36
10:
42
42分
30分
24分
24分
12分
19K
62K
55K
12K
20K
10:
06
10:
48
11:
54
11:
18
11:
42
10:
48
11:
18
12:
18
11:
42
11:
54
42分
60分
108分
66分
72分
11:
18时,计算作业的相应比:
J3的相应比=
J5的相应比=
各个作业的平均周转时间=
分钟.
8、旋转型磁盘上的信息优化分布能减少若干I/O服务的总时间。
假如有13个记录
存放在磁盘的某一磁道上,每个磁道划分成13块,每块存放一个记录,如图下所示。
块号
1
2
3
4
5
6
7
8
9
10
11
12
13
记录
如果磁盘旋转速度为30ms(毫秒)转1周,处理程序每读一个记录后花5ms进行处理。
请问
(1)处理完13个记录的总时间是多少?
(2)为缩短处理时间应如何排列这些记录?
计算重新排列记录后的总的处理时间。
答:
(1)处理完13个记录的总时间≈392.7ms
(2)重新排列记录如下:
块号
1
2
3
4
5
6
7
8
9
10
11
12
13
记录
重新排列记录后的总的处理时间≈118.1ms
9.银行家算法中,若出现以下资源分配情况:
资源
进程
最大需求量
R1R2R3
已分配资源量
R1R2R3
剩余资源量
R1R2R3
P0
P1
P2
P3
P4
753
322
902
222
433
010
200
302
211
002
332
试问:
(1)该系统状态是安全的吗?
请说明原因。
(2)如果进程依次有如下资源请求,系统将怎样进行资源分配?
P1:
(1,0,2)
P4:
(3,3,0)
P0:
(0,2,0)
答:
(1)P1的请求(3,2,2)是系统剩余资源(3,3,2)能满足的,故P1能运行完,P1释放资源,使得P2的申请能得到满足,…,进程按P1,P3,P0,P2,P4顺序执行,每个进程都可以获得需要的资源运行完毕,故当前状态是安全的。
(2)P1请求(1,0,2):
剩余资源:
(2,3,0),假设分配后:
进程需求量已获得资源数尚需资源数
P07,5,30,1,07,4,3
P13,2,23,0,20,2,0
P29,0,23,0,26,0,0
P32,2,22,1,10,1,1
P44,3,30,0,24,3,1
系统按P1,P3,P0,P2,P4顺序执行,每个进程均能执行完。
P1的需求可以满足。
P4请求(3,3,0):
剩余资源:
(2,3,0)。
进程需求量已获得资源数尚需资源数
P07,5,30,1,07,4,3
P13,2,23,0,20