同步与互斥linux系统,Linux系统驱动同步与互斥的处理——深圳培训linux

Linux系统驱动无法同步怎么办?Linux系统驱动出现互斥应该如何是好?授人以鱼,不如授人以渔,本文讲述的是解决Linux系统驱动同步与互斥的方法,希望可以教会你这种方法,能给你提供到帮助。

事件等待队列一般用于linux驱动的异步通信,也可以叫做申请设备使用权等待队列。当多个进程去操作一个设备时,这个时候一般要用到事件队列。

1、不可中断睡眠:

wait_event(queue, condition)

wait_event_interruptible(queue, condition)

两个函数只有在condition变为true才能唤醒,否则一直睡眠,即是调用wake_up()也不能唤醒。

2、可中断睡眠

wait_event_timeout(queue, condition, timeout)

wait_event_interruptible_timeout(queue, condition,

timeout)

两个函数在condition变为true或wake_up_interruptible()被调用都能被唤醒。

3,唤醒函数:

void wake_up(wait_queue_head_t *queue); //唤醒所有

void wake_up_interruptible(wait_queue_head_t *queue);

//唤醒interruptible

本文由收集于网络,仅供大家分享学习!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值