## Linux面试问题汇总----Linux的I/O模型介绍以及同步异步阻塞非阻塞的区别

                                 ## Linux面试问题汇总

              Linux的I/O模型介绍以及同步异步阻塞非阻塞的区别(超级重要)

 一般来说,Linux下系统IO主要就是通过以下几个函数open(),close(),read(),write(),send(),recv(),lseek(),今天就以recv()为例来介绍下IO模型中的同步异步,阻塞非阻塞的区别。

同步、异步

同步:用户进程发起IO后,进行就绪判断,轮询内核状态。
异步:用户进程发起IO后,可以做其他事情,等待内核通知。

阻塞、非阻塞

阻塞:用户进程访问数据时,如果未完成IO,调用的进程一直处于等待状态,直到IO操作完成。
非阻塞:用户进程访问数据时,会马上返回一个状态值,无论是否完成,此时进程可以操作其他事情。

Linux下的五种IO模型

阻塞I/O(blocking I/O)
非阻塞I/O(nonblocking I/O)
I/O复用(select和poll) (I/O multiplexing)
信号驱动I/O(signal driven I/O (SIGIO))
异步I/O (asynchronous I/O (the POSIX aio_functions))
Tip:前四种都是同步,只有最后一种才是异步I/O。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

haikuotiankongdong

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值