内核中与驱动相关的内存操作之十五(标准I/O)
2014-03-18 16:13
323 查看
标准IO又叫缓存IO,内核默认的就是标准IO机制.大多数文件系统的默认I/O操作都是缓存 I/O,比如用户将要写到磁盘的数据会被标准IO缓存,在一定的时机内核会把缓冲的数据写到物理磁盘上.其思想框架如下图所示:
标准IO有以下优点:
标准IO有以下缺点:
标准IO有以下优点:
•缓存 I/O 使用了操作系统内核缓冲区,在一定程度上分离了应用程序空间和实际的物理设备; •缓存 I/O 可以减少读盘的次数,从而提高性能;
标准IO有以下缺点:
1).当处于数据量比较大的I/O操作时,数据从页缓存在用户程序空间和物理设备之间进行多次数据拷贝操作,是很消耗资源的; 2).并不能保证物理设备上的数据是最新的; 3).当一些应用程序有自身的缓冲机制,就应该摒弃系统的标准IO.为了解决物理设备上的数据最新和减小对物理设备操作的次数.内核提供了三种机制供用户选择:同步写机制、延迟写机制、异步写机制:
1.同步写机制:数据立马更新到物理设备上; 2.延迟写机制:定时刷新数据到物理设备上; 3.异步写机制:数据刷新到物理设备上并通知用户程序.
相关文章推荐
- 内核中与驱动相关的内存操作之二(cache)
- 内核中与驱动相关的内存操作之十一(IO内存)
- 内核中与驱动相关的内存操作之十二(mmap)
- 内核中与驱动相关的内存操作之十三(/dev/mem)
- 内核中与驱动相关的内存操作之五(kmalloc)
- 内核中与驱动相关的内存操作之三(内存模型)
- 内核中与驱动相关的内存操作之十四(直接I/O)
- 内核中与驱动相关的内存操作之六(vmalloc)
- 内核中与驱动相关的内存操作之十六(异步I/O)
- 内核中与驱动相关的内存操作之十七(DMA)
- 内核中与驱动相关的内存操作之七(slab)
- 内核中与驱动相关的内存操作之八(面向页的内存分配)
- 内核中与驱动相关的内存操作之四(常用结构体)
- 内核中与驱动相关的内存操作之九(重映射)
- 内核中与驱动相关的内存操作之十(内存屏障)
- 内核中与驱动相关的内存操作之一(MMU)
- 查看linux系统内核、CPU内存、系统位数的相关命令
- Windows驱动开发(3) - 内核模式下的字符串操作
- Linux 内核驱动里对文件的操作
- Windows内核常见数据结构(驱动相关)