O_Direct O_sync参数意思

一、O_Direct O_sync sync参数意思
在这里插入图片描述
参考:https://my.oschina.net/fileoptions/blog/3061997

O_Direct:表示的是数据从用户态文件下发,通过VFS文件系统,数据直接从文件系统提交到下面的块设备层,也就是通过submit_bio提交到块设备层。然后该请求可能会在块设备层排队合并等,就返回了。此时不能不保证数据已经持久化化到盘上。因此O_Direct只是说明这个请求不会经过PageCache而已,不代表会持久化到盘上。
O_sync:表示数据会通过文件系统到达PageCache,但是数据是write through的方式。可是此时数据会同步写到盘上,等待盘上数据持久化到盘上后才返回。O_sync是指的刷page cache的数据到盘上。
O_Direct和O_sync是系统调用时候,打开文件时候传入的标记。告诉下面内核该怎么做的意思。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章