预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

进程同步习题缓冲区1PC(){While(1){P(full2);从缓冲区2取一个记录;V(empty2);打印记录;}}Intempty1=1,empty2=1,full1=0,full2=0;main(){CobeginPA();PB();PC();Coend}2、公共汽车上,司机和售票员的活动分别为:例:司机P1售票员P2REPEATREPEAT启动关门正常运行售票到站停开门UNTILFALSEUNTILFALSE解:设信号量S1:是否允许司机启动汽车,初值为0信号量S2:是否允许售票员开门,初值为03、桌上有一空盘,允许存放一只水果。爸爸可向盘中放苹果,也可向盘中放桔子,儿子专等吃盘中的桔子,女儿专等吃盘中的苹果。规定当盘空时一次只能放一只水果供吃者取用,请用P,V原语实现爸爸,儿子女儿三个进程的同步。解:设三个信号量,S:表示盘子是否为空,初值为1So:表示盘中是否有桔子,初值为0Sa:表示盘中是否有苹果,初值为0;father(){While(1){P(S);将水果放入盘中;If(放入的是桔子)v(So);Elsev(Sa);}}