当前课程知识点:计算机操作系统 >  6 并发程序设计 >  6.5 临界区管理实现的硬件方式 >  6.5 临界区管理实现的硬件方式

返回《计算机操作系统》慕课在线视频课程列表

6.5 临界区管理实现的硬件方式在线视频

6.5 临界区管理实现的硬件方式

下一节:6.6 PV操作与进程互斥

返回《计算机操作系统》慕课在线视频列表

6.5 临界区管理实现的硬件方式课程教案、知识点、字幕

大家好 本视频介绍临界区管理实现的硬件方法

如果我做一条新的指令

把这两条指令的活都干掉了

CPU在执行一条指令过程当中它是不可能中断的

那么就不存在中断的问题

所以我们可以放心的发现

如果用一条机器指令

同时完成测试锁和建立锁的过程

那么临界区管理的问题就解决了

临界区管理就可以有效的实现

那么这样一条指令

我们把它称之为测试并建立指令

如果没有进程在临界区当中

我们就把x变成真值

然后返回占用临界区成功

它就可以把锁置上进入临界区

并且在退出的时候再把锁改变为假值

这就是测试并建立指令

类似的我们也可以用一条其他的指令

来达到与测试并建立指令相同的内容

对换指令也罢测试并建立指令也罢

都是用建立一条新的指令

把原来需要几条指令来做的事情

封闭成一条新的指令

解决了中断问题

使得临界区管理的实现变得可行

那么

这两条指令在进入临界区之前需要忙式等待

如果进不去你就得循环地占用CPU的时间去测试

而这个时间的消耗是无谓的

会引起操作系统效率的低下

有没有什么办法来解决它呢

那么就不存在临界区的执行会被打断

那么就不存在与时间相关的错误

我们必须指出的是

用开关中断的方式来实现临界区的保护

是有非常高的要求的

操作系统的实现者

利用这样一种开关中断的方式来实现原语

来保证对互斥使用资源的有效访问

被证明是非常的有意义

但是这样一个过程

不应该是用户程序解决临界区问题的办法

我们无法保证每一个程序员的编程的素质

我们也无法保证每一个用户在使用临界区的时候

他是不是存在着对自己的利己性甚至恶意攻击

用开关中断来进行临界区管理

会产生一种可怕的滥用的效果

所以说我们不建议用户程序

来使用这种方式实现临界区管理

我们会在后面的过程当中

给出更有效的用户程序

能够有效进行临界区管理的办法

计算机操作系统课程列表:

1 计算机操作系统概述

-1.1 计算机系统概览

--1-1 计算机系统概念

-1.2 计算机硬件系统

--1.2 计算机硬件系统

-1.3 计算机软件系统

--1.3计算机软件系统

-1.4 计算机操作技术的发展

--1.4 计算机操作技术的发展

-1.5 计算机操作系统

--1.5 计算机操作系统

-1.6 资源管理的角度

--1.6 资源管理的角度

-1.7 程序控制的角度

--1.7 程序控制的角度

-1.8 操作系统控制计算机的角度

--1.8 操作系统控制计算机的角度

-1.9 人机交互的角度

--1.9 人机交互的角度

-1.10 程序接口的角度

--1.10 程序接口的角度

-1.11 系统结构的角度

--1.11 系统结构的角度

-1 计算机操作系统概述-随堂测试

2 处理器管理

-2.1 处理器与寄存器

--2.1 处理器与寄存器

-2.2 指令与处理器模式

--2.2 指令与处理器模式

-2.3 中断

--2.3 中断

-2.4 中断源

--2.4 中断源

-2.5 中断系统1

--2.5 中断系统1

-2.6 中断系统2

--2.6 中断系统2

-2.7 多中断的响应与处理

--2.7 多中断的响应与处理

-2.8 进程及其状态

--2.8 进程及其状态

-2.9 进程的数据描述

--2.9 进程的数据描述

-2.10 进程的管理

--2.10 进程的管理

-2.11 进程切换与模式切换

--2.11 进程切换与模式切换

-2.12 多线程技术概述

--2.12 多线程技术概述

-2.13 KLT与ULT

--2.13 KLT与ULT

-2.14 多线程实现的混合策略

--2.14 多线程实现的混合策略

-2.15 处理器调度的层次

--2.15 处理器调度的层次

-2.16 处理器调度算法1

--2.16 处理器调度算法1

-2.17 处理器调度算法2

--2.17 处理器调度算法2

-2 处理器管理-随堂测试

3 存储管理

-3.1 存储管理的主要模式

--3.1 存储管理的主要模式

-3.2 存储管理的功能

--3.2 存储管理的功能

-3.3 虚拟存储器的概念

--3.3 虚拟存储器的概念

-3.4 存储管理的硬件支撑

--3.4 存储管理的硬件支撑

-3.5 单连续分区存储管理

--3.5 单连续分区存储管理

-3.6 可变分区存储管理

--3.6 可变分区存储管理

-3.7 页式存储管理的基本原理

--3.7 页式存储管理的基本原理

-3.8 页式存储管理的地址转换

--3.8 页式存储管理的地址转换

-3.9 页式虚拟存储管理

--3.9 页式虚拟存储管理

-3.10 页面调度

--3.10 页面调度

-3.11 反置页表

--3.11 反置页表

-3.12 段式存储管理

--3.12 段式存储管理

-3.13 段式虚拟存储管理

--3.13 段式虚拟存储管理

-3.14 段页式存储管理

--3.14 段页式存储管理

-3 存储管理-随堂测试

4 设备管理

-4.1 设备管理概述

--4.1 设备管理概述

-4.2 IO控制方式

--4.2 IO控制方式

-4.3 总线与IO

--4.3 总线与IO

-4.4 IO软件的实现层次

--4.4 IO软件的实现层次

-4.5 IO软件的实现

--4.5 IO软件的实现

-4.6 IO缓冲区

--4.6 IO缓冲区

-4.7 设备独立性

--4.7 设备独立性

-4.8 独占型外设的分配

--4.8 独占型外设的分配

-4.9 磁盘的物理结构

--4.9 磁盘的物理结构

-4.10 磁盘的驱动调度

--4.10 磁盘的驱动调度

-4.11 SPOOLing系统

--4.11 SPOOLing系统

-4.12 批处理系统的作业管理

--4.12 批处理系统的作业管理

-4 设备管理-随堂测试

5 文件管理

-5.1 文件的概念

--5.1 文件的概念

-5.2 文件系统及其功能

--5.2 文件系统及其功能

-5.3 文件的存储

--5.3 文件的存储

-5.4 文件的逻辑结构

--5.4 文件的逻辑结构

-5.5 记录的成组与分解

--5.5 记录的成组与分解

-5.6 文件的物理结构

--5.6 文件的物理结构

-5.7 文件的目录结构

--5.7 文件的目录结构

-5.8 文件目录的管理

--5.8 文件目录的管理

-5.9 文件的安全与保护

--5.9 文件的安全与保护

-5.10 文件的保护

--5.10 文件的保护

-5.11 文件的存取方法

--5.11 文件的存取方法

-5.12 文件的使用

--5.12 文件的使用

-5.13 辅助空间管理

--5.13 辅助空间管理

-5.14 文件系统的实现层次

--5.14 文件系统的实现层次

-5 文件管理-随堂测试

6 并发程序设计

-6.1 并发程序设计的概念

--6.1 并发程序设计的概念

-6.2 并发进程的制约关系

--6.2 并发进程的制约关系

-6.3 临界区

--6.3 临界区

-6.4 临界区管理实现的尝试

--6.4 临界区管理实现的尝试

-6.5 临界区管理实现的硬件方式

--6.5 临界区管理实现的硬件方式

-6.6 PV操作与进程互斥

--6.6 PV操作与进程互斥

-6.7 PV操作与进程同步

--6.7 PV操作与进程同步

-6.8 生产者消费者问题探究

--6.8 生产者消费者问题探究

-6.9 管程概述

--6.9 管程概述

-6.10 霍尔管程

--6.10 霍尔管程

-6.11 霍尔管程的例

--6.11 霍尔管程的例

-6.12 进程通信

--6.12 进程通信

-6.13 高级进程通信机制

--6.13 高级进程通信机制

-6.14 死锁的产生

--6.14 死锁的产生

-6.15 死锁的防止

--6.15 死锁的防止

-6.16 死锁的避免

--6.16 死锁的避免

-6.17 死锁的检测

--6.17 死锁的检测

-6 并发程序设计-随堂测试

6.5 临界区管理实现的硬件方式笔记与讨论

也许你还感兴趣的课程:

© 柠檬大学-慕课导航 课程版权归原始院校所有,
本网站仅通过互联网进行慕课课程索引,不提供在线课程学习和视频,请同学们点击报名到课程提供网站进行学习。