第二章b - 进程互斥和同步.pdf
文本预览下载声明
计算机操作系统
史椸史椸
西安交通大学电信学院
EMAIL:shiyi@mail.xjtu.edu.cn
2010-3-8
引子
首先,我们看一个例子:进程P1、P2公用一
个变量COUNT,初始值为0
P1、P2两个进程的执行顺序是随机的,P1、
P2可能顺序执行或交错执行
不同的执行顺序不同的执行顺序,,COUNTCOUNT值会不同值会不同,,这是这是不不
允许的
2010年3月8 日星期一
引子
在多道程序系统中,由于资源共享或进程合作,使进程
间形成间接相互制约和直接相互制约关系间形成间接相互制约和直接相互制约关系,,这需要用这需要用进进
程互斥与同步机制来协调两种制约关系
进程互斥与同步的主要任务是使并发执行的进程间进程互斥与同步的主要任务是使并发执行的进程间有效有效
地共享资源和相互合作
进程的互斥与同步机制──信号量及P.V操作(解决进程
同步互斥问题)
2010年3月8 日星期一
2.4 进程互斥和同步
2.4.1 进程同步的基本概念
22.44.22 信号量信号量((semaphore)semaphore)机制机制
2.4.3 经典进程同步问题
2010年3月8 日星期一
2.4.1进程同步的基本概念
2.4.1.1 进程间的制约关系与临界资源
22.44.11.22 临界区的访问过程临界区的访问过程
2.4.1.3 同步机制应遵循的准则
2.4.1.4 进程同步的软件方法
2.4.1.5 进程同步的硬件方法进程同步的硬件方法
2010年3月8 日星期一
2.4.1.1进程间的制约关系与临界资源
多道程序环境进程之间的资源共享和进程合作导致进
程间的制约关系。
进程间的制约关系进程间的制约关系
– 间接制约:源于资源共享--独占分配到的部分或全部共
享资源,“互斥”
– 直接制约直接制约::源于进程间的合作源于进程间的合作--等待来自其他进程的信等待来自其他进程的信
息,“同步”
临界资源:在一段时间内只允许一个进程访问的资源。
– 虽然在多道程序系统中的诸进程可以共享各类资源虽然在多道程序系统中的诸进程可以共享各类资源,然而然而
临界资源却是一次只能供一个进程使 用,使用完后归还系
统,才能给其他进程使用。(如上例变量COUNT是临界
资源资源))。
– 临界资源包括硬件或软件,如:外设、共享代码段、共享
数据结构),多个进程在对其进行访问时(关键是进行写
入或修改),必须互斥地进行
– 有些共享资源可以同时访问,如只读数据,不是临界资源
2010年3月8 日星期一
例1.共享变量的修改冲突
一个飞机订票系统,两个终端,运行T1、T2进
程程
T1 : T2:
.. .. .. .. .. ..
Read( x) ; Read( x) ;
ii ff xx=11 tt henhen ii ff xx=11 tt hen
显示全部