Безопасность в файловой системе NTFS
Рефераты >> Программирование и компьютеры >> Безопасность в файловой системе NTFS

  • RST - (Random Seek Time - время случайного доступа). К сожалению, для доступа к системным областям на типичном диске более сложной файловой системы NTFS, винчестеру приходится совершать, в среднем, больше движений головками диска, чем в более простых системах FAT16 и FAT32. Большая фрагментация каталогов, возможность фрагментации системных областей - всё это делает диски NTFS гораздо более чувствительными к скорости считывания случайных (произвольных) областей диска. По этой причине использовать NTFS на медленных (старых) дисках не рекомендуется, так как высокое (худшее) время поиска дорожки дает еще один плюс в пользу систем FAT.
  • Наличие Bus Mastering. Bus Mastering - специальный режим работы драйвера и контроллера, при использовании которого обмен с диском производится без участия процессора. Стоит отметить, что система запаздывающего кэширования NTFS сможет действовать гораздо более эффективно при наличии Bus Mastering, т.к. NTFS производит отложенную запись большего числа данных. Системы без Bus Mastering в настоящее время встречаются достаточно редко (обычно это накопители или контроллеры, работающие в режиме PIO3 или PIO4), и если вы работаете с таким диском - то, скорее всего, NTFS потеряет еще пару очков быстродействия, особенно при операциях модификации каталогов (например, активная работа в Интернете - работа с КЭШем Интернет).
  • Кэширование, как чтения, так и записи на уровне жестких дисков (объем буфера HDD (Hard Disk Drive – жесткий диск (винчестер)) - от 128 КБ до 1-2 МБ в современных дорогих дисках) - фактор, который будет более полезен системам на основе FAT. NTFS же из соображений надежности хранения информации осуществляет модификацию системных областей с флагом "не кэшировать запись", поэтому быстродействие системы NTFS слабо зависит от возможности кэширования самого HDD. Системы FAT, напротив, получат некоторый плюс от кэширования записи на физическом уровне. Так что хочу отметить, что, вообще говоря, всерьез принимать в расчет размер буфера HDD при оценке быстродействия тех или иных файловых систем не стоит.

Подводя краткий итог влияния быстродействия диска и контроллера на быстродействия системы в целом, можно сказать так: NTFS страдает от медленных дисков гораздо сильнее, чем FAT.

Размер кластера

Хотелось бы сказать пару слов о размере кластера - тот параметр, который в файловых системах FAT32 и NTFS можно задавать при форматировании практически произвольно. Прежде всего, надо сказать, что больший размер кластера - это практически всегда большее быстродействие. Однако, размер кластера на томе NTFS, имеет меньшее влияние на быстродействие, чем размер кластера для FAT32.

Типичный размер кластера для NTFS - 4 КБ. Стоит отметить, что при большем размере кластера отключается встроенная в файловую систему возможность сжатия индивидуальных файлов, а также перестает работать стандартная API дефрагментация - т.е. подавляющее число дефрагментаторов, в том числе встроенный в Windows 2000/XP, будут неспособны дефрагментировать этот диск. SpeedDisk, впрочем, сможет - он работает без использования API. Оптимальным с точки зрения быстродействия, по крайней мере, для средних и больших файлов, считается (самой Microsoft) размер 16 КБ. Увеличивать размер далее неразумно из-за слишком больших расходов на неэффективность хранения данных и из-за мизерного дальнейшего увеличения быстродействия. Если вы хотите повысить быстродействие NTFS ценой потери возможности сжатия - задумайтесь о форматировании диска с размером кластера, большим, чем 4 КБ. Но имейте в виду, что это даст довольно скромный прирост быстродействия, который часто не стоит даже уменьшения эффективности размещения файлов на диске.

Быстродействие системы FAT32, напротив, можно довольно существенно повысить, увеличив размер кластера. Если в NTFS размер кластера почти не влияет на размер и характер данных системных областей, то в системе FAT увеличивая кластер в два раза, мы сокращаем область FAT в те же два раза. Вспомните, что в типичной системе FAT32 эта очень важная для быстродействия область занимает несколько мегабайт. Сокращение области FAT в несколько раз даст заметное увеличение быстродействия, так как объем системных данных файловой системы сильно сократиться - уменьшается и время, затрачиваемое на чтение данных о расположении файлов, и объем оперативной памяти, необходимый для буферизации этой информации. Типичный объем кластера для систем FAT32 составляет тоже 4 КБ, и увеличение его до 8 или даже до 16 КБ - особенно для больших (десяток и более гигабайт) дисков - достаточно разумный шаг.

Другие соображения

NTFS является достаточно сложной системой, поэтому, в отличие от FAT16 и FAT32, имеются и другие факторы, которые могут привести к существенному замедлению работы NTFS:

  • Диск NTFS был получен преобразованием раздела FAT16 или FAT32 (команда convert). Данная процедура в большинстве случаев представляет собой тяжелый случай для быстродействия, так как структура служебных областей NTFS, чаще всего, получится очень фрагментированной. Если есть возможность - избегайте преобразования других систем в NTFS, так как это приведет к созданию очень неудачного диска, которому не поможет даже типичный (неспециализированный) дефрагментатор, типа Diskeeper-а или встроенного в Windows 2000/XP.
  • Активная работа с диском, заполненным более чем на 80% - 90%, представляет собой катастрофический для быстродействия NTFS случай, так как фрагментация файлов и, самое главное, служебных областей, будет расти фантастически быстро. Если ваш диск используется в таком режиме - FAT32 будет более удачным выбором при любых других условиях.

3. Выводы

В данной заключительной части "одной строчкой" собраны ключевые особенности быстродействия этих трех файловых систем.

FAT - плюсы:

  • Для эффективной работы требуется немного оперативной памяти.
  • Быстрая работа с малыми и средними по количеству файлов каталогами.
  • Диск совершает в среднем меньшее количество движений головок (по сравнению с NTFS).
  • Эффективная работа на медленных дисках.

FAT - минусы:

  • Катастрофическая потеря быстродействия с увеличением фрагментации, особенно для больших дисков (только FAT32).
  • Сложности с произвольным доступом к большим (скажем, 10% и более от размера диска) файлам.
  • Очень медленная работа с каталогами, содержащими большое количество файлов.

NTFS - плюсы:

  • Фрагментация файлов не имеет практически никаких последствий для самой файловой системы - работа фрагментированной системы ухудшается только с точки зрения доступа к самим данным файлов.
  • Сложность структуры каталогов и число файлов в одном каталоге также не создает особых препятствий быстродействию.
  • Быстрый доступ к произвольному фрагменту файла (например, редактирование больших *.wav файлов).
  • Очень быстрый доступ к маленьким файлам (несколько сотен байт) - весь файл находится в том же месте, где и системные данные (запись MFT).


Страница: