xuejianhui

导航

Linux 阻塞I/O、非阻塞I/O和I/O多路复用


 

【前言】:

最近对Linux I/O复用感兴趣,搜索到较多优质资料。

综合起来看,深度和广度足够了,但感觉还是简洁明了。为此准备用自己的思路把这些知识点重构下。

首选,从最初的开发需求和使用场景分析为啥必须要用I/O复用,随便介绍下各种I/O模型;

然后,介绍有哪几种I/O模型、各种特点,以及发展历程;

最后,再介绍下epoll的使用场景和示例,以及底层实现方式。

 


 

参考资料:

★[M. Jones]-使用异步 I/O 大大提高应用程序的性能-in IBM developerWorks

★[skiler]-阻塞I/O、非阻塞I/O和I/O多路复用

[智障大师]-IO - 同步,异步,阻塞,非阻塞 (亡羊补牢篇)

[Anker]-select、poll、epoll之间的区别总结[整理]

[人云思云]-Linux IO模式及 select、poll、epoll详解

UNIX Network Programming Volume 1, Third Edition: The Sockets Networking API

UNIX Network Programming Source Code

[junren]-Linux下的I/O复用与epoll详解

[lvyilong316]-彻底学会使用epoll(一)——ET模式实现分析

[chewbee]-IO多路复用

 


 

 

一、阻塞I/O

 

二、非阻塞I/O

 

三、I/O多路复用

 

四、多路复用的三种方式(都是上面的I/O的多路复用,但是进行了改进)

 

posted on 2018-07-30 21:35  xuejianhui  阅读(168)  评论(0编辑  收藏  举报