一、进程同步和进程互斥的基本概念
1、进程同步
进程的并发性带来了进程的异步,有时候进程之间需要协同的工作,这时就需要进程的同步来解决进程之间的异步所带来的问题。
2、进程的互斥
进程不能同时访问一个系统资源。如临界资源,什么是临界资源就是例如视频通话的摄像头不能用于拍照,打印机不能同时访问打印两份文件等这时的摄像头和打印机均是临界资源。
对于临界资源的互斥访问必须遵循的四个原则:
1、空闲让进:不做解释自己理解。
2、忙则等待:不做解释自己理解。
3、有限等待:等待时间有限,不能一直等待防止饥饿
4、让权等待:当进程在等待临界资源应立即放弃处理机。
二、进程互斥的软件实现方式
1、单标志法
2、双标志先检查法
该方法的问题在于对于不同的进程分配时间片,两个进程会出现的1526.。。的执行方式这时会出现两个进程同时访问临界资源,不满足忙则等待。
3、双标志后检查法
根据时间片的分配有可能产生1526..的执行路径,这时系统不能进去临界资源会一直等待,不满足空闲让进,以及有限等待。
4、peterSon法
不遵循让权等待,在等待的过程中依然占据处理机。
三、进程互斥的硬件实现方式
1、中断屏蔽法
有进程进入临界区就关闭中断,直到该进程结束对临界区的使用才开启中断。
2、TestAndSet方法
使用硬件的方式给临界区加锁(关门),完事之后在解锁(开门)。
3、Swap指令
先检查该临界区是否上了锁,一直检查知道临界区开锁,则让该进程进去并且进去之后在上锁。