2022-04-21 19:16:33 +08:00
|
|
|
|
# 8.9 设备驱动中的异步通知与异步 IO
|
|
|
|
|
|
|
|
|
|
阻塞与非阻塞访问、poll() 函数提供了较好的解决设备访问的机制,但是如果有了异步通知整套机制就更加完整了。
|
|
|
|
|
|
|
|
|
|
异步通知的意思是:一旦设备就绪,则主动通知应用程序,这样应用程序根本就不需要查询设备状态,这一点非常类似于硬件上“中断”的概念,比较准确的称谓是“信号驱动的异步 I/O”。信号是在软件层次上对中断机制的一种模拟,在原理上,一个进程收到一个信号与处理器收到一个中断请求可以说是一样的。信号是异步的,一个进程不必通过任何操作来等待信号的到达,事实上,进程也不知道信号到底什么时候到达。
|
|
|
|
|
|
|
|
|
|
Linux 下异步 IO 机制主要有:
|
|
|
|
|
|
|
|
|
|
* Linux 信号
|
|
|
|
|
* AIO
|