Из Википедии, бесплатной энциклопедии
  (Перенаправлено из отложенного выделения )
Перейти к навигации Перейти к поиску

Allocate-on-flush (также называемое отложенным распределением ) - это функция файловой системы, реализованная в HFS + , [1] XFS , Reiser4 , ZFS , Btrfs и ext4 . [2] Эта функция также очень похожа на более старую технику, которую UFS Беркли назвал «блочным перераспределением».

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

Это приводит к объединению распределений в более крупные серии. Такая отложенная обработка снижает загрузку ЦП и, как правило, уменьшает фрагментацию диска , особенно для файлов, размер которых увеличивается. Это также может помочь сохранить непрерывность выделения, когда одновременно растут несколько файлов. При использовании в сочетании с копированием при записи, как в ZFS , он может преобразовывать медленную произвольную запись в быструю последовательную запись.

Ссылки [ править ]

  1. ^ «Об оптимизации диска с Mac OS X» . Support.Apple.com . Apple . 2010-02-10 . Проверено 13 декабря 2016 .
  2. ^ LWN.net Еженедельный выпуск за 17 июля 2008 года 2.6.27: что будет (часть 1)