这篇文章我们来讲一下进程互斥的软件实现方法
目录
1.概述
2.单标志法
3.双标志检查法
4.双标志后检查法
5.Perterson算法
6.小结
首先,我们来看一下这节的大体框架

学习提示:
算法思想:两个进程在访问完临界区后会把使用临界区的权限转交给另一个进程。也就是说每个进程进入临界区的权限只能被另一个进程赋予
下面用代码进行分析一下:


下面看一下代码:


算法思想:双标志先检查法的改版。前一个算法的问题是先“检查”后“上锁”,但是这两个操作又无法一气呵成,因此导致了两个进程同时进入临界区的问题。因此,人们又想到先“上锁”后“检查”的方法,来避免上述问题。
下面来看一下代码:



下面看一下代码:

其中1,2,3三行代码是进入区代码
进入区:
Peterson算法用软件方法解决了进程互斥问题,遵循了空闲让进、忙则等待、有限等待三个原则,但是依然未遵循让权等待的原则。
Peterson算法相较于之前三种软件解决方案来说,是最好的,但依然不够好。
