经典同步互斥问题
信号量机制
turn=i——谦让
违反空闲让进
flag[i]——意愿
turn=i——谦让
flag[i]——意愿
flag[i]——意愿
- 空闲让进;
- 忙则等待;
- 有限等待;
- 让权等待
仍未遵循让权等待
违反空闲让进和有限等待
违反忙则等待
直接制约关系
间接制约关系
信号量:资源剩余数量
解决了让权等待
互斥信号量mutex,初值为 1
同步信号量 S,初值为 0
多对同步信号量 S,初值为 0
操作一气呵成
block与wakeup操作
wait(S)、signal(S)
即:P(S)、V(S)操作