1 思维导图
- 软件实现方法的思想:在进入区设置并检查一些标志 来标明是否有进程在临界区中,若已有进程在临界区,则在进入区通过循环检查进行等待,进程离开临界区后则在退出区修改标志。
入区通过循环检查进行等待,进程离开临界区后则在退出区修改标志。
2 单标志法
算法思想:两个进程在访问临界区后会把使用临界区的权限转交给另一个进程。也就是说每个进程进入临界区的权限只能被另一个进程赋予。
2 双标志先检查法
算法思想:设置一个布尔型数组,数组中的各个元素用来标记进程想进入临界区的意愿;每个进程在进入临界区之前先检查当前有没有别的进程想进入临界区,如果没有,则把自身对应的标志设置true。
3 双标志后检查法
算法思想:是双标志先检查法的改进,加锁。
4 Peterson算法