操作系统试题库(及其答案),让你完美掌握操作系统(12)

2021-02-21 19:08

从plate 中取苹果;

9.定义两个信号量,一个信号量start表示是否允许司机启动车辆,另一个信号量open

表示是否允许售票员开车门。初始状态是车停在始发站,车门开着,等待乘客上车。因此, 两个信号量的初值都是0。

semaphore start=0; semaphore open=0; //司机的活动:

P1: do{

P(start);

启动车辆; 正常行车; 到站停车; V(open); }while (1); //售票员的活动: P2: do{ 关车门; V(start);

售票;

P(open);

开车门;

上下乘客;

}while (1)

10.编写两个进程,一个处理读者进入,一个处理读者离开,进程是程序的动态执行设置信号量 full 为初值为 0, 空的信号量 empty 初值为100, 互斥信号量 mutex 初值为1 进入 离开

P(empty) P(full)

P(mutex) P(mutex)

登记 取消登记

V(mutex) V(mutex)

V(full) V(empty)

进入 离开

12.设信号量empty(表示缓冲器中可存放多少件物品)的初值为n, 信号量full(表示缓冲器中存有几件物品)的初值为0。当缓冲器中没有放满n件物品时,生产者调用P(empty)都不会成为等待状态而可把物品存入缓冲器。但当缓冲器中已经有n件物品,生产者想再存 入一件物品将被拒绝。每存入一件物品后,由于调用V(full),故empty的值表示缓冲器中 可用的物品数,只要full>0,消费者调用P(full)后总可去取物品。每取走一件物品后,由 于调用V(empty),便增加了一个可用来存放物品的位置。用指针k和t分别指示生产者往缓冲器存物品和消费者从缓冲器中取物品的相对位置,它们的初值为0,那么,一个生产者和一个消费者共用容量为n的缓冲器时,可如下进行同步工作:

设信号量empty,full,初值为empty=n,full=0;整型变量k,t,初值k=t=0。生产者进程: begin

L1:produce a product;


操作系统试题库(及其答案),让你完美掌握操作系统(12).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:高二化学选修32-2 分子的立体构型(人教版化学选修3 41张)

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: