信号量的部分理解

本文介绍了信号量作为一种任务间通信机制,用于同步和保护临界资源的访问。信号量通过非负整数表示,涉及原子操作p()和v(),以及临界资源和临界区的概念,确保了多进程环境下的互斥访问。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1,信号量是一种实现任务间通信的机制,可以实现任务之间的同步或者临界资源的互斥访问,常用于协助一组相互竞争的任务来访问临界资源。

2,信号量的抽象和操作:信号量是一个非负整形(sem),呀有两个原子操作:p():sem减1,如果sem<0,则阻塞等待,否则继续往下执行。P():sem加1,如果sem<=0,则唤醒一个等待的P

3,原子操作:就是不会被线程调度机制所打断的操作,这种操作一旦开始就一直运行到结束。

4,临界资源:是指一次执行过程中只允许一个进程访问的共享资源。多进程必须互斥的对它进行访问。属于临界资源的有打印机、磁带机、软件共享队列等

5,临界区:每个进程访问临界资源的那段代码称为临界区。每次只允许一个进程进入临界区,进入后,不允许其他进程进入

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值