- 5
- 0
- 约1.43万字
- 约 18页
- 2017-02-01 发布于重庆
- 举报
信号量
一.什么是信号量
信号量的使用主要是用来保护共享资源,使得资源在一个时刻只有一个进程(线程)所拥有。
信号量的值为正的时候,说明它空闲。所测试的线程可以锁定而使用它。若为0,说明它被占用,测试的线程要进入睡眠队列中,等待被唤醒。
二.信号量的分类
在学习信号量之前,我们必须先知道——Linux提供两种信号量:
内核信号量,由内核控制路径使用
用户态进程使用的信号量,这种信号量又分为POSIX信号量和SYSTEM V信号量。
POSIX信号量又分为有名信号量和无名信号量。
有名信号量,其值保存在文件中 所以它可以用于线程也可以用于进程间的同步名信号量,其值保存在中struct semaphore { atomic_t count; int sleepers; wait_queue_head_t wait; }void sema_init (struct semaphore *sem, int val);
void init_MUTEX (struct semaphore *sem); //将sem的值置为1,表示资源空闲
void init_MUTEX_LOCKED (struct semaphore *sem); //将sem的值置为0,表示资源忙
(2)申请内核信号量所保
您可能关注的文档
最近下载
- 安川机器人YASKAWA GP215、GP250、GP280说明手册.pdf VIP
- 《互联网企业合规建设评价体系(征求意见稿)》团体标准编制说明.pdf VIP
- 内蒙古鄂尔多斯市2026届九年级中考一模道德与法治试卷(含答案).pdf VIP
- 2003版《山东省建筑工程消耗量定额》.doc VIP
- 深度解析(2026)《GB 42294-2022陆上石油天然气开采安全规程》.pptx VIP
- 2000浙G24-2000浙G25 钢筋混凝土圆桩承台-钢筋混凝土方桩承台.pdf VIP
- PCBA生产PFMEA分析范例.pdf VIP
- 2026年二级建造师执业资格考试继续教育考试题库(完整版)含答案.docx VIP
- 《种子生产与经营管理》第2章种子生产管理.ppt
- 华科版《传热学》全套教学课件.pptx
原创力文档

文档评论(0)