2015-06-28 2 views
-1

Все файловые системы Linux имеют размер блока 4kb. Допустим, у меня 10 МБ жесткого диска. Это означает, что у меня есть 2560 блоков, и, скажем, я скопировал 2560 файлов, каждый из которых имеет 1 килобайт. Каждый блок размером 1 kb займет 1 блок, хотя он не заполняет весь блок.Как работает размер блока файловой системы?

Итак, весь мой диск заполнен, но у меня есть 2560x3kb свободного места. Если я хочу сохранить другой файл, скажем, 1 мб, будет ли файловая система хранить? Будет ли он писать в свободном пространстве, оставшемся в отдельных блоках? Есть ли какая-либо концепция, рассматривающая эту проблему?

Буду признателен за разъяснение. Спасибо заранее.

ответ

0

Это правда, вы тратите впустую дисковое пространство, если вы храните много файлов, размер которых намного меньше, чем минимальный размер блока файловой системы.

Причина, по которой размер блока составляет около 4kb, представляет собой количество метаданных, связанных с блоками. Чем меньше размер блока, тем больше метаданных о расположении блоков по сравнению с фактическими данными, а более фрагментированный - это худший сценарий.

Однако существуют файловые системы с различными размерами блоков, большинство файловых систем позволяют определить размер блока, как правило, минимальный размер блока составляет 512 байт. Если вы храните много очень маленьких файлов с небольшим размером блока, это может иметь смысл.

http://www.tldp.org/LDP/sag/html/filesystems.html

XFS Filesystem документация имеет некоторые комментарии о том, как выбрать файловую систему размер блока - это также возможность определенного размера блока каталога:

http://techpubs.sgi.com/library/tpl/cgi-bin/getdoc.cgi?coll=linux&db=bks&srch=&fname=/SGI_Admin/LX_XFS_AG/sgi_html/ch02.html

Вы должны рассмотреть вопрос об установлении логический размер блока для файловой системы , который больше размера логического блока для файловой системы , если вы поддерживаете приложение, которое читает d каталогов (с системными вызовами readdir (3C) или getdents (2)) много раз в зависимости от того, сколько он создает и удаляет файлы. Использование небольшого размера блока файловой системы размеромсохраняет на диске и на пропускной способности ввода-вывода для небольших файлов.