IO模型
- 用户空间与内核空间 1
1.1. 运行用户程序和系统程序的地方,用户程序通过系统调用接口调用系统资源 1
1.2. top 1
1.2.1. CPU耗时 1 - PIO与DMA 1
2.1. PIO 1
2.1.1. 数据通过CPU存储转发,从磁盘读取到内存中 1
2.2. DMA 1
2.2.1. 不经过CPU直接进行磁盘和内存(内核空间)的数据交换 1 - 缓存IO与直接IO 1
3.1. 缓存IO(标准IO) 1
3.1.1. 数据:磁盘->DMA copy到内核空间->CPU copy 到用户空间 1
3.1.2. 读操作 2
3.1.3. 写操作 2
3.1.4. 优点 2
3.1.5. 缺点 2
3.2. 直接IO 2
3.2.1. 数据:磁盘 <-> 用户空间 2
3.2.2. 减少数据复制,多用于数据库管理系统 2
3.2.3. 数据从磁盘加载,加载缓慢 2
3.2.4. open系统调用使用参数O_DIRECT 2 - IO访问方式 2
4.1. 磁盘IO 2
4.1.1. 数据:磁盘->内核缓存->用户缓存 2
4.2. 网络IO 2
4.2.1. 数据:磁盘->内核缓存->应用缓存-&