HaveFunWithEmbeddedSystem/Chapter8_SOC_与_Linux/8.9_设备驱动中的异步通知与异步_IO.md

827 B
Raw Permalink Blame History

8.9 设备驱动中的异步通知与异步 IO

阻塞与非阻塞访问、poll() 函数提供了较好的解决设备访问的机制,但是如果有了异步通知整套机制就更加完整了。

异步通知的意思是:一旦设备就绪,则主动通知应用程序,这样应用程序根本就不需要查询设备状态,这一点非常类似于硬件上“中断”的概念,比较准确的称谓是“信号驱动的异步 I/O”。信号是在软件层次上对中断机制的一种模拟在原理上一个进程收到一个信号与处理器收到一个中断请求可以说是一样的。信号是异步的一个进程不必通过任何操作来等待信号的到达事实上进程也不知道信号到底什么时候到达。

Linux 下异步 IO 机制主要有:

  • Linux 信号
  • AIO