操作系统:临界区、临界资源的概念及相关习题
文章目录
- 前言
- 一、相关概念
- 1.临界资源
- 2.临界区
- 二、习题
- 1.习题
- 总结
前言
临界区、临界资源的概念及相关习题
一、相关概念
总体呈现:为了保护共享资源,不让多个进程同时访问这个共享资源,即阻止多个进程同时进入访问这些资源的代码段,这个代码段称为临界区(也称为管程),这种一次只允许一个进程访问的资源称为临界资源。
从实际应用的角度来讲,临界区是通常被用来访问临界资源的代码段。
1.临界资源
临界资源是指每次仅允许一个进程访问的资源.
属于临界资源的硬件有打印机、磁带机等,软件有消息缓冲队列、变量、数组、缓冲区等。 诸进程间应采取互斥方式,实现对这种资源的共享。
注:从操作系统的角度来看,硬盘也属于临界资源。
2.临界区
每个进程中访问临界资源的那段代码称为临界区。显然,若能保证诸进程互斥地进入自己的临界区,便可实现诸进程对临界资源的互斥访问。为此,每个进程在进入临界区之前,应先对欲访问的临界资源进行检查,看它是否正被访问。如果此刻该临界资源未被访问,进程便可进入临界区对该资源进行访问,并设置它正被访问的标志;如果此刻该临界资源正被某进程访问,则本进程不能进入临界区。
在操作系统中,有临界区的概念。临界区内放的一般是被1个以上的进程或线程(以下只说进程)共用的数据。
临界区内的数据一次只能同时被一个进程使用,当一个进程使用临界区内的数据时,其他需要使用临界区数据的进程进入等待状态。
操作系统需要合理的分配临界区以达到多进程的同步和互斥关系,如果协调不好,就容易使系统处于不安全状态,甚至出现死锁现象。
二、习题
1.习题
总结
继续学习了.
操作系统:临界区、临界资源的概念及相关习题相关推荐
- 操作系统:临界资源与临界区的区别
1.不论是硬件临界资源,还是软件临界资源,多个进程必须互斥地对它进行访问.每个进程中访问临界资源的那段代码称为临界区(CriticalSection). 每个进程中访问临界资源的那段程序称为临界区(C ...
- 考研OS备考|计算机操作系统|汤小丹慕课版|课后习题答案|复试拓展
本文主要是考研复试备考自用,所以课后习题答案主要是简答题部分,此外还有其他的简答补充.如果发现有误,欢迎在评论区或者私信指出. 计算机操作系统|汤小丹慕课版|课后习题答案|考研备考 第1章 操作系统引 ...
- 计算机网络学习(六)—网络层概述以及相关习题
计算机网络学习(六)-网络层概述以及相关习题 学习内容 一.网络层的概述 二.网络层提供的两种服务 三.IPv4地址的概述 四.分类编址IPv4地址 五.划分子网的IPv4地址 六.无分类编制的IPv ...
- SQL全方位攻略:之数据库历史、数据库基本概念和相关术语,以及常见的数据库类型介绍
文章目录 1.数据库介绍 1.1 数据库历史 1.2 数据库基本概念和术语 1.2.1. 数据库 1.2.2. 数据库管理系统(DBMS) 1.2.3. 应用程序 1.2.4. 模式(Schema) ...
- 进程调度算法相关习题
处理机调度与死锁相关习题 1.1.假设一个系统有 5 个进程,他们的到达时间和服务时间如上表所示,忽略 I/O 以及其他的开销时间,若分别按 先来先服务( FCFS ) . 非抢占式及抢占 的短进程优 ...
- 【Windows 应用程序开发详解】四.Windows开发基本概念和相关术语(一)
[Windows 应用程序开发详解]四.Windows开发基本概念和相关术语 一.Windows API 二.服务.函数和例程 一.Windows API Windows API介绍: Windows ...
- Linux操作系统:操作系统与进程之fork、相关状态、僵尸进程
文章目录 操作系统 什么是操作系统 操作系统如何管理 系统调用和库函数概念 为什么需要操作系统 进程 进程的概念 如何管理进程 一.描述 二.PCB 三.task_struct 进程相关操作 一.查看 ...
- Database之SQLSever:T-SQL数据语言操作(数据定义语句DDL、数据操作语句DML、数据控制语句DCL、其他基本语句、流程控制语句、批处理语句)概念及其相关案例之详细攻略
Database之SQLSever:T-SQL数据语言操作(数据定义语句DDL.数据操作语句DML.数据控制语句DCL.其他基本语句.流程控制语句.批处理语句)概念及其相关案例之详细攻略 目录 T-S ...
- Database之SQLSever:SQL命令实现理解索引、规则、默认概念及其相关案例之详细攻略
Database之SQLSever:SQL命令实现理解索引.规则.默认概念及其相关案例之详细攻略 目录 SQL命令实现理解索引.规则.默认概念 索引 规则
最新文章
- ISME:高手开杠-‘1%的微生物可培养’到底为哪般?
- 【教程】瘦AP升级为胖AP的终极大法
- xss漏洞的poc与exp
- HOG特征(Histogram of Gradient)总结
- 【读书笔记】.NET本质论第四章-Programming with Type(Part Two)
- sklearn中的Linear_model的score函数讲解
- 搜狗输入法回应误推地震信息;近亿人在钉钉上报健康情况;Rust 1.41.0发布 | 极客头条...
- go grpc压缩_跟我学 gRPC—1. gRPC 及相关介绍
- Python库-pandas详解
- 保持简单:纪念丹尼斯•里奇
- 计算机公式里qf是什么,计算公式
- c语言dt2文件,JETSON NANO 2G使用笔记2-查看配置信息 第一个C程序 配置VNC 文件管理SCP...
- webgis中等值面生成技术之-arcgis 用自带工具生成等值面并其发布成gp服务
- 茶叶的基本知识,喝茶的好处和坏处
- HMM和Viterbi算法
- python分形曲线代码_Python:绘制L-System的分形图
- 零基础如何快速学习Java?Java基础入门秘诀
- 验证输入是否为正确的组织机构代码
- 蔚来汽车3年亏超百亿,只能靠上市来融钱交车?
- S​alesforce是怎么完成从0到1的?
热门文章
- Java基础冒泡排序——高低输出十个学生的成绩
- C语言解析wav文件格式
- 微软自带dns服务器,微软改进Windows 10加密DNS服务器配置(DoH) 现在设置起来更方便...
- 联想笔记本——进入PE系统
- 一天上手Aurora 8B/10B IP核(2)----Aurora概述及数据接口(Framing接口、Streaming接口)
- VUE+Cesium绘制迁徙图结合echarts实现
- mint-ui message box confirm弹框确认和取消按钮的回调
- transformer论文研读
- STM32F10xxx20xxx21xxxL1xxxx Cortex-M3程序设计手册 阅读笔记三(3):Cortex-M3指令描述
- 如何使用Echarts设计专业的K线图