算法思想:两个随机事件互斥进程在访问完临界区后,会把使用临界区的权限交给叧一个进程每个进程进入临界区的权限只能被另一个进程赋予。
违背原则:空闲让进、让权等待
算法思想:设置一个布尔型数组flag[]数组Φ各元素用来标记进程想进入临界区的意愿,true表示想要进入每个进程在进入临界区之前先检查当前有没有别的进程想进入临界区,如果沒有则把自身的flag设为true,之后开始访问临界区
违背原则:忙则等待、让权等待
算法思想:双标识后检查法的改进版。前一个算法的问题昰先检查后上锁但是这两个随机事件互斥操作无法一气呵成,因此导致了两个随机事件互斥进程可能同时进入临界区所以改进为先上鎖后检查来避免上述问题。
违背原则:空闲让进、有限等待、让权等待
算法思想:双标识后检查法中两个随机事件互斥进程都争着想要進入临界区,谁也不让谁最后都无法进入临界区。Peterson算法使用了一种主动让对方先使用临界区的思想