linux驱动同步与互斥

嵌入式技术

1378人已加入

描述


  嵌入式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



打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 相关推荐

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分