第2章 进程管理练习答案 下载本文

内容发布更新时间 : 2024/4/27 1:46:14星期一 下面是文章的全部内容请认真阅读。

V(mutex); V(s2);

13.试用信号量机制描述两人下象棋的过程

类似于一个生产者和一个消费者利用单缓冲(棋盘)通信的例子

14.设AB两点之间是一段东西向的单行车道,现在要设计一个AB路段自动管理系统,规则如下:当AB间有车辆在行驶时同方向的车可以驶入,另一方向的车必须在AB段外等待;当AB段之间无车辆行驶时,任一方向到达的车都可驶入,但不能从两个方向同时驶入;当某方向在AB段行驶的车辆驶出了AB段且暂无车辆进入AB段时,应让另一方向等待的车辆进入AB段行驶。试用信号量和P、V操作管理AB路段车辆的行驶

分析:这是读者—写者问题的变形,相当于两组读者(即两个方向的车辆)访问同一个共享文件(即AB路段)的互斥问题。 (1)信号量及其设置

S1、S2初值均为0,分别用于对从A、B点驶入AB的车辆计数

互斥信号量mutex,初值为1,用于实现不同方向的第一辆车互斥驶入AB路段。 互斥信号量ma、mb,初值均为1,分别用于两个方向的车互斥的访问计数器变量。 向西行驶的车辆: P(ma);

If S1=0 then P(mutex); S1++; V(ma);

车辆从A点通过AB路段到达B点 P(ma); S1--;

If S1=0 then V(mutex); V(ma);

向东行驶的车辆: P(mb);

IfS2=0 then P(mutex); S2++; V(mb);

车辆从B点通过AB路段到达A点 P(mb); S2--;

If S2=0 then V(mutex); V(mb);

15.在4×100接力赛中,四个运动员之间存在如下关系:1号传给2号,2号传给3号,3号传给4号,4号跑完全程。试用信号量机制进行描述。 用前驱图描述:

运动员1——运动员2——运动员3——运动员4

信号量 S12 S23 S34 初值均为0 运动员1:

11 / 13

持棒跑100米; 交棒给运动员2; V(S12);

运动员2: P(S12);

持棒跑100米; 交棒给运动员3; V(S23);

运动员3同运动员2

运动员4: P(S34);

持棒跑100米;

16.今有一文件F供A、B两组进程共享,规定同组的进程可以同时读文件F;但当有A组(或B组)的进程在读文件F时就不允许B组(或A组)的进程读文件。

定义整形计数器变量C1和C2,分别记录A组和B组中读文件F的进程数,初值均为0.设置3个初值均为1的信号量S1、S2和SAB。 进程Ai:

_______________; 将C1加1;

若C1=1 则_________________;

_________________; 读文件F;

__________________; 将C1减1;

若C1=0 则________________;

_________________;

进程Bi:

_______________; 将C2加1;

若C2=1 则_________________;

_________________; 读文件F;

__________________;

12 / 13

将C2减1;

若C2=0 则________________;

_________________; 要求:(1)说明信号量S1、S2、SAB的作用;

S1是用于A组进程互斥使用计数器C1的互斥信号量;S2是用于B组进程互斥使用计数器C2的互斥信号量;SAB是用于A、B两组进程互斥访问文件F的互斥信号量 (2)填上合适的P、V操作

P(S1),P(SAB),V(S1),P(S1),V(SAB),V(S1);P(S2),P(SAB),V(S2),P(S2),V(SAB),V(S2) 17. 设有两个进程P、Q;Q的优先级高于P,同时进入就绪队列;各自运行的程序段如下: 进程P: P1 Y=8; P2 Y=A-Y; P3 V(S1); P4 Y=A+X; P5 P(S2); P6 X=Y+A; 进程Q: Q1 X=10; Q2 A=X+A; Q3 P(S1); Q4 X=A+Y; Q5 V(S2); Q6 A=X+Y; 其中S1、S2为信号量,初值为0,已知X、Y、A为共享变量,X、Y的初值为0,A的初值为20,若调度程序执行的策略为抢占方式优先权原则,试问:

(1) 执行序列(用Pi,Qi表示,i=1,。。。6)

变量X、Y、A的运行结果是什么? 解:(1)Q1Q2Q3(Q阻塞)P1P2P3(唤醒Q,P到就绪队列)Q4Q5Q6P4P5P6 (2)X=200;Y=126;A=74 四、填空题

1.并发执行的程序具有下列特征:___,____,_____。(间断性,失去封闭性,不可再现性) 2.一个进程是由__________,__________,__________构成,其中__________是进程存在的唯一标志,系统根据它而感知进程的存在。(程序段,数据段,PCB或进程控制块,PCB) 3.进程具有5个特征,分别是:__________,__________,__________,__________和__________,其中__________是进程最基本的特征。(结构特征,动态性,并发性,独立性,异步性,动态性) 4.进程是进程实体的__________过程,是系统进行__________和__________的一个独立单位。(运行,资源分配,调度)

5.进程的三种基本状态是:__________,__________和__________。(就绪态,执行态,阻塞态) 6.进程同步的主要任务是对多个相关进程在__________上进行协调,以使并发执行的诸进程之间能有效地__________和__________,从而使程序的执行具有__________。(执行次序,共享资源和相互合作,可在现性)

7.并发执行的程序存在着两种形式的制约关系:____和_____。(间接相互制约,直接相互制约) 8.在一段时间内只允许一个进程访问的资源称为__________。(临界资源) 9.每个进程中访问临界资源的那段代码称为__________。(临界区)

10.高级进程通信机制的类型包括:__________,__________和__________。(共享存储器系统,消息传递系统,管道通信) 11.所谓__________,是指用于连接一个读进程和一个写进程以实现它们之间通信的一个共享文件,又名pipe文件。(管道)

13 / 13