- •Анатомия жесткого диска
- •Магнитные головки
- •Позиционер (head positioner)
- •Все остальное...
- •Служебная информация
- •От запуска до остановки
- •Пользовательская информация
- •Управляющая электроника
- •В заключение
- •Разделы жесткого диска
- •Общее описание файловых систем Введение
- •Ufs (Unix File System)
- •NetWare
- •Заключение
- •Файловая система fat 32
- •Главная загрузочная запись (mbr)
- •Dos32 (0в).
- •Dos32x (0с). Определяет основной раздел
- •Загрузочный сектор (boot)
- •Изменения в загрузочном секторе Число зарезервированных секторов
- •Новый блок параметров bios
- •Поле корневого каталога.
- •32-Разрядная fat-таблица
- •Каталог в fat32
- •Зеркализация fat
- •Корневой каталог
- •Поддержка длинных имен файлов
- •Размещение длинных имен в каталожной записи
- •Файловая система ntfs Физическая структура ntfs
- •Структура раздела - общий взгляд
- •Mft и его структура
- •Метафайлы
- •Файлы и потоки
- •Каталоги
- •Журналирование
- •Безопасность
- •Hard links
- •Symbolic links (nt5)
- •Шифрование (nt5)
- •Особенности дефрагментации ntfs
- •К истокам проблемы...
- •Средства решения?
- •Что выбрать?
- •Журналирование ntfs
- •Журналируемые операции
- •Отложенная запись и контрольные точки журналирования
- •Проблемы отложенного журналирования: концепция дублирования информации
- •Допущения, обеспечивающие надежность
- •Программный raid
- •Допущения, обеспечивающие надежность
- •Стратегия восстановления томов ntfs
- •Самое полное описание ntfs
- •Сравнение fat и ntfs
- •Кратко о файловой системе fat
- •Различные версии fat
- •Стандарт 8.3
- •Ограничения файловой системы fat
- •Недостатки fat
- •Файловая система ntfs
- •Средства разграничения доступа
- •Шифрование файлов
- •Программный дисковый массив raid
- •Наборы Volume Set
- •Упаковка файлов
- •Многопоточные файлы
- •Ограничения ntfs
- •Сравнение ntfs и fat по скорости доступа к файлам
- •Так что же выбрать - fat или ntfs?
- •Поиск данных файла
- •Поиск свободного места
- •Работа с каталогами и файлами
- •Практика
- •Объем оперативной памяти (кэширование)
- •Быстродействие накопителя
- •Размер кластера
- •Другие соображения
- •Fat - плюсы:
- •Fat - минусы:
- •Ntfs - плюсы:
- •Ntfs - минусы:
- •Raid-массивы
- •Если утерян пароль администратора win nt (win2000)
- •Просто переписать данные
- •Если утерян пароль администратора Windows nt
- •Наконец, самое простое
- •Программы для восстановления информации
- •Dos-программы
- •Win-программы
От запуска до остановки
Теперь рассмотрим процесс работы винчестера от запуска до остановки. При подаче питающих напряжений начинает работать микропроцессор контроллера; вначале он, как и "большой" компьютер, выполняет самотестирование и, в случае его успеха, запускает схему управления маршевым двигателем. Дисковый пакет начинает раскручиваться, увлекая за собой прилегающие к поверхностям дисков слои воздуха, и при достижении некоторой скорости давление набегающего на головки потока воздуха преодолевает силу пружин, прижимающих их к дискам, и головки "всплывают", поднимаясь над дисками на доли микрона. С этого момента, вплоть до остановки дисков, головки не касаются поверхностей, поэтому ни диски, ни сами головки практически не изнашиваются.
Тем временем маршевый двигатель продолжает раскручивать пакет, скорость которого приближается к номинальной (несколько тысяч оборотов в минуту). Поскольку в любой зоне дисков присутствует серворазметка, то сервоимпульсы начинают поступать с головок сразу же после начала вращения, и по их частоте можно судить о скорости вращения дисков. Система стабилизации вращения постоянно следит за потоком сервоимпульсов, и при достижении номинальной скорости происходит так называемый "захват", при котором любое отклонение скорости вращения сразу же корректируется изменением тока в обмотках двигателя.
После достижения пакетом номинальной скорости вращения освобождается фиксатор позиционера, и его система управления проверяет его способность поворачиваться и удерживаться на выбранном месте. Для этого делается серия быстрых поворотов в разные стороны, что на слух воспринимается, как характерное "тарахтение" винчестера через несколько секунд после старта. Во время перемещения позиционера постоянно идет слежение за поступающими с головок сервоимпульсами, и система управления всегда знает, над сколькими дорожками "пролетела" головка. Аналогично происходит и удержание головки над выбранной дорожкой - при отклонении от центра дорожки изменяется величина и форма сервоимпульсов изменяется, и система управления ликвидирует отклонение, изменяя ток в обмотках позиционера. Во время тестирования привода головок заодно делается и его калибровка - подбор параметров управляющих сигналов для наиболее быстрого и точного перемещения позиционера при минимальном количестве "промахов".
После начальной настройки электроники и механики микрокомпьютер винчестера переходит в режим ожидания команд от контроллера, расположенного на системной плате или интерфейсной карте. Получив команду, он включает нужную головку, по сервоимпульсам отыскивает нужную дорожку, дожидается, пока до головки "доедет" нужный сектор, и выполняет считывание или запись информации. Если контроллер запросил чтение/запись не одного сектора, а нескольких - винчестер может работать в так называемом блочном режиме, используя ОЗУ в качестве буфера и совмещая чтение/запись с передачей информации к контроллеру или от него.
Для оптимального использования поверхности дисков применяется так называемая зоновая запись (Zoned Bit Recording - ZBR), принцип которой состоит в том, что на внешних дорожках, имеющих большую длину (а следовательно - и информационную емкость), информация записывается с большей плотностью, чем на внутренних. Таких зон с постоянной плотностью записи в пределах всей поверхности образуется до десятка и более; соответственно, скорость чтения и записи на внешних зонах выше, чем на внутренних. Благодаря этому файлы, расположенные ближе к "началу" винчестера, в целом будут обрабатываться быстрее файлов, расположенных ближе к его "концу".
Теперь о том, откуда берутся неправдоподобно большие количества головок, указанные в параметрах винчестеров. Когда-то эти числа - число цилиндров, головок и секторов на дороже - действительно обозначали реальные физические параметры (геометрию) винчестера. Однако при использовании ZBR количество секторов меняется от дорожки к дорожке, и для каждого винчестера эти числа различны - поэтому стала использоваться так называемая логическая геометрия, когда винчестер сообщает контроллеру некие условные параметры, а при получении команд сам преобразует логические адреса в физические. При этом в винчестере с логической геометрией, например, в 520 цилиндров, 128 головок и 63 сектора (общий объем - 2 Гб) находится, скорее всего, два диска - и четыре головки чтения/записи.
В винчестерах последнего поколения используются технологии PRML (Partial Response, Maximum Likelihood - максимальное правдоподобие при неполном отклике) и S.M.A.R.T. (Self Monitoring Analysis and Report Technology - технология самостоятельного следящего анализа и отчетности). Первая разработана по причине того, что при существующих плотностях записи уже невозможно четко и однозначно считывать сигнал с поверхности диска - уровень помех и искажений очень велик. Вместо прямого преобразования сигнала используется его сравнение с набором образцов, и на основании максимальной похожести делается заключение о приеме того или иного кодового слова - примерно так же мы читаем слова, в которых пропущены или искажены буквы.
Винчестер, в котором реализована технология S.M.A.R.T., ведет статистику своих рабочих параметров (количество старт/стопов и наработанных часов, время разгона шпинделя, обнаруженные/исправленные ошибки и т.п.), которая регулярно сохраняется в перепрограммируемом ПЗУ или в служебных зонах диска. Эта информация накапливается в течение всей жизни винчестера и может быть в любой момент затребована программами анализа; по ней можно судить о состоянии механики, условиях эксплуатации или примерной вероятности выхода из строя.
Во время работы все механические части винчестера подвергаются тепловому расширению, и расстояния между дорожками, осями шпинделя и позиционера "плывут". В общем случае это никак не влияет на работу накопителя, поскольку для стабилизации используются обратные связи, однако некоторые модели время от времени выполняют рекалибровку привода головок, подстраивая систему к изменившимся расстояниям.
При выключении питания винчестера его маршевый двигатель начинает работать в режиме генератора, обеспечивая питание электроники на те доли секунды, которые необходимы для корректного завершения работы. Прежде всего блокируется подача тока записи в магнитные головки, чтобы они не испортили никакой информации на поверхностях, и затем остаток энергии подается в обмотки привода головок, толкая их к центру дисков (в этом движении головкам помогает и естественная скатывающая сила, возникающая при вращении дисков). В принципе, для того, чтобы "дотянуть" головки до посадочной зоны, достаточно одной скатывающей силы, поэтому в ряде винчестеров даже не используется этот "последний рывок". Дойдя до "посадочной зоны", привод головок защелкивается магнитным или механическим фиксатором еще до того, как головки успеют коснуться поверхности в результате падения скорости вращения дисков. В этом и состоит суть "автопарковки" - любой исправный винчестер всегда сумеет поставить свой позиционер на фиксатор, как бы внезапно не было выключено питание; однако если в этот момент происходила запись информации - последствия могут быть весьма печальными.