2019-11-07 |

Linux的I/O模型包含哪五种?各自有什么特点?

A
B
C
D
答案:
  • 同步I/O

    • 阻塞I/O:进程保持阻塞状态,直到数据拷贝完成;

    • 非阻塞I/O:轮询检查内核数据,直到数据准备好,再拷贝数据到进程,进行数据处理;需要注意的是,拷贝数据的过程中,进程依然是阻塞装填;

    • 多路复用I/O:进程调用selectpollepoll函数,保持阻塞状态,但与阻塞I/O不同的是,这些函数可以同时处理多个I/O;

    • 信号驱动I/O:首先建立一个信号处理函数,进程继续运行并不阻塞,当数据准备好时,进程会收到一个SIGIO信号,可以在信号处理函数中处理数据;

  • 异步I/O:在发起一个调用之后,调用者不能立即得到调用结果的返回,需要被调用者通过状态、通知和回调来通知调用者。

解释:

发表评论

    评价:
    验证码: 点击我更换图片
    最新评论