1.桌上有1空盘,允许存放1个水果。爸爸向盘中放苹果,也可以向盘中放桔子。儿子专等吃盘中的桔子,女儿专等吃盘中的苹果。规定当盘空时一次只能放1个水果供吃者取用。请用Wait()、Signal()原语实现爸爸、儿子、女儿三个并发进程的同步。
2.在公共汽车上,司机和售票员的工作如下图所示。为保证乘客的安全,司机的售票员应密切配合协调工作。请用PV操作来实现司机和售票员之间的同步。
3.有三个进程PA、PB和PC合作解决文件打印问题:PA将文件记录从磁盘读入主存的缓冲区1,每执行一次读一个记录;PB将缓冲区1的内容复制到缓冲区2,每执行一次复制一个记录;PC将缓冲区2的内容打印出来,每执行一次打印一个记录。缓冲区的大小等于一个记录大小。请用P、V操作来保证文件的正确打印。
4、有一个仓库,可以存放A和B两种产品,但要求:
(1)每次只能存入一种产品(A或B);
(2)-N < A产品数量-B产品数量 < M。
其中,N和M是正整数。试用P、V操作描述产品A与产品B的入库过程。
5、多个进程共享一个文件,其中只读文件的称为读者,只写文件的称为写者。读者可以同时读,但写着只能写。请:
(1)说明进程间的相互制约关系,应设置那些信号量?
(2)用P、V操作写出其同步算法。
(3)修改上述的同步算法,使得它对写者优先,即一旦有写着到达,后续的读者必须等待。而无论是否有读者在读文件。
第二部分 进程安全状态
6、设系统中有3种类型的资源(A,B,C)和5个进程P1、P2、P3、P4、P5,A资源的数量为17,B资源的数量为5, C资源的数量为20。在T0时刻系统状态见下表所示。系统采用银行家算法实施死锁避免策略。
T0时刻系统状态
最大资源需求量 | 已分配资源数量 | |
A B C | A B C | |
P1 P2 P3 P4 P5 | 5 5 9 5 3 6 4 0 11 4 2 5 4 2 4 | 2 1 2 4 0 2 4 0 5 2 0 4 3 1 4 |
(2)在T0时刻若进程P2请求资源(0,3,4),是否能实施资源分配?为什么?
(3)在(2)的基础上,若进程P4请求资源(2,0,1),是否能实施资源分配?为什么?
(4)在(3)的基础上,若进程P1请求资源(0,2,0),是否能实施资源分配?为什么?
第三部分 作业调度
7、假设有四个作业,它们的提交、运行时间如下表所示。若采用响应比高者优先调度算法,试问平均周转时间和平均带权周转时间为多少?(时间单位:小时,以十进制进行计算。)
作业号 到达时间 运行时间 |
1 8.0 2.0 2 8.3 0.5 3 8.5 0.1 4 9.0 0.4 |
8、在一分页存储管理系统中,逻辑地址长度为16位,页面大小为4096字节,现有一逻辑地址为2F6AH,且第0、1、2页依次存放在物理块5、10、11中,问相应的物理地址为多少?
9、在一个请求分页系统中,假定系统分配给一个作业的物理块数为3,并且此作业的页面走向为2、3、2、1、5、2、4、5、3、2、5、2。试用FIFO和LRU两种算法分别计算出程序访问过程中所发生的缺页次数。
第五部分 文件管理
10、若磁头的当前位置为100磁道,磁头正向磁道号增加方向移动。现有一磁盘读写请求队列:23,376,205,132,19,61,190,398,29,4,18,40。若采用先来先服务、最短寻道时间优先和扫描算法,试计算出平均寻道长度各位多少?
11、假定磁盘块的大小为1K,对于540M的硬盘,其文件分配表FAT需要占用多少存储空间?当硬盘容量为1.2G时,FAT需要占用多少空间?
第六部分 UNIX系统
12、在UNIX System V中,如果一个盘块的大小为1KB,每个盘块号占4个字节,那么,一个进程要访问偏移量为263168字节处的数据时,需要经过几次间接?
13、假定盘块的大小为1KB,每个盘块号占4个字节,文件索引节点中的磁盘地址明细表如图所示,如何将下列文件的字节偏移量转换为物理地址?
(1)9000;(2)14000;(3)350000
4096 |
228 |
4542 |
0 |
3 |
11111 |
50 |
101 |
367 |
0 |
428 |
9156 |
824 |
1011 | 0 1 2 3
| |
109 | ||
954 | ||
952 | ||
… | ||
428 |
74
75
76 | … | |
3300 | ||
333 | ||
308 | ||
… | ||
331 |
1 | 331 | |
452 | ||
… | ||
9156 |