首页 > 系统相关 >利用PV操作实现进程的同步的理论意义

利用PV操作实现进程的同步的理论意义

时间:2022-10-28 11:00:30浏览次数:36  
标签:P3 同步 PV 制约 理论意义 信号量 完后 进程 执行


进程的同步是由于进程间合作引起的相互制约的问题,要实现进程的同步可用一个信号量与消息联系起来。当信号量的值为0时表示希望的消息未产生,当信号量的值为非0时表示希望的消息己经存在。假定用信号量S表示某条消息,进程可以通过调用P操作测试消息是否到达,调用V操作发送消息已准备好的通知。

例题

利用PV操作实现进程的同步的理论意义_发送消息


利用PV操作实现进程的同步的理论意义_发送消息_02


利用PV操作实现进程的同步的理论意义_perl_03


利用PV操作实现进程的同步的理论意义_linux_04

利用进程同步的意义解题

进程的同步是由于进程间合作引起的相互制约的问题,要实现进程的同步可用一个信号量与消息联系起来。

进程间的同步就是互相传递制约信息的过程;
使用信号量可以承载制约信息;

上面前驱图中展现出来的制约如下:

  • P1执行完P3开始执行
  • P1P3执行完P2开始执行
  • P2P3执行完P4开始执行

进一步展开成全是两个进程的制约如下:

  • P1 执行完后执行 P2;(S1)
  • P1 执行完后执行 P3;(S2)
  • P3 执行完后执行 P2;(S3)
  • P2 执行完后执行 P4;(S4)
  • P3 执行完后执行 P4;(S5)

每个制约用一个信号量来表示;一共五个制约,那么就用5个信号量来表示这五个制约,P操作用于测试消息是否到达;V操作发送消息已经准备好的通知;

一共四个进程,每个进程有自己的业务逻辑

利用PV操作实现进程的同步的理论意义_发送消息_05


下面开始一条一条的应用制约应用制约S1

利用PV操作实现进程的同步的理论意义_发送消息_06


应用制约S2

利用PV操作实现进程的同步的理论意义_perl_07


应用制约S3

利用PV操作实现进程的同步的理论意义_发送消息_08


应用制约S4

利用PV操作实现进程的同步的理论意义_信号量_09


应用制约S5

利用PV操作实现进程的同步的理论意义_perl_10


标签:P3,同步,PV,制约,理论意义,信号量,完后,进程,执行
From: https://blog.51cto.com/xichenguan/5803826

相关文章

  • k8s pod,ns,pv 强制删除
    一、强制删除pod$kubectldeletepod<your-pod-name>-n<name-space>--force--grace-period=0解决方法:加参数--force--grace-period=0,grace-period表示过渡存活......
  • Qt编写的视频播放综合应用示例(qmedia/ffmpeg/vlc/mpv/海康sdk等)
    一、功能特点1.1基础功能支持各种音频视频文件格式,比如mp3、wav、mp4、asf、rm、rmvb、mkv等。支持本地摄像头设备,可指定分辨率、帧率。支持各种视频流格式,比如rtp、......
  • IPv6
    讲完了基本的IP原理,介绍了传统的IPv4协议族的基本知识,现在我觉得可以升一级讲讲现在全球都在主推的IPv6协议,简单介绍一下发展历程,我觉得这一部分还是可以了解一下历程才知......
  • IPv4升级IPv6,IPv6优点之层次化的地址结构
    IPv6是由IETF设计的用来替代IPv4协议的一种新的IP协议,IPv6解决了IPv4存在的一些问题和不足,今天就来了解下IPv6优点之一:层次化的地址结构。IPv6将现有的IP地址长度扩大4倍,......
  • nginxipv6转ipv4
    ipv6only事什么意思IPv6only=on的意思:打开IPv6only网络;IPv6only=off的意思:关闭IPv6only网络;通常在nginx开启IPV6支持配置,使用“nginxipv6only=on”景安网络作为全国首家IP......
  • Python修改步数并同步到微信
    1.前言目前有很多可以刷步数的网站,都有在更新维护且免费,有需求或者仅在乎功能的可以看看,如下:1.https://www.17bushu.com/2.https://yd.shuabu.net/3.https://www......
  • ipvlan==macvlan
      一、IPVLANL2     二、IPVLANL3   1#创建网络空间2ipnetnsaddnet13ipnetnsaddnet24#创建子接口5iplinkaddipvlan1......
  • 使用docker容器配置mysql的主从同步
    目录 mysql主从复制同步一前提条件二mysql集群配置文件1 创建配置集结构如下2创建节点配置文件(master.cnf与slave.cnf)三、搭建mysql环境创建mysql容器......
  • Linux 使用ipvsadm管理LVS
    lvs是内核里面的功能,在内核中叫做ipvs用户空间使用ipvsadm这个工具包提供的工具来管理内核中的ipvs功能ipvsadm命令ipvsadm核心功能:集群服务管理:增、删、改......
  • 跨外网的不同主机通过内网穿透访问局域网内的共享文件实现多人访问文件实现文件同步
    1.前言局域网内共享文件,共享文件供局域网内有权限的人员进行读取和编辑共享文件供多人编辑,有其中一个用户编辑时,其他用户只能以读取的方式访问,解决文件一致性问题多人......