IO基础

I/O基础教程,在 Linux 系统中,Linux 怎么对文件进行有效的管理呢?文件描述符 file descriptor(fd,文件描述符)就应运而生了。他是用来标识文件的概念或者术语。它是一个非负整数。

阻塞IO

阻塞IO教程,最常用的 I/O 模型就是阻塞 I/O 模型,我们可以简单的理解为一请求一响应,在没有响应的情况下,该请求端不会做任何其他的事情,一直在等待响应。

非阻塞I/O

非阻塞I/O教程,阻塞 I/O 是发起请求的时候,不会停止,会一直等待,直到获取到结果,而非阻塞 I/O 呢?它和阻塞 I/O 不同,它发起请求后会立刻返回,通过不停的轮询获取到结果。

多路复用IO

多路复用I/O教程,多路复用 I/O 的原理和 Linux 里面的 select/epoll 原理类似。它将多个进程的 I/O 注册到 Selector 选择器上面,通过 Selector 对 I/O 数据准备情况的监听来通知客户端从内核获取数据。

信号驱动 IO

信号驱动I/O教程,应用进程使用 sigaction 系统调用,内核立即返回,应用进程可以继续执行,也就是说等待数据阶段应用进程是非阻塞的。

异步IO

异步I/O教程,异步 I/O 它是正真意义上的异步,应用程序发起请求之后,立刻收到请求,就可以做其他事情。

同步异步阻塞非阻塞教程

同步异步阻塞非阻塞教程,很多人会对同步异步,阻塞非阻塞的概念比较模糊。其实同步和异步属于服务端的概念,阻塞和非阻塞属于客户端概念。