Linux网络I/O模型

阅读更多
    Linux的内核将所有外部设备都看做一个文件来操作,对一个文件的读写操作会调用内核提供的系统命令,返回一个file descriptor(fd,文件描述符)。而对一个socket的读写也会有相应的描述符,称为socketfd(socket描述符),描述符就是一个数字,它指向内核中的一个结构体(文件路径,数据区等一些属性)。

    根据UNIX网络编程对I/O模型的分类,UNIX提供了5种I/O模型,分别如下。
    (1)阻塞I/O模型:
Linux网络I/O模型_第1张图片


    (2)非阻塞I/O模型:
Linux网络I/O模型_第2张图片

    (3)I/O复用模型:
Linux网络I/O模型_第3张图片


    (4)信号驱动I/O模型:
Linux网络I/O模型_第4张图片


    (5)异步I/O:
Linux网络I/O模型_第5张图片
  • Linux网络I/O模型_第6张图片
  • 大小: 31.6 KB
  • Linux网络I/O模型_第7张图片
  • 大小: 51 KB
  • Linux网络I/O模型_第8张图片
  • 大小: 46.7 KB
  • Linux网络I/O模型_第9张图片
  • 大小: 47.4 KB
  • Linux网络I/O模型_第10张图片
  • 大小: 37.7 KB
  • 查看图片附件

你可能感兴趣的:(I/O模型,I/O复用模型,信号驱动,异步IO)