2.2 实现缓冲区互斥的基本方法
软件实现方法

 
 
 
 
 
 
硬件实现方法

 
 
2.3.3 互斥锁

下面用互斥锁解决经典同步问题
2.3.4 信号量

 
 
 
 
 
 

 
 
经典同步问题(做大题再看)
2.3节选择题

皮特森算法:flag实现互斥,turn避免饥饿,选D

 
 x=1
 2
 2
1
 2
 1
1
 0
 选C

 选C 局部变量不用互斥 进程P1和P2是不同的进程 所以x是无关的

A负责唤醒处于就绪态的进程 while(就绪/运行)
 B轮询 选B
 C违背
 D 不是说是硬件不会被中断吗?(存疑)
 答案:if无法被中断,while一直TRUE时,系统可能会终止

 x=0
 123456
 456123
 选B

 A 同步
 B 是x.signal
 C x没有值
 D对
 
 
 

 C.if 资源不够 进入阻塞态
C.if 资源不够 进入阻塞态
 A 皮特森 turn解决饥饿 不会一直等待 有限等待 有while 没有做到让权等待
在这里插入图片描述
  I 互斥
I 互斥
 II 空闲让进
 III 有限等待
 IIII 忙则等待 (有的会一直占用处理机) 不一定非得实现 如皮特森算法
选C



















