1 / 41
文档名称:

互斥与同步 ppt课件.ppt

格式:ppt   大小:655KB   页数:41页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

互斥与同步 ppt课件.ppt

上传人:龙的传人 2018/7/26 文件大小:655 KB

下载得到文件列表

互斥与同步 ppt课件.ppt

相关文档

文档介绍

文档介绍:第三讲
互斥与同步
华软软件工程系
第3章
主要章节
教学要求
本章目的:
讲述采用进程互斥和同步手段合理地利用共享资源,分析了与时间有关的的错误。然后讲述并发处理中通常需要解决的两个问题:死锁和饿死,分析处理死锁的三种常用方法。
教学目标:
进程间的相互关系;互斥的概念;互斥的PV操作实现;同步的概念;同步的实现。
重点与难点:
互斥和同步的概念;PV操作;死锁的防止与避免。
专业术语:
互斥、同步、临界资源、临界区、信号量、PV操作、原语、
进程的同步和互斥(1)
多道程序环境下的问题
全局变量的共享充满危险
资源的优先分配对于OS来说是困难的(处理不好可能死锁),因其运行过程的不可再现,程序错误很难获得
OS至少需要解决的问题
OS必须能够跟踪进程(通过PCB)
OS为每个进程分配资源(CPU、MEM、I/O等)
OS必须保护每个进程的相关信息和资源
OS必须保证每个进程的执行结果与其他并发进程执行时的相对速度无关
因此就有了合作进程(同步)、互斥进程、进程死锁、进程阻塞等概念
进程的同步和互斥(2)
合作进程之间的相互协调以完成相关的操作,称为进程的同步。其实,互斥关系也是一种协调关系,从广义上讲,互斥可看成是一种特殊的同步。
①只有当司机启动车辆后售票员才能开始售票
②只有当售票员关好车门后司机才能开始开车
司机
启动车辆
正常行车
到站停车
售票员
关车门
售票
开车门
进程的同步和互斥(3)
现有进程A和B,在某个系统中共用一台打印机:
(1)当进程A申请到打印机后,进程B申请打印机时将被阻塞;
(2)直到进程A使用完毕,释放打印机后,进程B才能使用。
(3)这种制约关系称为间接制约关系,也为互斥关系。
互斥进程
进程的同步和互斥(4)
例1:“单车道”公路上发生的事件
进程的死锁
解决方法:?
进程的同步和互斥(5)
例2: 城市街道交通阻塞现象
进程的
阻塞
解决方法:红绿灯!
进程的同步和互斥(6)
基本概念
临界资源:一次只能有一个进程使用的独占资源
临界区:包含有访问临界资源的那段代码(区)
进程的同步:合作进程之间的执行次序上的相互协调以完成相关的操作,称为进程的同步。也可称:同步方式共享资源的进程称为进程的同步。
进程的互斥:由于各进程要求共享资源,而有些资源需要互斥使用,因此各进程间竞争使用这些资源,进程的这种关系为进程的互斥。也可称:异步方式共享资源的进程称为进程的互斥。
进程间互斥的必要条件:
多个进程共享同一临界资源
以先来先使用的异步方式共享
进程的同步和互斥(7)
进程的死锁
概念:一组进程中,每个进程都无限等待被该组进程中另一进程所占有的资源,因而永远无法得到的资源,这种现象称为进程死锁,这一组进程就称为死锁进程
产生死锁的原因
系统资源不足
进程推进的顺序不合理
死锁的预防与避免
运行前预防:破坏死锁发生的条件
运行中的避免,如银行家算法
运行中解除,如资源剥夺和进程撤消法
进程的同步和互斥(8)
死锁的一些结论:
参与死锁的进程最少是两个(两个以上的进程才可能会出现死锁)
参与死锁的进程至少有两个已经占有资源
参与死锁的所有进程都在等待资源
进程死锁举例
打印机
摄像头
进程A
进程B
占有
占有
等待
等待
死锁一旦发生,将浪费系统
的大量资源,甚至导致系统崩溃!
进程的同步、互斥、死锁、阻塞
……等等,存在很多问题!
OS是如何解决的?!