pv操作的例子cobegin

pv操作的例子cobegin


2024年4月21日发(作者:)

pv操作的例子cobegin

【篇一:pv操作的例子cobegin】

pv操作经典案例讲解bglg 11 在操作系统理论中有一个非常重要的概念叫做p、v原语。

在我们研究进程间的互 斥的时候经常会引入这个概念,将p、v操 作方法来解决进程间的互斥

问题。p、v操 作应用范围很广,不但可以解决进程管理 当中的互斥问题,而且我们还可以利

用此 方法解决进程同步与进程通信的问题。

信号量的数据结构为一个值和一个指针,指针指向等待该信号量的下一个进程。信号 量的

值与相应资料的使用情况有关。当它的 值大于零时,表示当前可用资料的数量;当 它的值小于

零时,其绝对值表示等待使用该 资源的进程个数。注意,信号量的值仅能有 p、v操作来改变。

pv操作经典案例讲解 pv操作经典案例讲解 一般来说,信号量s>=0时,s表示可用资源

的数量。执行一次p操作意味着请求分配 一个单位资源,因此,s的值减1;当spv操作经典

案例讲解 2、p、v原语(利用信号量和p、v操作实现进程同步 p、v操作是典型的同步机制

之一。用一个信号量与一个消息联系起来,当信号量的 值为0时,表示期望的消息尚未产生;

当信 号量的值不为0时,表示期望的消息已经存 在,用p、v操作实现进程同步时,调用p操

作测试消息是否到达,调用v操作发送消息。

pv操作经典案例讲解 p操作和v操作是不可中断的程序段,称为原语。

p,v原语中p是荷兰语的passeren,相当于英文的pass,v 是荷兰语的verhoog,相当于

英文中的incremnet。

p原语操作的动作是: (3)若s减1后小于零,则该进程被阻塞后进入与该信号相对应

的队列中,然后转进 程调度。pv操作经典案例讲解 (3)若相加结果小于或等于零,则从该信

号的等待队列中唤醒一等待进程,然后再 返回原进程继续执行或转进程调度。

使用p、v操作实现进程同步时应该注意的问题是 1.分析进程间的制约干系,确定信号量

的种类。在保持进程间有正确的同步关系情况下, 哪儿进程应先执行,哪些进程后执行,彼此

间 通过什么信号量进行协调从而明确要设置哪些 信号量。

2.信号量的初值与相应资源的数量有关,也与p、v操作在程序代码中出现的位置有关。

3.同一信号量的p、v操作要成对出现,但他们分别在不同的进程代码中。

pv操作经典案例讲解 pv 独木桥问题。pv操作经典案例讲解 通过运用信号量和p、v操

作实现公共汽车问题中售票员和司机的协调操作。

掌握pv原语的概念以及p、v操作在实际生活中的程序应用。

pv操作经典案例讲解 pv操作经典案例讲解 设在公共汽车上,为保证乘客的安全,司机和

售票员应协调工作: 停车后才能开门,关车门后才能行车。(司机和售票员的活动分别为:司机

的活动为 启动车辆,正常行车,到站停车;售票员的 活动为关车门,售票,开车门。)试问:

在汽车不断地到站、停车、行驶过程中,司机和售票员的活动是同步关系还是互 斥关系? 用信

号量和p、v操作实现他们间的 协调操作。

pv操作经典案例讲解 解析: 在这个问题中,司机与售票员间是并行操作的,司机和售票员

本身的操作是顺序 进行的。因此司机是一个进程,售票员是 一个进程,它们之间是同步关系。


发布者:admin,转转请注明出处:http://www.yc00.com/web/1713673336a2295758.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信