硬件解法(1) “测试并设置”指令 boolean ts(boolean 10ck) while ts (&lock) boolean old 临界区 old =*lock lock=false 米1ock=true;
硬件解法 (1) “测试并设置”指令 boolean TS (boolean *lock) { boolean old; old = *lock; *lock = true; } while TS(&lock); 临界区 lock=false;
硬件解法(2 “交换”指令 void SWAP(int *a, int*b) key= true; int temp temp=a SWAP(&lock, key fwhile(key) *b= temp 临界区 lock: =false
硬件解法 (2) “交换”指令 void SWAP(int *a, int *b) { int temp; temp = *a; *a = *b; *b = temp; } key = true; do { SWAP(&lock,key); }while(key); 临界区 lock:=false;
硬件解法(3) “开关中断”指令 进入临界区前执行: 执行“关中断”指令 离开临界区后执行: 执行“开中断”指令
硬件解法 (3) “开关中断”指令 进入临界区前执行: 执行“关中断”指令 离开临界区后执行: 执行“开中断”指令
7进程的同步机制 信号量及P.V操作(解决进程同步) 同步机制 信号量及P、V操作;管程;条件 临界域;路径表达式等(用于集中 式系统中 合;通信顺序进程;分布进程;远 程过程调用等(适用于分布式系统 中
7 进程的同步机制── 信号量及P.V操作(解决进程同步) 同步机制: 信号量及P、V操作;管程;条件 临界域;路径表达式等(用于集中 式系统中) 会合;通信顺序进程;分布进程;远 程过程调用等(适用于分布式系统 中)
1)同步机制应满足的基本要求 描述能力 可以实现 效率高 使用方便
• 描述能力 • 可以实现 • 效 率 高 • 使用方便 1) 同步机制应满足的基本要求