什么是IO多路复用?其原理和用途是什么?

什么是IO?

IO:Input/Output,即数据的读取(接收)/写入(发送)操作,针对不同的数据存储媒介,大致可以分为网络 IO 和磁盘 IO 两种。在 Linux 系统中,为了保证系统安全,操作系统将虚拟内存划分为内核空间和用户空间两部分。因此用户进程无法直接操作IO设备资源,需要通过系统调用完成对应的IO操作。

1、I/O多路复用简介

I/O 多路复用(I/O Multiplexing)是一种高效处理多个 I/O 操作的技术,常用于提高网络服务器或应用程序的并发处理能力。它允许一个线程或进程同时监控多个 I/O 操作,而无需为每个操作创建独立的线程或进程。
以下是对 I/O 多路复用的简介及其用途的详细说明:
阻塞IO非阻塞IO都是早期最常见的网络编程模型,但是他们有着致命的缺点。考虑如下场景:
什么是IO多路复用?其原理和用途是什么?_第1张图片
说明:
每个用户请求都需要使用一个单独的线程进行服务,同时还要

你可能感兴趣的:(Linux,IO多路复用)