操作系统之同步问题


一、问题描述

用P.V 操作解决下图之同步问题
在这里插入图片描述

提示:分别考虑对缓冲区S 和T

二、解答

设置四个信号量Sin=1 ,Sout=0 ,Tin=1, Tout=0;
代码如下:

get( )
{
while1{
P(Sin );
将数放入S;
V(Sout);
}
}
copy( )
{
while1{
P(Sout );
P(Tin );
将数从S 取出放入T;
V(Tout);
V(Sin);
}
}
put( )
{
while1) )
{
P(Tout );
将数从T 取走;
V(Tin);
}
}

版权声明:本文为m0_61755193原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。