码迷,mamicode.com
首页 > 其他好文 > 详细

操作系统之信号量关系

时间:2019-03-25 20:46:47      阅读:210      评论:0      收藏:0      [点我收藏+]

标签:类型   个数   元素   进程   阻塞队列   sign   wait   有一个   减法   

互斥与同步的信号量关系
1.1软件
1.2硬件
屏蔽中断
机器指令(test set)
如果任何期间都可以中断就不是硬件
缺点
盲等占用处理器的时间
饥饿现象
死锁
1.3信号量
semaphores
进程之间用来通信的标志
有进程要等待信号量的话就阻塞自己
等待和信号量都不可中断
有一个队列
----------
wait & signal
Wait操作给信号量做减法
semaphore
wait(s):s-1
申请资源并且可能阻塞自己<s<0>(不出现盲等)
Signal(s): s+1
释放资源并唤醒阻塞进程<s<=0>
·通用信号量
通用信号量是记录型,其中一个是整型,另一个域为队列
其元素等待该信号量的阻塞进程
·二进制信号量
1.4信号量的类型
·互斥信号量和资源信号量
互斥信号量是用于申请或者释放资源的使用权(只能有一个人使用)
资源信号量标识某类资源的可用个数
wait资源用于申请资源,可以阻塞自己
signal资源用于唤醒资源唤醒一个阻塞进程
互斥信号量
s.count 》=0的时候标识可以用的资源个数
s.count <0 标识在阻塞队列里被阻塞的进程个数

1.4量程
1.5信息传递

操作系统之信号量关系

标签:类型   个数   元素   进程   阻塞队列   sign   wait   有一个   减法   

原文地址:https://www.cnblogs.com/ttnrt/p/10596347.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!