Издательский дом ООО "Гейм Лэнд"ЖУРНАЛ ХАКЕР #78, ИЮНЬ 2005 г.

Жесткие диски на крутых виражах

Крис Касперски ака мыщъх

Хакер, номер #078, стр. 078-092-3


Ключ -M отвечает за настройку шумовых характеристик накопителя (Automatic Acoustic Management, или сокращенно AAM). Значение 128 соответствует наиболее тихому режиму, 254 — наиболее быстрому. Промежуточные значения в общем случае не определены (некоторые накопители их поддерживают, некоторые нет). Следует сказать, что значение 128 не только уменьшает шум, но и способствует меньшему износу накопителя, однако падение производительности может быть очень и очень значительным, поэтому трудно посоветовать, какое именно значение выбрать.

Ключ -c управляет режимом передачи данных. Параметр 0 — 16-битная передача, 1 — 32-битная передача, 3 — 32-битная передача со специальным синхросигналом. По умолчанию ядро использует параметр 3 (возможно, не для всех ядер) как наиболее надежный, но и менее производительный, чем 1. Большинство современных чипсетов вполне нормально работают с параметром 1, так что излишняя осторожность тут ни к чему.

Ключ -d1 активирует, а -d0 дезактивирует режим DMA, значительно увеличивающий производительность и радикально снижающий нагрузку на процессор. Однако так бывает далеко не всегда. IDE-устройства, висящие на одной шине, могут конфликтовать между собой, и тогда хотя бы одно из них должно быть принудительно переведено в режим PIO. Выяснить, как обстоят дела в данном конкретном случае, помогает ключ -T, измеряющий скорость передачи данных. Ключ -d1 обычно используется совместно с ключом -Xnnn, форсирующим конкретный режим PIO или DMA. Режиму PIOn соответствует значение (n + 8), то есть -X9 задает PIO1, а -X12 — PIO4. Режиму DMAn соответствует значение (n+32), например -X34 для DMA2, а Ultra DMA — (n+64), например -X69 для UDMA5, который обеспечивает наивысшую производительность, однако поддерживается не всеми жесткими дисками и чипсетами. Узнать список поддерживаемых режимов можно с помощью ключа -i. По умолчанию ядро выбирает не слишком агрессивные режимы передачи данных, оставляя солидный запас производительности за спиной. Однако переход на высшие UDMA-режимы чреват разрушением всего дискового тома, поэтому обязательно зарезервируй его содержимое перед началом экспериментов!

Для сохранения установок необходимо дать команду hdparm -k 1 /dev/hdx, в противном случае они будут утеряны при первом же сбросе IDE-контроллера или перезапуске машины.

[выбор файловой системы]

Существует два типа файловых систем — обычные и журналируемые (journaling). К первым относятся minix, ext2fs и UFS, а к последним — ext3fs, ReiserFS, XFS, JFS. Журналируемые файловые системы намного легче переносят зависание системы и отключение питания во время интенсивных дисковых операций, автоматически возвращая файловую систему в стабильное состояние, однако от других типов разрушений (отказ контроллера, дефекты поверхности, вирусное нашествие) они никак не спасают, а вот производительность роняют изрядно.

Для домашних компьютеров и большинства рабочих станций журналирование совершенно не нужно, и надежности файловой системы ext2fs вполне достаточно, особенно если компьютер оборудован UPS'ом. В ответственных случаях используй ext3fs или ReiserFS. По тестам (типа сферического коня в вакууме) ReiserFS в среднем вдвое, а на операциях записи в 35 раз быстрее, чем ext3fs, что особенно хорошо заметно на мелких файлах. В реальной жизни часто все бывает наоборот. Высокая латентность ReiserFS (то есть промежуток между подачей запроса и получением ответа) вкупе с агрессивной загрузкой процессора заметно отстает от ext3fs, что, опять же, особенно хорошо заметно на мелких файлах (да-да, на тех самых, на которых нам обещали выигрыш!). Подробнее об этом можно прочитать здесь kerneltrap.org/node/view/3466.

Назад на стр. 078-092-2  Содержание  Вперед на стр. 078-092-4