Издательский дом ООО "Гейм Лэнд"СПЕЦВЫПУСК ЖУРНАЛА ХАКЕР #63, ФЕВРАЛЬ 2006 г.

разгон на четыре буквы

NEZUMI

Спецвыпуск: Хакер, номер #063, стр. 063-010-1


БЕСПОЩАДНОЕ ПОВЫШЕНИЕ РАБОТОСПОСОБНОСТИ NTFS

ДИСКОВАЯ ПОДСИСТЕМА — ОДНО ИЗ САМЫХ «УЗКИХ» МЕСТ КОМПЬЮТЕРА, ЕЕ ПРАВИЛЬНАЯ НАСТРОЙКА ЧАСТО УВЕЛИЧИВАЕТ ПРОИЗВОДИТЕЛЬНОСТЬ В НЕСКОЛЬКО РАЗ, В ТО ВРЕМЯ КАК РАЗГОН ПРОЦЕССОРА ДАЕТ В ЛУЧШЕМ СЛУЧАЕ ДЕСЯТКИ ПРОЦЕНТОВ. МЫ НЕ МОЖЕМ РАССКАЗАТЬ ОБО ВСЕХ ФАЙЛОВЫХ СИСТЕМАХ, ПОЭТОМУ ОСТАНОВИМСЯ НА NTFS, КАК НА САМОЙ ПОПУЛЯРНОЙ

Файловая система NTFS, автоматически устанавливаемая Windows 2000 и XP по умолчанию, привлекает все больше людей. Через несколько лет на нее перейдут все или почти все. Прежде чем погружаться в тонкости настройки NTFS, обсудим, стоит ли вообще переходить на эту систему, — она предоставляет не лучший выбор в плане производительности.

NTFS — это журналируемая файловая система, поддерживающая транзакции, которые значительно уменьшают вероятность потери данных (можно даже вырубать питание в процессе дефрагментации), но вместе с тем вызывают потери производительности, иногда очень значительные. На серверах и «серьезных» рабочих станциях сохранность данных превыше всего, здесь не существует альтернативы, в то время как для домашнего компьютера выбор не так очевиден.

Плюс ко всему NTFS требует много памяти, имеет мерзкую проблему фрагментации $MFT (о ней мы еще поговорим) и плохо справляется с каталогами, содержащими огромное количество файлов (хотя за счет индексации имен файлов на B*tree-деревьях все должно быть наоборот). И вообще NTFS конкретно тормозит по сравнению с FAT32.

Назову преимущества NTFS: поддержка разделов большого объема, возможность установки квот (то есть выделенного объема дискового пространства) и прав разграничения доступа, прозрачное шифрование и упаковка отдельных файлов. На практике ни один из этих пунктов не касается домашних компьютеров. Разделы большого объема? Они, конечно, хороши, но по целому ряду соображений лучше разбить их.

Единственная причина, из-за которой я сижу под NTFS, — это ее отказоустойчивость и надежность. Так что сворачиваем демагогию и переходим к изучению магических заклинаний, повышающих производительность.

Факторы, определяющие производительность

Вот три фактора, которые несут больше всего ответственности за производительность (перечислены в порядке убывания значимости):

1 ФРАГМЕНТАЦИЯ;

2 СКОРОСТЬ ДИСКА;

3 РАЗМЕР КЛАСТЕРА;

Фрагментация

Знакомься! Я — фрагментация! Я ужас, летящий на крыльях ночи, я — стрекот магнитных головок. Я — файл, размазанный по всей поверхности. Я — жуткие тормоза. Я — твой постоянный спутник и главный враг. Многие светлые головы пытались бороться со мной оптимизируя алгоритм выделения свободного пространства файловой системой, но немногие в этом преуспели. NTFS всегда стремится разместить файл в одном непрерывном куске целиком, только где найдешь такой кусок? Вот и приходится дробить файл на части. Голова в одном месте, хвост — совсем в другом. Даже если файл не фрагментирован, но в то же время используемые файлы (скажем, исполняемый файл и файл данных) размешены в различных частях диска, магнитной головке приходится совершать большие телодвижения, что приводит к затратам времени.

Содержание  Вперед на стр. 063-010-2