Будет ли ядро ​​Linux читать перед записью данных, размер которых меньше размера блока файловой системы? - PullRequest
0 голосов
/ 16 марта 2019

Например, размер блока файловой системы равен 4 КБ, но я записываю в файл только 1 байт с помощью Direct IO. Будет ли ядро ​​читать этот блок в кэш страницы перед записью?

1 Ответ

0 голосов
/ 19 марта 2019

Может быть. Прямой ввод-вывод в Linux сильно варьируется и зависит от базовой файловой системы.

1-байтовая прямая запись ввода-вывода в файловую систему с размером блока 4 КБ может полностью завершиться неудачей, может откатиться на использование кеша страниц или может быть выполнена с помощью прямого ввода-вывода прямо в файл.

И если это не удастся, вы не сможете сказать очень легко.

...