Linux_设备驱动阻塞/非阻塞IO_等待队列

来源:http://www.verydemo.com/demo_c134_i35600.html

阻塞:顾名思义,就是指在执行设备操作时若不能获得资源则挂起操作,直到满足可操作的条件后再进行操作,被挂起的进程进入休眠状态,被从调度器的运行队列

        走,直到等待的条件满足。

阻塞:就是反过来,进程在不能进行设备操作时并不挂起,它或者放弃,或者不停的查询,直到可以进行位置。

“小王,明白了没这两个基本的概念,比如就像今天的面试就是一个阻塞的问题”我补充到,“当然,是不是说非阻塞一定要不非阻塞好,答案是否定的,比如如果设备驱动阻塞,则用户想获取设备操作就只能不断的用cpu查询(当然不可能放弃了),很显然这又会无谓的消耗CPU资源。在阻塞访问就不存在这样的问题了,不能获取资源的进程进入休眠,它将CPU资源让给了其他进程”。

“听你这么一说我, 再结合今天这架势,我是明白了,只是你刚才说的休眠什么的…那是不是如果条件满足了,再整个休眠唤醒什么的..”小王打岔道。

“不错啊, 有点我当年的风范,懂得触类旁通了,确实这样,这样,我给你两段代码,亲身感受一下吧”

阻塞地都取串口一个字符

阻塞地都取串口一个字符

buf;
fd = ("",O_RDWR);
.. ..
res = (fd,&buf,1); (res …………………………………………………………………………
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值