1、不论是硬件临界资源,还是软件临界资源,多个进程必须互斥地对它进行访问。每个进程中访问临界资源的那段代码称为临界区(CriticalSection)。

每个进程中访问临界资源的那段程序称为临界区(CriticalSection)(临界资源是一次仅允许一个进程使用的共享资源)。每次只准许一个进程进入临界区,进入后不允许其他进程进入。不论是硬件临界资源,还是软件临界资源,多个进程必须互斥地对它进行访问。

多个进程中涉及到同一个临界资源的临界区称为相关临界区。

进程进入临界区的调度原则是:①如果有若干进程要求进入空闲的临界区,一次仅允许一个进程进入。②任何时候,处于临界区内的进程不可多于一个。如已有进程进入自己的临界区,则其它所有试图进入临界区的进程必须等待。③进入临界区的进程要在有限时间内退出,以便其它进程能及时进入自己的临界区。④如果进程不能进入自己的临界区,则应让出CPU,避免进程出现“忙等”现象。

如果有多个线程试图同时访问临界区,那么在有一个线程进入后其他所有试图访问此临界区的线程将被挂起,并一直持续到进入临界区的线程离开。临界区在被释放后,其他线程可以继续抢占,并以此达到用原子方式操作共享资源的目的。

临界区在使用时以CRITICAL_SECTION结构对象保护共享资源,并分别用EnterCriticalSection()和LeaveCriticalSection()函数去标识和释放一个临界区。所用到的CRITICAL_SECTION结构对象必须经过InitializeCriticalSection()的初始化后才能使用,而且必须确保所有线程中的任何试图访问此共享资源的代码都处在此临界区的保护之下。否则临界区将不会起到应有的作用,共享资源依然有被破坏的可能。

临界资源和临界区什么意思?

1、什么是临界区?

答:每个进程中访问临界资源的那段程序称为临界区(临界资源是一次仅允许一个进程使用的共享资源)。每次只准许一个进程进入临界区,进入后不允许其他进程进入。

2、进程进入临界区的调度原则是:

①如果有若干进程要求进入空闲的临界区,一次仅允许一个进程进入。②任何时候,处于临界区内的进程不可多于一个。如已有进程进入自己的临界区,则其它所有试图进入临界区的进程必须等待。③进入临界区的进程要在有限时间内退出,以便其它进程能及时进入自己的临界区。④如果进程不能进入自己的临界区,则应让出CPU,避免进程出现“忙等”现象。
转:临界区-临界资源与临界区的区别_临界区的技术博客_51CTO博客

操作系统:临界资源与临界区的区别相关推荐

  1. 操作系统——临界资源和临界区

    操作系统--临界资源和临界区 1.临界资源 概念:一次仅允许一个进程使用的共享资源. 2.临界区 概念:每个进程中访问临界资源的那段程序称之为临界区. 临界区不是内核对象,而是系统提供的一种数据结构, ...

  2. 临界资源和临界区的区别

    临界资源和临界区的区别 1.临界资源是一种系统资源,需要不同进程互斥访问,而临界区则是每个进程中访问临界资源的一段代码,是属于对应进程的,临界区前后需要设置进入区和退出区以进行检查和恢复.临界区和临界 ...

  3. 简要描述临界资源、临界区及互斥同步机制的原则

    简要描述临界资源.临界区及互斥同步机制的原则 答: ①临界资源:指每次只允许一个进程访问的资源,分为硬件.软件临界资源. ②临界区:每个进程中访问临界资源的那段程序,进程对临界区的访问必然相反,每次仅 ...

  4. 信号量——P、V操作、临界资源、临界区、进程同步

    1.信号量 用来同步进程的特殊变量:一个特殊的计数器,大于0时记录资源的数量,小于0时记录等待资源的进程的数量.当信号量的值大于0时,进程总是可以获取到资源并使用,小于0 时,进程必须阻塞等待有其他进 ...

  5. linux操作系统各版本直接的区别?

    linux操作系统各版本直接的区别? 三大家族: Fedora是基于RHEL,CentOS,Scientific Linux, 和Oracle Linux的社区版本.相比RHEL,Fedora打包了显 ...

  6. 操作系统 - 进程与线程的区别[超详解]

    操作系统 - 进程与线程的区别[超详解]面试高频考题

  7. 操作系统——进程和线程的区别

    操作系统--进程和线程的区别 最近学习了操作系统中的进程和线程这两个知识点,昨天老师给我们出了一道题:进程和线程的区别.听完题目后一脸懵逼,只想到了进程的一部分概念,回来之后就查书,找到了答案. 1. ...

  8. 临界资源与临界区、互斥与同步、原子性概念介绍

    目录 一.临界资源与临界区 二.互斥的概念 三.同步的概念 四.原子性的概念 一.临界资源与临界区 临界资源:凡是能被多个执行流同时访问的资源就是临界资源!(比如多个线程访问同一个全局变量,这里的全局 ...

  9. 计算机系统中临界资源与临界区,2020年中国地质大学(武汉)操作系统原理

    中国地质大学研究生院 硕士研究生入学考试<操作系统原理>考试大纲 一.操作系统概述 考试内容: 操作系统的基本概念.操作系统的发展过程.操作系统在计算机系统中的地位.操作系统的组成.操作系 ...

最新文章

  1. 软件工程-第一次作业
  2. php ismethod,结合php类三种属性说明is_callable和method_exists简单区别
  3. 吴恩达 神经网络和深度学习 第一课 第一周(笔记,代码,数据集)
  4. CSS3常用选择器(三)
  5. 微软发布首个 Chromium Edge stable 预览版
  6. Learning Data Structure_2_线性表、栈和队列
  7. 遗传优化算法优化LSTM结构-准确率
  8. iview 自定义时间选择器组件_视图更新科技发布View UI组件库(即 iView 4.0),超过50项更新...
  9. 【Unity】制作剧情向游戏使用Fungus插件
  10. 在delphi中调用chm帮助文件_delphi教程
  11. python自动输入支付密码_python接入支付宝的实例操作
  12. PMP培训费和考试费
  13. 系统对接方案_钉钉报销单对接财务系统解决方案
  14. 统计英文字数c语言,c语言题目,纯英文字数统计,怎么错了?
  15. 数据库用户创建、角色创建、用户和角色授予权限和权限收回
  16. 什么是PM?团队角色
  17. 百度地图运行轨迹根据车速显示不同颜色线
  18. toad for oracle12.11,Toad for Oracle
  19. 使用IDM批量抓取音效素材下载
  20. 天津城市职业学院计算机查询,天津城市职业学院教务管理系统成绩查询、网上选课查分登录入口...

热门文章

  1. 字典序 java_java实现对map的字典序排序操作示例
  2. 烤瓷牙价格悬殊的原因是什么?
  3. [参]FMCW的MATLAB仿真
  4. FFmpeg5.0源码阅读—— avcodec_open2
  5. Vue项目里引入Muse-UI
  6. 嵌入式开发——Linux C学习
  7. H-ui 前端框架-免费
  8. 谷粒商城 spu保存
  9. lisp自动生成界址点表_基于AutoCAD VBA增减挂钩报备坐标文件自动生成.doc
  10. 如何快速摆脱焦虑困扰,重建内心平静?分享一份无需药物的指南,让你重拾自信并远离焦虑!