计算机操作系统原理

某杂技团进行走钢丝表演,在钢丝的A,B两端各有n名演员(n>1)在等待表演.只要钢丝上无人时便允许一名演员从钢丝的一端走到其一端.现要求两端的演员交替地走钢丝,且A端的一... 某杂技团进行走钢丝表演,在钢丝的A,B两端各有n名演员(n>1)在等待表演.只要钢丝上无人时便允许一名演员从钢丝的一端走到其一端.现要求两端的演员交替地走钢丝,且A端的一名演员先开始.请问,把一名演员看作一个进程时,怎样用PV操作来进行控制?请写出能进行正确管理的程序 展开
 我来答
匿名用户
2013-07-31
展开全部
在本题中,A,B端的演员(进程)共用一条钢丝(可用资源或信号量的缓冲区)
钢丝上一次只能通过一个演员。当钢丝上为空时,
A端可通过一个演员,这时B端的第一个演员等待,
重复过程,A,B两端N个演员全部通过,
设缓冲区的编号为1~z-1,定义两个指针in和out,它们分别是A端演员进程和B端演员进程使用的指针,指向下一个可用的缓冲区。
设置两个信号量分别为Gs 和Gsfull
int Gs=1; /*钢丝是否为空,缓冲区空了,初始值为1*/
int Gsfull=0; /*钢丝是否有人,缓冲区满了,初始值为0*/
main()
{
cobegin
int n=10
int i=1
while(i<=n)
{
i++;
Ags();
Bgs();
}
coend

/*A端演员进程*/
Ags()
{
while(1)
{
P(Gs);
A端演员上钢丝绳;
in=(in+1)mod z;
V(Gsfull);
}
}
/*B端演员进程*/
Bgs()
{
while(1)
{
P(Gsfull);
B端演员上钢丝绳;
out=(out+1)mod z;
V(Gs);
}
}
奇峰
2024-06-11 广告
好不好,谁更好这个问题是见仁见智的。这个需要顾客根据自身的情况,去选择合适自己的公司。更多详情建议可以咨询一下广州奇峰机电设备有限公司!广州奇峰机电设备有限公司主要为客户提供专业的可编程控制器产品,公司拥有专业的团队以及丰富的经验,更多详情... 点击进入详情页
本回答由奇峰提供
小黑格子David
2019-11-14 · TA获得超过1972个赞
知道答主
回答量:3795
采纳率:0%
帮助的人:196万
展开全部
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-07-31
展开全部
我不会
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-07-31
展开全部
A==B==C,
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式