Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion os/6_file_system/file_system.md
Original file line number Diff line number Diff line change
Expand Up @@ -403,7 +403,7 @@ Linux 系统的 ext 文件系统就是采用了哈希表,来保存目录的内

我们都知道磁盘 I/O 是非常慢的,所以 Linux 内核为了减少磁盘 I/O 次数,在系统调用后,会把用户数据拷贝到内核中缓存起来,这个内核缓存空间也就是「页缓存」,只有当缓存满足某些条件的时候,才发起磁盘 I/O 的请求。

那么,**根据是「否利用操作系统的缓存」,可以把文件 I/O 分为直接 I/O 与非直接 I/O**:
那么,**根据「是否利用操作系统的缓存」,可以把文件 I/O 分为直接 I/O 与非直接 I/O**:

- 直接 I/O,不会发生内核缓存和用户程序之间数据复制,而是直接经过文件系统访问磁盘。
- 非直接 I/O,读操作时,数据从内核缓存中拷贝给用户程序,写操作时,数据从用户程序拷贝给内核缓存,再由内核决定什么时候写入数据到磁盘。
Expand Down