用信号量实现互斥。互斥是并发进程之间由于共享资源而形成的间接制约关系。

Var mutex : semaphore := 1; //初值为1

Begin Parbegin(由部分开始)

Process1: begin repeat(循环)

wait(mutex);//进入区(P操作)

critical section;//临界区(使用临界资源)

signal(mutex); //退出区(V操作)释放

remainder section;//剩余区

until false;

end;

Process2:begin repeat

wait(mutex)

critical section

signal(mutex);

remainder section

until false;

end;

parend(两个进程代码完全一致)

互斥需要调解两者使用资源的速度

在实现互斥时应注意 wait(mutex) 和signal(mutex) 必须成对地出现。缺wait(mutex)(申请资源)将会引起系统混乱,不能保证对临界资源的互斥访问。缺signal(mutex)将会使该临界资源永久不会释放(系统当中某些进程将永远处于阻塞状态)

操作系统学习笔记--互斥(共享资源)相关推荐

  1. (uC/OS-II学习笔记)关于共享资源与信号量

    uC/os-ii中任务间相互通信的媒介叫做事件. 关于OS_EVENT数据结构 #if (OS_EVENT_EN) && (OS_MAX_EVENTS > 0u)typedef ...

  2. UC/OS III操作系统学习笔记

    UCOS操作系统学习笔记 1.UCOSIII任务 1.1任务管理 1.2 任务创建和删除.挂起和恢复 1.3 系统内部任务 2.UCOSIII中断和时间管理 2.1 中断管理 2.2 时间管理 3.U ...

  3. 操作系统学习笔记目录(暂时不全223)

    操作系统学习笔记目录章节汇总 (暂时不全,目前只有第一章+第二章-浅谈线程,进程-2020.3.6) 文章目录 操作系统学习笔记目录章节汇总 1.打开钢琴的盖子(序章) 1.1-操作系统的概念(定义) ...

  4. 操作系统学习笔记-02-操作系统的特征

    操作系统学习笔记-2019 王道考研 操作系统-2-操作系统的特征 文章目录 02-操作系统四个的特征 2.1-知识概览 2.2并发 2.3共享 2.3并发和共享的关系 2.4虚拟 2.5小结:虚拟技 ...

  5. 计算机操作系统 学习笔记(第四版 汤小丹)(上)

    第一章-操作系统概述 操作系统基本概念 操作系统(Operation System),简称OS,是管理计算机『硬件』与『软件』资源的计算机程序.它负责计算机的全部软.硬资源的分配.调度工作,控制和协调 ...

  6. 操作系统学习笔记-2.1.5线程概念和多线程模型

    操作系统学习笔记-2019 王道考研 操作系统-2.1.5线程概念和多线程模型 文章目录 5线程概念和多线程模型 5.1知识概览 5.2 什么是线程?为什么要引入线程? 5.3引入线程及之后,有什么变 ...

  7. 操作系统学习笔记-2.1.4进程通信

    操作系统学习笔记-2019 王道考研 操作系统-2.1.4进程通信 文章目录 4进程通信 4.1知识总览 4.2前置知识:什么是进程通信? 4.3共享存储 4.4 管道通信 4.5消息传递 4.6小结 ...

  8. 操作系统学习笔记-03-操作系统的发展和分类

    操作系统学习笔记-2019 王道考研 操作系统-01-操作系统的概念(定义),功能和目标 文章目录 3-操作系统的发展和分类 3.1知识总览 3.2 手工操作,纸带机,串行式 3.3批处理阶段 -单道 ...

  9. 操作系统学习笔记-01-操作系统的概念(定义),功能和目标

    操作系统学习笔记-2019 王道考研 操作系统-01-操作系统的概念(定义),功能和目标 文章目录 1-操作系统的概念(定义),功能和目标 1.1常见的操作系统 1.2概念(定义) 1.3-操作系统的 ...

最新文章

  1. windows下apache配置虚拟主机的两个方法
  2. 分布式任务队列 Celery — 应用基础
  3. 完整计算机组成系统,计算机组成原理与完整系统结构.doc
  4. pfSense book之静态路由
  5. cmd 删除文件夹_永远不要碰的5个macOS文件夹及原因
  6. XCTF-高手进阶区:ics-04
  7. c++用WinForm做界面的实现
  8. 51nod2626-未来常数【树上启发式合并,线段树】
  9. 钉钉开放平台:内网穿透工具 - 服务器免费打造教程
  10. css按钮大小固定,在CSS中创建一个固定宽度的按钮
  11. GPFS文件系统笔记
  12. ACM-ICPC训练行动路线图
  13. 磁盘调度算法课程设计(附源代码)
  14. vue3 使用element-plus 表单校验
  15. 【MicroPython ESP32】ssd1306 0.96“OLED+气象数据中文显示
  16. index.highlight.max_analyzed_offset 偏移量设置
  17. 软件工程师工作经历_我学会成为高级软件工程师的经历
  18. yum rpm 命令
  19. hadoop一些面试可能问的东西
  20. windows7 VCP安装失败的解决办法

热门文章

  1. 大飞品树莓——自定制树莓派4B系统安装
  2. ARDS患者如何进行肺复张
  3. 微信小程序-如何实现input框输入emoji表情?【亲测有效】
  4. MSSQL之一 数据库系统简介 与SQL Server 2008概述
  5. SpringBoot后端生成漂亮美观的验证码图片
  6. allegro 3D模型怎么找? PCB的DFA如何设计?如何加载PCB的3D模型?如何避免器件之间的干涉?PCB的3D设计 DFA设计的概念
  7. 最新版vscode for mac 国内高速下载
  8. ATT 汇编 lea 和 mov指令区别
  9. Kubernetes探针检测
  10. CI/CD :Pipeline