临界资源和临界区 例如进程A、B的程序如下: A: begin Input data 1 form I/0 1 Computer... Print results1 by printer;A临界区 nd b: begin Input data 1 form I/0 2 Computer... Print results2 by printer;B临界区 end
临界资源和临界区 例如进程A、 B的程序如下: A: begin Input data 1 form I/O 1 ; Computer……; Print results 1 by printer ; A临界区 end B: begin Input data 1 form I/O 2 ; Computer……; Print results 2 by printer ; B临界区 end
3.进程同步机制 进程在并发执行时为了保证结果的可再现性,各进 程执行序列必须加以限制以保证互斥地使用临界资 源,相互合作完成任务。 多个相关进程在执行次序上的协调称为进程同步。 用于保证多个进程在执行次序上的协调关系的相应 机制称为进程同步机制。 所有的进程同步机制应遵循下述四条准则: ●空闲让进。 当无进程进入临界区时,相应的临界资源处于空 闲状态,因而允许一个请求进入临界区的进程立即 进入自己的临界区
3. 进程同步机制 进程在并发执行时为了保证结果的可再现性,各进 程执行序列必须加以限制以保证互斥地使用临界资 源,相互合作完成任务。 多个相关进程在执行次序上的协调称为进程同步。 用于保证多个进程在执行次序上的协调关系的相应 机制称为进程同步机制。 所有的进程同步机制应遵循下述四条准则: ⚫ 空闲让进。 当无进程进入临界区时,相应的临界资源处于空 闲状态,因而允许一个请求进入临界区的进程立即 进入自己的临界区
进程同步机制 ●忙则等待。 当已有进程进入自己的临界区时,即相应的 临界资源正被访问,因而其它试图进入临界区的 进程必须等待,以保证进程互斥地访问临界资源。 有限等待 对要求访问临界资源的进程,应保证进程能 在有限时间进入临界区,以免陷入“饥饿”状态 让权等待。 当进程不能进入自己的临界区时,应立即释 放处理机,以免进程陷入忙等
进程同步机制 ⚫ 忙则等待。 当已有进程进入自己的临界区时,即相应的 临界资源正被访问,因而其它试图进入临界区的 进程必须等待,以保证进程互斥地访问临界资源。 ⚫ 有限等待。 对要求访问临界资源的进程,应保证进程能 在有限时间进入临界区,以免陷入“饥饿”状态。 ⚫ 让权等待。 当进程不能进入自己的临界区时,应立即释 放处理机,以免进程陷入忙等
进程同步机制 A enters critical region A leaves critical region Process A B attempts to B enters B leaves enter critical critical region critical region region Process B I B blocked Time Mutual exclusion using critical regions
进程同步机制 Mutual exclusion using critical regions
进程同步机制 个由临界区和剩余区1和剩余区2程序段组成的进程采 用进程同步机制后的描述如下: begin remainder section 1 剩余区1 进入区 critical section 临界区 退出区 remainder section2;剩余区2 en 进程同步机制在临界区前加上进入区,它负责对欲访问 的临界资源状态进行检查,以决定是允许该进程进入临 界区还是等待。同时在临界区后加上退出区,它负责释 放临界资源以便其它等待该临界资源的进程使用 实现进程互斥和同步的信号量机制有软件方法、硬件指 令方法、信号量机制和管程等
进程同步机制 ⚫ 一个由临界区和剩余区1和剩余区2程序段组成的进程采 用进程同步机制后的描述如下: begin remainder section 1; 剩余区1 进入区 critical section ; 临界区 退出区 remainder section 2 ; 剩余区2 end 进程同步机制在临界区前加上进入区,它负责对欲访问 的临界资源状态进行检查,以决定是允许该进程进入临 界区还是等待。同时在临界区后加上退出区,它负责释 放临界资源以便其它等待该临界资源的进程使用。 实现进程互斥和同步的信号量机制有软件方法、硬件指 令方法、信号量机制和管程等