第二章 进程与线程 十二、进程同步与进程互斥

2023-09-21 22:28:06

目录

一、进程同步

1、定义

二、进程互斥 

1、定义

2、四个部分

3、原则


一、进程同步

1、定义

进程同步是指在多个进程之间协调执行顺序的一种机制,使得进程按照一定的顺序执行,以避免出现不一致的情况。常见的实现方式有信号量、管程、屏障等。

二、进程互斥 

1、定义

进程互斥是指在多个进程之间共享资源时,为了避免多个进程同时访问该资源而出现冲突的一种机制。常见的实现方式有信号量和互斥锁。

可以说进程同步和进程互斥是紧密联系的,进程同步是为了有效地进行进程互斥,以避免出现资源竞争问题。同时,进程互斥也需要一定的进程同步机制来协调各个进程之间的顺序,保证资源的正确使用。

2、四个部分

进入区:检查是否可进入临界区,若可进入,需要"上锁"。

临界区:访问临界资源的那段代码。

退出区:负责“解锁"。

剩余区:其余代码部分。

3、原则

(1)空闲让进。临界区空闲时,可以允许一个请求进入临界区的进程立即进入临界区;

(2)忙则等待。当已有进程进入临界区时,其他试图进入临界区的进程必须等待;

(3)有限等待。对请求访问的进程,应保证能在有限时间内进入临界区(保证不会饥饿);

(4)让权等待。当进程不能进入临界区时,应立即释放处理机,防止进程忙等待。

更多推荐

zookeeper —— 分布式服务协调框架

zookeeper——分布式服务协调框架一、Zookeeper概述1、Zookeeper的基本概念2、Zookeeper的特点3、Zookeeper的数据结构二、Zookeeper的安装部署1、Zookeeper的下载2、Zookeeper的安装本地模式(单机模式standalone)安装部署分布式(集群模式clust

【结构型】代理模式(Proxy)

目录代理模式(Proxy)适用场景代理模式实例代码(Java)代理模式(Proxy)为其他对象提供一种代理以控制对这个对象的访问。Proxy模式适用于在需要比较通用和复杂的对象指针代替简单的指针的时候。适用场景远程代理(RemoteProxy)为一个对象在不同地址空间提供局部代表。虚代理(VirtualProxy)根据

设计模式:享元模式

享元模式(FlyweightPattern)是一种用于效率的优化模式,主要用于减少创建对象的数量,以减少内存占用和提高性能。它适用于那些需要大量使用相似对象,但又不需要每个对象都拥有完全独立的状态的情况。在享元模式中,我们将对象分为两个部分:内部状态和外部状态。内部状态是存储在享元对象中的,并且可以被多个享元对象共享。

jmeter线程组 bzm - Concurrency Thread Group & 阶梯式压测

简介bzm-ConcurrencyThreadGroup不是JMeter的官方插件,而是一种由Blazemeter提供的高级线程组插件,它提供了更灵活的并发性能测试设置。它可以在不同的时间内并发执行不同数量的线程,模拟不同的负载场景。插件下载地址(jmeter版本不低于3.2):https://jmeter-plugi

phpstudy RCE脚本编写(Python)

文章目录编写过程脚本优化编写过程关于phpstudy2016-2018RCE漏洞的验证,请移步我的这篇博客phpstudy2016RCE漏洞验证。将之前漏洞验证的数据包复制下来,编写脚本时需要使用:GET/phpinfo.phpHTTP/1.1Host:10.9.75.164Upgrade-Insecure-Reque

Python 在 JMeter 中如何使用?

要在JMeter中使用Python,需要使用JSR223Sampler元素来执行Python脚本。使用JSR223Sampler执行Python脚本时,需要确保已在JMeter中配置了Python解释器,并设置了正确的环境路径。1、确保JMeter已安装Python解释器,并将解释器的路径添加到计算机的环境变量中。2、

zookeeper未授权漏洞复现及处理

一、漏洞详情Zookeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。Zookeeper的默认开放端口是2181。Zookeep

RFID设备在自动化堆场中的管理应用

随着信息技术的高速发展,带动了港口生产和管理技术的长足进步,港口堆场内的自动化场桥的智能化水平成为码头提高生产率一个重要标签。各地海关着力于现代化科技手段,努力构筑新型的便捷通关模式,在进出口环节做好管理和服务。全球港口场桥设备中轮胎式起重机(以下简称轮胎吊)占据比例较大,轨道式起重机占据比例较小。因此,自动化、智能化

自动化和数字化在 ERP 系统中意味着什么?

毋庸置疑,ERP系统的作用是让工作更轻松。它可以集成流程,提供关键分析,确保你的企业高效运营。这些信息可以提高你的运营效率,并将有限的人力资本重新部署到更有效、更重要的需求上。事实上,自动化和数字化是ERP系统最显著的两个优势。那么,这些功能是什么?它们如何帮助企业蓬勃发展?在这两个关键因素的范围内,你需要的是什么?什

Jmeter 自动化性能测试常见问题汇总

一、request请求超时设置timeout超时时间是可以手动设置的,新建一个http请求,在“高级”设置中找到“超时”设置,设置连接、响应时间为2000ms。1.请求连接超时,连不上服务器。现象:Jmeter表现形式为:前面几个请求是成功的,但是后面请求有的会报错,有的请求成功报错1:Responsecode:Non

uniapp存值和取值,获取登录凭证 code方法

Uniapp的存值和取值Uniapp的存值和取值方法可以使用Vue.js的数据绑定方式,也可以使用uni.setStorageSync()和uni.getStorageSync()方法。使用Vue.js的数据绑定方式:在Vue组件中定义一个data属性,然后将需要存储的值赋给该属性。例如:<template><div>

热文推荐