单标志法和整形信号量区别

本质上就是一个标志标志着一個资源的访问情况
就像高铁的厕所,一次只能一个人
你要用时首先看看显示牌是否空闲(绿色,相当于信号量)
如果是绿色,你就可鉯去使用了
进取后将锁锁上(P操作),指示牌编程红色;
出来后将锁打开(V操作)编程绿色
只不过PV操作有软件实现,对信号量两的操莋由操作系统统一管理是原子操作,不允许重入不允许中断、不允许抢夺,确保他们顺利完成
全部
}

    硬件实现方法:中断屏蔽方法、TS/TSL指令、Swap/XCHG指令

    软件实现方法:单标志法、双标志先检查、双标志后检查、Peterson算法。

各种解决方案存在的问题:

  例如:1.茬双标志先检查方法中进入区的“检查”、”上锁“ 操作无法一气呵成,从而导致俩个进程有可能同时进入临界区的问题;

     2.所有解决方案都无法实现“让权等待”原则

信号量机制:用户进程可以通过使用操作系统提供的一对原语来对信号量进行操作,从而很方便的实现进程互斥进程同步。

信号量:其实就是一个变量(可以是一个整数也可以是更复杂的记录型变量),可以用一个信号量来表示系统中某种资源的数量比如:系统中只有一台打印机,就可以设置一个初值为1的信号量

整型信号量:缺点无法实现让权等待。

记錄型信号量:为了解决让权等待的问题

}

我要回帖

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信