标准IO和直接IO

简介: 标准IO和直接IO

标准IO访问方式

直接IO访问方式(open +O_DIRECT=绕过内核缓冲区直接访问,有效避免CPU和内存多余时间的开销)

注意:直接I/0的缺点就是如果访问的数据不在应用程序缓存中,那么每次数据都会直接从磁盘进行加载,这种直接加载会非常缓慢。通常直接I/0跟异步I/0结合使用会得到较好的性能。

O_DIRECT 不等于 O_SYNC(同步io), 后者只对写数据有效,它会将内核缓冲区的数据立即写入到磁盘,将机器故障时数据的丢失减小到最小,但数据仍然需要经过内核缓冲区。

缓存同步:

 

目录
相关文章
|
2月前
|
缓存 Linux API
文件IO和标准IO的区别
文件IO和标准IO的区别
33 2
|
12月前
|
编译器 Linux vr&ar
基础IO+文件(三)
基础IO+文件
49 0
|
12月前
|
缓存 Linux C语言
基础IO+文件(一)
基础IO+文件
63 0
|
12月前
|
存储 Linux 块存储
基础IO+文件(二)
基础IO+文件
51 0
|
Linux
day26-系统IO(2022.2.23)
day26-系统IO(2022.2.23)
104 1
|
12月前
|
存储 Linux C语言
基础IO详解(二)
基础IO详解
68 0
|
12月前
|
存储 Linux 文件存储
基础IO详解(一)
基础IO详解
83 0
day30-标准IO(2022.3.1)
day30-标准IO(2022.3.1)
58 0
|
XML 存储 SQL
3. IO
3. IO
90 0
|
存储 资源调度 Kubernetes
Garden.io:它是什么以及为什么要使用它?
Garden.io:它是什么以及为什么要使用它?
121 0