linux设备驱动之异步通知与异步I/O

一、基本概念

   同步I/O操作请求发出后,应用程序会阻塞,直到请求满足为止。

    异步I/O的基本思想是允许进程发起很多I/O操作,而不用阻塞或等待任何操作的完成。稍后再接到I/O操作完成通知时,进程再检索I/O操作的结果。

   异步通知是指在访问设备中,一旦设备就绪,驱动程序主动通知应用程序,这样应用程序就不需要查询设备的状态了。

二、异步通知

   异步通知需要在驱动程序中实现fasync()函数,并且在资源可获得时,调用kill_fasync()发出相应信号。应用程序调用fcntl()函数启动异步通知机制。

三、异步I/O

   信号和回调函数是实现内核空间对用户空间应用程序通知的两种机制。在应用程序中,可以使用AIO的API访问资源。字符设备驱动程序要实现异步I/O操作,需要实现file_operations中三个与AIO相关的函数。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值