full1=0; //有数据的buf2的数目 mutex1=mutex2=1; //互斥信号量 int main(){
Cobegin //并发开始 GET(); PRO(); PUT();
Coend //并发结束 return 0; } (3分) //GET进程 void GET(){ while(1) { …
wait(empty1); wait(mutex1); 将信息送入buf1; signal(mutex1); signal(full1); … }
} (3分) //PRO进程 void PRO(){ while(1) {
wait(full1); wait(mutex1); 从buf1中取出信息; signal(mutex1); signal (empty1); wait(empty2); wait(mutex2); 将信息送入buf2; signal(mutex2);
signal(full2); } } (4分) //PUT进程 void PUT(){ while(1) {
wait(full2); wait(mutex2); 从buf2中取出信息; signal(mutex2); signal (empty2); } (3分)
9
一、填空(每空0.5分,共10分,请在答题纸上写出各空对应的答案) 12.在分时操作系统环境下运行的作业通常称为( C )。 1.存储分配方式分为 分区1 、 分页 2 、 分段3 三种方式。 A、终端作业
B、长作业
2.文件的目录结构有 4单级 目录结构、 5二级 目录结构和多级目录结构。 C、后台作业 D、批量型作业
3.文件的物理结构包括顺序结构、链接结构和 6索引结构 。 13. 下列进程的实体的转换中,哪一个是不正确的( C )。 4.操作系统提供给编程人员的唯一接口是7系统调用 。p22 A.就绪->运行 B.运行->就绪 C.就绪->阻塞 D.阻塞->就绪 5.重定位是指程序的8虚拟地址到实地址的转换,根据定位时机可分为静态重定位和 14. 下列不属于排除死锁的方法是( D ) 9动态地址 重定位两种。 A.预防 B.回避 C.检测和恢复 D.加锁
6.1.实现临界区互斥的方法有开关中断法、10加锁 和PV操作法。 15.在下列操作系统的各个功能组成部分中,(A )不需要硬件的支持。 7.每个索引文件都必须有一张 11索引 表,其中每个登记项用来指出一个 A、进程调度 B、时钟管理 C、地址映射 D、中断系统 逻辑记录的 12物理块号 。 16.进程可由就绪状态转到(A )状态。
8.打开文件的主要工作是把文件 13 目录 读入内存。 A. 执行 B. 创建 C. 封锁 D. 终止 9.进程存在的唯一标志是进程 14 控制块(PCB) 17.产生死锁的必要条件不包括(D )。
10.进程运行满一个时间片后让出中央处理器,它的状态应变为 15就绪 状态 A. 互斥作用 B. 非剥夺分配 C. 部分分配 D. 非