操作系统 day14(进程同步、进程互斥、互斥的代码实现、互斥的硬件实现、互斥锁)

进程同步

  1. 概念
    在这里插入图片描述
  • 进程的异步性体现在,例如:当有I/O操作时,进程需要等待I/O操作,而每个I/O操作又是不同的,所以进程没有一个固定的顺序,固定的时间来执行,而这体现了进程的异步性。

进程互斥

  1. 概念
    在这里插入图片描述
  2. 对于临界资源的互斥访问,可以在逻辑上分为如下四个部分:
    在这里插入图片描述
  • 注意:临界区是进程中访问临界资源的代码段。进入区和退出区是负责实现互斥的代码段。临界区也可称为“临界段”
  • 为了实现对临界资源的互斥访问,同时保证系统整体性能,需要遵循以下原则:
    在这里插入图片描述

进程互斥的代码实现

  1. 单标志法:
    在这里插入图片描述
    在这里插入图片描述
  2. 双标志先检查法:
    在这里插入图片描述
    在这里插入图片描述
  3. 双标志后检查法:
    在这里插入图片描述
    在这里插入图片描述
  4. Peterson算法:
    在这里插入图片描述
    在这里插入图片描述

进程互斥的硬件实现

  1. 中断屏蔽方法:
    在这里插入图片描述
  2. TSL指令
    在这里插入图片描述
  3. Swap指令
    在这里插入图片描述

互斥锁

在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/201291.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

广域网加速技术

摘要: 随着企业数字化转型快速发展,越来越多企业将IT系统、应用和服务部署到云上,以实现更高效、灵活的管理和使用。这就对广域网提出了更高的要求,而广域网线路往往存在带宽费用昂贵、服务质量不可靠等问题。为了改善用户体验&am…

RabbitMQ消息的应答

消息的应答机制 消费者完成一个任务可能需要一段时间,如果其中一个消费者处理一个长的任务并仅只完成了部分突然它挂掉了,会发生什么情况。RabbitMQ 一旦向消费者传递了一条消息,便立即将该消息标记为删除。在这种情况下,突然有个…

【MySQL】常用内置函数:数值函数 / 字符串函数 / 日期函数 / 其他函数

文章目录 数值函数round():四舍五入ceiling():上限函数floor():地板函数abs():计算绝对值rand():生成0-1的随机浮点数 字符串函数length():获取字符串中的字符数upper() / lower():将字符串转化…

基于springboot+vue的在线考试系统(前后端分离)

博主主页:猫头鹰源码 博主简介:Java领域优质创作者、CSDN博客专家、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战 主要内容:毕业设计(Javaweb项目|小程序等)、简历模板、学习资料、面试题库、技术咨询 文末联系获取 项目介绍…

水果编曲软件FL Studio21最新中文版本2023年最新FL 21中文版如何快速入门教程

水果编曲软件FL Studio介绍 各位,大家晚上好,今天给大家带来最新最新2023水果编曲软件FL Studio 21中文版下载安装激活图文教程。我们一起先了解一些FL Studio 。FL Studio21是目前流行广泛使用人数最多音乐编曲宿主制作DAW软件,这款软件相信…

git stash save untracked not staged

git stash save untracked not staged 如图 解决方案: git stash save "tag标记信息" --include-untracked或者: git stash save -u "tag标记信息" git stash clear清空本地暂存代码_zhangphil的博客-CSDN博客文章浏览阅读486次。…

QDoubleSpinBox的使用示例

QDoubleSpinBox即可以做为数值型输入框使用,也可以使用只读型数据显示框,在作为输入框使用时比QLineEdit有以下几个方面的优势 1.可以设置范围,并且范围精确, 2.输入数据精确,自动屏幕非数值以外的字符。 3.设置步长后…

LeetCode(40)同构字符串【哈希表】【简单】

目录 1.题目2.答案3.提交结果截图 链接: 同构字符串 1.题目 给定两个字符串 s 和 t ,判断它们是否是同构的。 如果 s 中的字符可以按某种映射关系替换得到 t ,那么这两个字符串是同构的。 每个出现的字符都应当映射到另一个字符&#xff0…

java开发需要用到的软件,必备软件工具一览

java开发需要用到的软件,必备软件工具一览 如果你对Java编程感兴趣或已经是一名Java开发者,你需要一些必备的软件工具来提高你的生产力和简化开发过程。在本文中,我们将探讨Java开发所需的关键软件工具,并通过具体示例来解释它们的…

Elk:filebeat 日志收集工具和logstash

Elk:filebeat 日志收集工具和logstash Filebeat是一个轻量级的日志手机工具,所使用的系统资源比logstash部署和启动时使用的资源要小得多 Filebeat可以在非java环境使用,他可以代理logstash在非java环境上收集日志 缺点 Filebeat无法实现数据的过滤,一般是结合l…

使用 graph_tool 绘制网络关系图

目标 使用python的graph_tool包,根据以下表格,生成网络关系图。 采样方法大类小类低空遥感解译地面裸土地,人工地面地面影像解译水生植物水葫芦,荷叶,苦草,黑藻,水华,水白菜RTK测量禾本植物狗牙根,华克拉莎,斑茅,苔草,芦苇,芦竹,杂茅RTK测量竹风箱树,马…

注解(概念、分类、自定义注解)

注解基本概念 注解(元数据)为我们在代码中添加信息提供一种形式化的方法,我们可以在某个时刻非常方便的使用这些数据。将的通俗一点,就是为这个方法增加的说明或功能。 作用: 编写文档:通过代码里标识的注解生成文档【生成doc文…

bugku题解记录2

文章目录 哥哥的秘密黄道十二官where is flag一段新闻 哥哥的秘密 给出了一个qq,那就去看看呗 hint里面说 收集空间信息——相册——收集微博信息——相册——解题——相册——提交flag 那看看空间先 盲文: hint:密码时地人 旗帜存在相册里…

聚焦 6G 无线技术——目标和需求

从 3G 到 5G 乃至之后的每一种无线标准,都在设计时加入了推动行业发展的具体目标。例如,4G 专注于以 IP 为中心的灵活语音、数据和视频通信,而 5G 则在此基础上进行了改进。6G 的目标是提供更加无处不在、更高效、更身临其境的无线连接。6G 系…

想要更快的文件传输?看看这些aspera的替代方案吧

随着数据量的增大,文件传输已经成为许多公司和组织日常工作中必不可少的环节之一。而对于大容量、海量数据的传输,普通的传输方式可能甚至无法胜任。Aspera作为一种高效的文件传输协议应运而生,其能够在处理大容量、高速传输方面表现出色。然…

Verilog 入门(一)(Verilog 简介)

文章目录 什么是 Verilog HDL?Verilog 主要能力模块时延数据流描述方式 什么是 Verilog HDL? Verilog HDL是一种硬件描述语言,用于从算法级、门级到开关级的多种抽象设计层次的数字系统建模。被建模的数字系统对象的复杂性可以介于简单的门和…

MATLAB | 官方举办的动图绘制大赛 | 第三周赛情回顾

MATHWORKS官方举办的迷你黑客大赛第三期(MATLAB Flipbook Mini Hack)的最新进展!! 很荣幸前三周都成为了阶段性获奖者~: https://ww2.mathworks.cn/matlabcentral/communitycontests/contests/6/entries/13382 https://ww2.mathworks.cn/mat…

97.STL-查找算法 find

目录 STL-查找算法find 1.基本用法: 2.查找自定义类型: 3.查找范围: STL-查找算法find 在C的STL(标准模板库)中,find 算法用于在指定范围内查找指定值的元素。 功能描述: 查找指定元素&…

git-4

1.在GitHub上创建个人仓库 现在仓库中有LICENSE文件,但本地没有这个文件,该怎么办呢?往下看 2.把本地仓库同步到GitHub 3.不同人修改了不同文件如何处理? 两个人在同一个分支上,两个人修改了不同文件 其中一人&…