资源互斥访问图例
同步机制应遵循的准则
(1)空闲让进 当无进程处于临界区时,应允许一个请求进入临界区的进程进入临界区;
(2)忙则等待 当已有进程进入临界区时,其他试图进入临界区的进程必须等待;
(3)有限等待 对要求访问临界资源的进程,应保证在有限时间内能进入自己的临界区,以免陷入“死等”状态;
(4)让权等待 当进程不能进入自己的临界区时,应立即释放处理机,以免进程陷入“忙等”。
信号量机制
(1)整型信号量
思想:定义一个整型变量S,除初始化外,仅能通过两个标准的原子操作wait(S)和signal(S)来访问。
wait(S):