Накопители на жестких дисках объединяют в одном корпусе носитель (носители) и устройство чтения/записи, а также, нередко, и интерфейсную часть, называемую собственно контроллером жесткого диска. Типичной конструкцией жесткого диска является исполнение в виде одного устройства — камеры, внутри которой находится один или более дисковых носителей насажанных на один шпиндель и блок головок чтения/записи с их общим приводящим механизмом. Обычно, рядом с камерой носителей и головок располагаются схемы управления головками, дисками и, часто, интерфейсная часть и/или контроллер. На интерфейсной карте устройства располагается собственно интерфейс дискового устройства, а контроллер с его интерфейсом располагается на самом устройстве. С интерфейсным адаптером схемы накопителя соединяются при помощи комплекта шлейфов.
Информация заносится на концентрические дорожки, равномерно распределенные по всему носителю. В случае большего, чем один диск, числа носителей все дорожки, находящиеся одна под другой, называются цилиндром. Операции чтения/записи производятся подряд над всеми дорожками цилиндра, после чего головки перемещаются на новую позицию.
Герметичная камера предохраняет носители не только от проникновения механических частиц пыли, но и от воздействия электромагнитных полей. Необходимо заметить, что камера не является абсолютно герметичной т.к. соединяется с окружающей атмосферой при помощи специального фильтра, уравнивающего давление внутри и снаружи камеры. Однако, воздух внутри камеры максимально очищен от пыли, т.к. малейшие частички могут привести к порче магнитного покрытия дисков и потере данных и работоспособности устройства.
Диски вращаются постоянно, а скорость вращения носителей довольно высокая (от 4500 до 10000 об/мин), что обеспечивает высокую скорость чтения/записи. По величине диаметра носителя чаще других производятся 5.25, 3.14, 2.3 дюймовые диски. На диаметр носителей несменных жестких дисков не накладывается никакого ограничения со стороны совместимости и переносимости носителя, за исключением форм-факторов корпуса ПК, поэтому, производители выбирают его согласно собственным соображениям.
В настоящее время, для позиционирования головок чтения/записи, наиболее часто, применяются шаговые и линейные двигатели механизмов позиционирования и механизмы перемещения головок в целом.
В системах с шаговым механизмом и двигателем головки перемещаются на определенную величину, соответствующую расстоянию между дорожками. Дискретность шагов зависит либо от характеристик шагового двигателя, либо задается серво-метками на диске, которые могут иметь магнитную или оптическую природу. Для считывания магнитных меток используется дополнительная серво головка, а для считывания оптических — специальные оптические датчики.
В системах с линейным приводом головки перемещаются электромагнитом, а для определения необходимого положения служат специальные сервисные сигналы, записанные на носитель при его производстве и считываемые при позиционировании головок. Во многих устройствах для серво-сигналов используется целая поверхность и специальная головка или оптический датчик. Такой способ организации серво-данных носит название выделенная запись сервосигналов. Если серво-сигналы записываются на те же дорожки, что и данные и для них выделяется специальный серво-сектор, а чтение производится теми же головками, что и чтение данных, то такой механизм называется встроенная запись сервосигналов. Выделенная запись обеспечивает более высокое быстродействие, а встроенная — повышает емкость устройства.
Линейные приводы перемещают головки значительно быстрее, чем шаговые, кроме того они позволяют производить небольшие радиальные перемещения «внутри» дорожки, давая возможность отследить центр окружности серво-дорожки. Этим достигается положение головки, наилучшее для считывания с каждой дорожки, что значительно повышает достоверность считываемых данных и исключает необходимость временных затрат на процедуры коррекции. Как правило, все устройства с линейным приводом имеют автоматический механизм парковки головок чтения/записи при отключении питания устройства.
Парковкой головок называют процесс их перемещения в безопасное положение. Это — так называемое «парковочное» положение головок в той области дисков где ложатся головки. Там, обычно, не записано никакой информации, кроме серво — это специальная «посадочная зона» (Landing Zone). Для фиксации привода головок в этом положении в большинстве ЖД используется маленький постоянный магнит, когда головки принимают парковочное положение — этот магнит соприкасается с основанием корпуса и удерживает позиционер головок от ненужных колебаний. При запуске накопителя схема управления линейным двигателем «отрывает» фиксатор, подавая на двигатель, позиционирующий головки, усиленный импульс тока. В ряде накопителей используются и другие способы фиксации — основанные, например, на воздушном потоке, создаваемом вращением дисков. В запаркованном состоянии накопитель можно транспортировать при достаточно плохих физических условиях (вибрация, удары, сотрясения), т.к. нет опасности повреждения поверхности носителя головками. В настоящее время на всех современных устройствах парковка головок накопителей производится автоматически внутренними схемами контроллера при отключении питания и не требует для этого никаких дополнительных программных операций, как это было с первыми моделями.
Во время работы все механические части накопителя подвергаются тепловому расширению, и расстояния между дорожками, осями шпинделя и позиционером головок чтения/записи меняется. В общем случае это никак не влияет на работу накопителя, поскольку для стабилизации используются обратные связи, однако некоторые модели время от времени выполняют рекалибровку привода головок, сопровождаемую характерным звуком, напоминающим звук при первичном старте, подстраивая систему к изменившимся расстояниям.
Плата электроники современного накопителя на жестких магнитных дисках представляет собой самостоятельный микрокомпьютер с собственным процессором, памятью, устройствами ввода/вывода и прочими традиционными атрибутами присущими компьютеру. На плате могут располагаться множество переключателей и перемычек, однако не все из них предназначены для использования пользователем. Как правило, руководства пользователя описывают назначение только перемычек, связанных с выбором логического адреса устройства и режима его работы, а для накопителей с интерфейсом SCSI — и перемычки, отвечающие за управление резисторной сборкой (стабилизирующей нагрузкой в цепи).
Основные физические и логические параметры ЖД
Все накопители так или иначе соответствуют стандартам, определяемым либо независимыми комитетами и группами стандартизации, либо самими производителями. Среди множества технических характеристик отличающих одну модель от другой можно выделить некоторые, наиболее важные с точки зрения пользователей и производителей, которые так или иначе используются при сравнении накопителей различных производителей и выборе устройства.
Диаметр дисков (disk diameter)- параметр довольно свободный от каких-либо стандартов, ограничиваемый лишь форм-факторами корпусов системных блоков. Наиболее распространены накопители с диаметром дисков 2.2, 2.3, 3.14 и 5.25 дюймов. Диаметр дисков определяет плотность записи на дюйм магнитного покрытия. Накопители большего диаметра содержат большее число дорожек, и в них, как правило используются более простые технологии изготовления носителей, предназначенных для меньшей плотности записи. Они, как правило, медленнее своих меньших собратьев и имеют меньшее число дисков, но более надежны. Накопители с меньшим диаметром больших объемов имеют более высокотехнологичные поверхности и высокие плотности записи информации, а также, как правило, и большее число дисков.
Число поверхностей (sides number) — определяет количество физических дисков нанизанных на шпиндель. Выпускаются накопители с числом поверхностей от 1 до 8 и более. Однако, наиболее распространены устройства с числом поверхностей от 2 до 5. Принципиально, число поверхностей прямо определяет физический объем накопителя и скорость обработки операций на одном цилиндре. Так как операции на поверхностях цилиндра выполняются всеми головками синхронно, то теоретически, при равных всех остальных условиях, более быстрыми окажутся накопители с большим числом поверхностей.
Число цилиндров (cylinders number) — определяет сколько дорожек (треков) будет располагаться на одной поверхности. В настоящее время все накопители емкостью более 1 Гигабайта имеют число цилиндров более 1024, вследствие чего, для распространенных ОС применяются унифицированные режимы доступа с пересчетом и эмуляцией и виртуализацией числа головок, цилиндров и секторов (LBA и Large).
Число секторов (sectors count) — общее число секторов на всех дорожках всех поверхностей накопителя. Определяет физический неформатированный объем устройства.
Число секторов на дорожке (sectors per track) — общее число секторов на одной дорожке. Часто, для современных накопителей показатель условный, т.к. они имеют неравное число секторов на внешних и внутренних дорожках, скрытое от системы и пользователя интерфейсом устройства.
Частота вращения шпинделя (rotational speed или spindle speed) — определяет, сколько времени будет затрачено на последовательное считывание одной дорожки или цилиндра. Частота вращения измеряется в оборотах в минуту (rpm). Для дисков емкостью до 1 гигабайта она обычно равна 5,400 оборотов в минуту, а у более вместительных достигает 7,200 и 10000 rpm.
Время перехода от одной дорожки к другой (track-to-track seek time) обычно составляет от 3.5 до 5 миллисекунд, а у самых быстрых моделей может быть от 0.6 до 1 миллисекунды. Этот показатель является одним из определяющих быстродействие накопителя, т.к. именно переход с дорожки на дорожку является самым длительным процессом в серии процессов произвольного чтения/записи на дисковом устройстве. Показатель используется для условной оценки производительности при сравнении накопителей разных моделей и производителей.
Время успокоения головок (head latency time) — время, проходящее с момента окончания позиционирования головок на требуемую дорожку до момента начала операции чтения/записи. Является внутренним техническим показателем, входящим в показатель — время перехода с дорожки на дорожку.
Время установки или время поиска (seek time)- время, затрачиваемое устройством на перемещение головок чтения/записи к нужному цилиндру из произвольного положения.
Среднее время установки или поиска (average seek time) — усредненный результат большого числа операций позиционирования на разные цилиндры, часто называют средним временем позиционирования. Среднее время поиска имеет тенденцию уменьшаться с увеличением емкости накопителя, т.к повышается плотность записи и увеличивается число поверхностей. Например, для 540-мегабайтных дисков наиболее типичны величины от 10 до 13, а для дисков свыше гигабайта — от 7 до 10 миллисекунд. Среднее время поиска является одним из важнейших показателей оценки производительности накопителей, используемых при их сравнении.
Время ожидания (latency) — время, необходимое для прохода нужного сектора к головке, усредненный показатель – среднее время ожидания (average latency), получаемое как среднее от многочисленных тестовых проходов. После успокоения головок на требуемом цилиндре контроллер ищет нужный сектор. При этом, последовательно считываются адресные идентификаторы каждого проходящего под головкой сектора на дорожке. В идеальном, с точки зрения производительности случае, под головкой сразу окажется нужный сектор, в плохом — окажется, что этот сектор только что «прошел» под головкой, и, до окончания процесса успокоения необходимо будет ждать полный оборот диска для завершения операции чтения/записи. Это время у накопителей объемом от 540 мегабайт до 1 гигабайта составляет примерно 5.6, а у дисков свыше гигабайта — 4.2 миллисекунды и менее.
Время доступа (access time) — суммарное время, затрачиваемое на установку головок и ожидание сектора. Причем, наиболее долгим является промежуток времени установки головок.
Среднее время доступа к данным (average access time) — время, проходящее с момента получения запроса на операцию чтения/записи от контроллера до физического осуществления операции — результат сложения среднего время поиска и среднего времени ожидания. Среднее время доступа зависит от того, как организовано хранение данных и насколько быстро позиционируются головки чтения записи на требуемую дорожку. Среднее время доступа – усредненный показатель от многочисленных тестовых проходов, и обычно, оно составляет от 10 до 18 миллисекунд и используется как базовый показатель при сравнительной оценке скорости накопителей различных производителей.
Скорость передачи данных (data transfer rate), называемая также пропускной способностью (throughput), определяет скорость, с которой данные считываются или записываются на диск после того, как головки займут необходимое положение. Измеряется в мегабайтах в секунду (MBps) или мегабитах в секунду (Mbps) и является характеристикой контроллера и интерфейса. Различают две разновидности скорости передачи — внешняя и внутренняя. Скорость передачи данных, также является одним из основных показателей производительности накопителя и используется для ее оценки и сравнения накопителей различных моделей и производителей.
Внешняя скорость передачи данных (external data transfer rate или burst data transfer rate) показывает, с какой скоростью данные считываются из буфера, расположенного на накопителе в оперативную память компьютера. В настоящее время, накопители с интерфейсами EIDE или Fast ATA, обычно, имеют внешнюю скорость передачи данных от 11.1 до 16.6 мегабайта в секунду, а для накопителей с интерфейсами SCSI-2 — этот параметр находится в пределах от 10 до 40 мегабайт в секунду.
Внутренняя скорость передачи данных (internal transfer rate или sustained transfer rate) отражает скорость передачи данных между головками и контроллером накопителя и определяет общую скорость передачи данных в тех случаях, когда буфер не используется или не влияет (например, когда загружается большой графический или видеофайл). Внутренняя скорость передачи данных очень сильно зависит от частоты вращения шпинделя.
Размер кеш-буфера контроллера (internal cash size). Встроенный в накопитель буфер выполняет функцию упреждающего кэширования и призван сгладить громадную разницу в быстродействии между дисковой и оперативной памятью компьютера. Выпускаются накопители с 128, 256 и 512 килобайтным буфером. Чем больше объем буфера, тем потенциально выше производительность при произвольном «длинном» чтении/записи. Также, более емкий буфер обеспечивает рост производительности дисковой подсистемы, во-первых, при работе с объемными упорядоченными (записанными на диски последовательно) данными, а во-вторых — при одновременном обращении к диску множества приложений или пользователей, как это происходит в многозадачных сетевых ОС.
Средняя потребляемая мощность (capacity). При сборке мощных настольных компьютеров учитывается мощность, потребляемая всеми его устройствами. Современные накопители на ЖД потребляют от 5 до 15 Ватт, что является достаточно приемлемым, хотя, при всех остальных равных условиях, накопители с меньшей потребляемой мощностью выглядат более привлекательно. Это относится не только к экономии электроэнергии, но и надежности, т.к. более мощные накопители рассеивают избыток энергии в виде тепла и сильно нагреваются. А как известно, проблемы, связанные с изменением свойств магнитных носителей напрямую зависят от их температуры и коэффициента расширения/сжатия материала.
Уровень шума (noise level), разумеется, является эргономическим показателем. Однако, он также, является и некоторым показателем сбалансированности механической конструкции, т.к. шум в виде треска — есть не что иное как звук ударов позиционера шагового или линейного механизма, а, даже микро- удары и вибрация так не желательны для накопителей и приводят к более быстрому их износу.
Среднее время наработки на отказ (MTBF) — определяет сколько времени способен проработать накопитель без сбоев. К сожалению, точные оценки надежности производителями не афишируются. Они приводят обычно среднюю условную наработку на отказ в сотнях тысяч часов работы, что является расчетной статистической величиной. К тому же, производители используют для ее определения различные расчетные методики, поэтому сравнивать наработку на отказ, приводимую в спецификациях продукции разных компаний, нужно с особой осторожностью.
Сопротивляемость ударам (G-shock rating) — определяет степень сопротивляемости накопителя ударам и резким изменениям давления, измеряется в единицах допустимой перегрузки g во включенном и выключенном состоянии. Является важным показателем для настольных и мобильных систем.
Физический и логический объем накопителей. Носители жестких дисков, в отличие от гибких, имеют постоянное число дорожек и секторов, изменить которое невозможно. Эти числа определяются типом модели и производителем устройства. Поэтому, физический объем жестких дисков определен изначально и состоит из объема, занятого служебной информацией (разметка диска на дорожки и сектора) и объема, доступного пользовательским данным. Физический объем жесткого диска, также, зависит от типа интерфейса, метода кодирования данных, используемого физического формата и др. Производители накопителей указывают объемы дисков в миллионах байт, предполагая исходя из десятичной системы исчисления, что в одном мегабайте 1000000 байт. Однако, ПО оперирует не десятичной, а двоичной системами, полагая, что в одном килобайте не 1000 байт, а 1024. Такие несложные разногласия в системах исчисления приводят к несоответствиям при оценке объема накопителей, данном в описании и — выдаваемом различными программными тестами.
Одним из возможных, но не желательных способов повышения физической емкости, для производителей, является увеличение емкости сектора. В настоящее время, стандартной емкостью сектора для IBM-совместимых компьютеров является 512 байт. Многие адаптеры позволяют, в процессе физического форматирования, программным путем, изменять емкость сектора, например, до 1024 байт. При этом, соотношение пользовательских данных и служебной информации для сектора улучшается, но снижается надежность хранения данных, т.к. тот же полином ECC будет использоваться для коррекции большего объема данных. Однако, выигрыш на физическом уровне еще не означает тот же результат на логическом, т.к. логическая структура диска может оказаться не эффективной, например, при использовании для работы с файлами малой длинны (менее 1 К). Логический же объем зависит от того, как операционная система или программа записывает информацию в сектора. В случае использования программ и операционных систем с программной компрессией данных, можно повысить объем носителя на величину, зависящую от степени сжатия данных.
Для оптимального использования поверхности дисков применяется так называемая зонная запись (Zoned Bit Recording — ZBR), принцип которой состоит в том, что на внешних дорожках, имеющих большую длину (а следовательно — и потенциальную информационную емкость на единицу площади), информация записывается с большей плотностью, чем на внутренних. Таких зон с постоянной плотностью записи в пределах всей поверхности образуется до десятка и более; соответственно, скорость чтения и записи на внешних зонах выше, чем на внутренних. Благодаря этому файлы, расположенные на дорожках с большим диаметром, в целом будут обрабатываться быстрее файлов, расположенных на дорожках с меньшим диаметром, т.к. для них будет производится меньшее число позиционирований с дорожки на дорожку.
В ЖД последнего поколения используются технологии PRML (Partial Response, Maximum Likelihood — максимальное правдоподобие при неполном отклике) и S.M.A.R.T. (Self Monitoring Analysis and Report Technology — технология самостоятельного слежения анализа и отчетности). Первая разработана по причине того, что при существующих плотностях записи уже невозможно четко и однозначно считывать сигнал с поверхности диска — уровень помех и искажений очень велик. Вместо прямого преобразования сигнала используется его сравнение с набором образцов, и на основании максимальной похожести (правдоподобия) делается заключение о приеме того или иного машинного слова.
Накопитель, в котором реализована технология S.M.A.R.T., ведет статистику своих рабочих параметров (количество стартов/остановок и наработанных часов, время разгона шпинделя, обнаруженные/исправленные физические ошибки и т.п.), которая регулярно сохраняется в перепрограммируемом ПЗУ или служебных зонах диска. Эта информация накапливается в течение всего периода эксплуатации и может быть в любой момент затребована программами анализа. По ней можно судить о состоянии механики, условиях эксплуатации или примерной вероятности выхода из строя.
Контроллеры жестких дисков
Собственно контроллер накопителя физически расположен на плате электроники и предназначен для обеспечения операций преобразования и пересылке информации от головок чтения/записи к интерфейсу накопителя. Часто, контроллером называют интерфейс накопителя или интерфейс ПК с накопителем, что в общем не верно. Контроллер жестких дисков представляет собой сложнейшее устройство — микрокомпьютер, со своим процессором, ОЗУ и ПЗУ, схемами и системой ввода/вывода и т.п.. Однако, в большинстве случаев, производители размещают их в одном или двух микро-чипах.
Контроллер занимается множеством операций преобразования потока данных. Так как длинна дорожек неравна, данные на различные дорожки необходимо записывать неравномерно. Это становится проблемой, по сравнению с гибкими дисками, для носителей с высокой плотностью записи (число дорожек более 1000). Простые контроллеры, как правило, записывают одно и тоже количество информации на каждую дорожку, независимо от ее длинны. Для этого контроллер упаковывает данные более плотно, начиная с определенной по счету дорожки. Цилиндр, с которого начинается более плотная упаковка данных называется цилиндром начальной прекомпенсации (Starting Cylinder for Precompensation — SCP). Для компенсации искажения информации при чтении, запись данных производится с предварительным смещением битов, которое учитывает искажения.
Многие производители создают устройства, которые записывают различный объем информации на внутренние и внешние дорожки за счет размещения на них разного числа секторов. Это возможно, благодаря аппаратному скрытию от программ и пользователя физических характеристик устройства на уровне его контроллера и/или интерфейса (устройства с IDE, EIDE и SCSI интерфейсами). Поэтому, накопители, как правило, имеют различное физическое и логическое число цилиндров.
Также, в силу исторических причин, многие операционные системы, работающие с накопителями на ЖМД через BIOS, разработаны таким образом, что не могут оперировать числом цилиндров более 1024. Поскольку в настоящее время, накопители больших объемов (более 1Мб) имеют более 1024 физических цилиндра, то применяется программный пересчет, при котором, накопитель определяется его контроллером и процедурами BIOS как имеющий не более 1024 цилиндра, но имеющий некоторое нереальное число головок, поверхностей и секторов. Функция же пересчета для отыскания нужного сектора ложится либо на BIOS ПК, либо на BIOS контроллера, либо на интерфейс.
Данные, записываемые в сектора, защищаются от некоторых ошибок чтения/записи при помощи расчета и записи вместе с ними контрольной суммы — кода контроля ошибок (Error Correction Code — ECC). Записывая байты на диск, адаптер производит накопление циклическим делением входных данных на специальный полином, остатка от деления, который представляет уникальную комбинацию бит и записывается контроллером вместе с данными. Число байт ECC для каждого устройства определяется видом используемого полинома. При считывании данных производится аналогичное накопление и расчет контрольной суммы. В случае несовпадения результатов рассчитываемого и хранимого с данными ECC, производится попытка восстановления — коррекции данных при помощи полинома, имеющихся данных и контрольной суммы. Число байт данных, которое может быть скорректировано, определяется порядком используемого полинома. Чем она выше, тем большее количество байт подряд может быть скорректировано, но тем длиннее и сам код ECC. Используются разные полиномы и число байт ECC может быть от 4 до 8 и более. Число же бит информации, требуемое для записи одного байта, зависит от используемого метода кодирования. Необходимо отметить, что восстановление данных при помощи полинома и кода ECC происходит на уровне контроллера и прозрачно для программ и пользователя, однако, на основе процедур BIOS программным путем можно получить информацию о том, была ли произведена процедура коррекции.
Большинство современных накопителей поддерживают режимы работы контроллеров Ultra DMA, DMA2, и PIO. DMA — Direct Memory Access — прямой доступ к памяти — режим взаимодействия контроллера накопителя и интерфейса ПК, при котором обмен данными по интерфейсу осуществляется без участия центрального процессора ПК. Режим DMA позволяет заметно разгрузить процессор по сравнению с режимом PIO (Programmed Input/Output — программный ввод/вывод), при котором все пересылки выполняет непосредственно центральный процессор ПК. Это достигается за счет использования специального контроллера и канала прямого доступа к оперативной памяти ПК, без участи центрального процессора. Все современные накопители могут работать в режиме DMA2, если это поддерживается операционной системой, а скорость обмена при этом может достигать, в зависимости от модели, 16.6 Мб/с. А накопители и системы с поддержкой режима Ultra DMA, при использовании соответствующего драйвера, могут передавать и принимать информацию со скоростью 33.3 Мб/с. Однако, это лишь предельно возможные скорости обмена данными контроллера с буфером накопителя. Реальная же скорость чтения/записи даже в лучших моделях с интерфейсом ATA в настоящее время не превышает 10-11 Мб/с. Основная нагрузка при работе ложится именно на чтение/запись, передача данных в буфер и из буфера занимает лишь малую часть этого времени, и сам факт перехода на Ultra DMA, как правило, дает прирост лишь в единицы процентов. Но накопители с Ultra DMA, обычно, имеют высокую скорость вращения шпинделя, а следовательно — и более высокую скорость чтения/записи.
Физическое хранение, методы кодирования информации
Как уже говорилось, информация на поверхностях накопителя хранится в виде последовательности мест с переменной намагниченностью, обеспечивающих непрерывный поток данных при считывании их при помощи последовательного чтения. Вся информация и места ее хранения делятся на служебную и пользовательскую информацию. Служебная и пользовательская информация хранится в областях дорожек называемых секторами. Каждый сектор содержит область пользовательских данных — место, куда можно записать информацию, доступную в последующем для чтения и зону серво-данных, записываемых один раз при физическом форматировании и однозначно идентифицирующих сектор и его параметры (используется или нет, физический адрес сектора, ЕСС код и т.п.). Вся серво-информация не доступна обычным процедурам чтения/записи и носит абсолютно уникальный характер в зависимости от модели и производителя накопителя.
В отличие от дискет и старых накопителей на ЖД, диски современных накопителей проходят первичную, или низкоуровневую, разметку (Low Level Formatting) на специальном заводском высокоточном технологическом стенде. В ходе этого процесса на диски записываются служебные метки — серво-информация, а также формируются привычные дорожки и сектора. Таким образом, если когда-то новый накопитель нужно было «форматировать на низком уровне», то сейчас этого делать не то чтобы не нужно — это просто невозможно без специального сложнейшего оборудования, а различные «программы низкоуровневого форматирования» чаще всего просто обнуляют содержимое секторов с проверкой их читаемости, хотя порой могут и необратимо испортить служебную разметку и серво-информацию служебных секторов.
Появление различных методов кодирования данных секторов связано, прежде всего, с техническими особенностями устройств хранения и передачи информации и желанием производителей наиболее полно использовать физическое пространство носителей информации. В настоящее время используется несколько различных методов кодирования данных.
Частотная модуляция (Frequency Modulation — FM) — метод, используемый в накопителях на сменных магнитных дисках. Иначе, кодирование методом FM можно назвать кодированием с единичной плотностью. Метод предполагает запись на носитель в начале каждого битового элемента данных бита синхронизации. Битовый элемент определяется как минимальный интервал времени между битами данных, получаемый при постоянной скорости вращения диска носителя. Метод гарантирует, по меньшей мере, одну перемену направления магнитного потока за единицу времени вращения. Такой временной интервал соответствует максимальной продольной плотности магнитного потока 2330 перемен на 1 см и скорости передачи данных – 125 Кбит/сек. Простота кодирования и декодирования по методу FM определяется постоянной частотой следования синхроимпульсов. Однако, наличие этих бит синхронизации и является одним из недостатков данного метода, т.к. результирующий код малоэффективен с точки зрения компактности данных (половина пространства носителя занимается битами синхронизации). Это один из первых методов, не используемый в настоящее время в накопителях на ЖД.
Модифицированная частотная модуляция (Modified Frequency Modulation — MFM) — улучшенный метод FM. Модификация заключается в сокращении вдвое длительности битового элемента — до 4 мкс и использовании бит синхронизации не после каждого бита данных, а лишь в случаях, когда в предшествующем и текущем битовых элементах нет ни одного бита данных. Такой способ кодирования позволяет удвоить емкость носителя и скорость передачи данных, по сравнению с методом FM, т.к. в одном и том же битовом элементе никогда не размещаются бит синхронизации и данных, а на один битовый элемент приходится только одна перемена направления магнитного потока. Также, в настоящее время не используется.
Запись с групповым кодированием (Run Limited Length — RLL) — метод, полностью исключающий запись на диск каких-либо синхронизационных бит. Синхронизация достигается за счет использования бит данных. Однако, такой подход требует совершенно иной схемы кодирования, т.к. простое исключение бит синхронизации приведет к записи последовательностей из одних нулей или единиц в которых не будет ни одной перемены полярности магнитного потока. Метод RLL происходит от методов, используемых для кодирования данных при цифровой записи на магнитную ленту. При этом, каждый байт данных разделяется на два полубайта, которые кодируются специальным 5-ти разрядным кодом, суть которого – добиться хотя бы одной перемены направления магнитного потока для каждой пары его разрядов. Что означает, необходимость наличия в любой комбинации 5-ти разрядных кодов не более двух стоящих рядом нулевых бит. Из 32 комбинаций 5 бит такому условию отвечают 16. Они и используются для кодирования по методу RLL. При считывании происходит обратный процесс. При применении метода кодирования RLL скорость передачи данных возрастает с 250 до 380 Кбит/с, а число перемен полярности магнитного потока до 3330 перемен/см. При этом длительность битового элемента снижается до 2.6 мкс. Поскольку, максимальный интервал времени до перемены магнитного потока известен (два последовательно расположенных нулевых бита), биты данных могут служить битами синхронизации, что делает метод кодирования RLL самосинхронизирующимся и самотактируемым. Интересным является тот факт, что метод MFM является частным случаем метода RLL. Для обозначения типа используемого RLL метода применяется аббревиатура вида: RLL2,7, RLL1,7, RLL2,8, RLL1,8, где первая цифра — минимальная, а вторая — максимальная длина последовательности бит — нулей, содержащихся между соседними единицами. Аббревиатура метода MFM в терминологии RLL записывается как RLL1,3.
Модифицированная запись с групповым кодированием (Advanced Run Limited Length – ARLL) – улучшенный метод RLL, в котором, наряду с логическим уплотнением данных, производится повышение частоты обмена между контроллером и накопителем.
В настоящее время в накопителях на жестких дисках используются различные методы кодирования информации, разрабатываемые и патентуемые фирмами-производителями на основе метода с групповым кодированием — ARLL. Выпускаются также устройства с аппаратной компрессией данных на уровне интерфейса или контроллера в которых используется простое арифметическое сжатие информации перед записью и после считывания.
Интерфейсы жестких дисков
Интерфейсом накопителей называется набор электроники, обеспечивающий обмен информацией между контроллером устройства (кеш-буфером) и компьютером. В настоящее время в настольных ПК IBM-PC, чаще других, используются две разновидности интерфейсов ATAPI — AT Attachment Packet Interface (Integrated Drive Electronics — IDE, Enhanced Integrated Drive Electronics — EIDE) и SCSI (Small Computers System Interface).
Интерфейс IDE разрабатывался как недорогая и производительная альтернатива высокоскоростным интерфейсам ESDI и SCSI. Интерфейс, предназначен для подключения двух дисковых устройств. Отличительной особенностью дисковых устройств, работающих с интерфейсом IDE состоит в том, что собственно контроллер дискового накопителя располагается на плате самого накопителя вместе со встроенным внутренним кэш-буфером. Такая конструкция существенно упрощает устройство самой интерфейсной карты и дает возможность размещать ее не только на отдельной плате адаптера, вставляемой в разъем системной шины, но и интегрировать непосредственно на материнской плате компьютера. Интерфейс характеризуется чрезвычайной простотой, высоким быстродействием, малыми размерами и относительной дешевизной.
Сегодня на смену интерфейсу IDE пришло детище фирмы Western Digital — Enhanced IDE, или сокращенно EIDE. Сейчас это лучший вариант для подавляющего большинства настольных систем. Жесткие диски EIDE заметно дешевле аналогичных по емкости SCSI-дисков и в однопользовательских системах не уступают им по производительности, а большинство материнских плат имеют интегрированный двухканальный контроллер для подключения четырех устройств. Что же появилось нового в Enhanced IDE по сравнению с IDE ?
Во-первых, это большая емкость дисков. Если IDE не поддерживал диски свыше 528 мегабайт, то EIDE поддерживает объемы до 8.4 гигабайта на каждый канал контроллера.
Во-вторых, к нему подключается больше устройств — четыре вместо двух. Раньше имелся только один канал контроллера, к которому можно было подключить два IDE устройства. Теперь таких каналов два. Основной канал, который обычно стоит на высокоскоростной локальной шине и вспомогательный.
В-третьих, появилась спецификация ATAPI (AT Attachment Packet Interface) дающая возможность подключения к этому интерфейсу не только жестких дисков, но и других устройств — стриммеров и дисководов CD-ROM.
В-четвертых — повысилась производительность. Накопители с интерфейсом IDE характеризовались максимальной скоростью передачи данных на уровне 3 мегабайт в секунду. Жесткие диски EIDE поддерживают несколько новых режимов обмена данными. В их число входит режим программируемого ввода-вывода PIO (Programmed Input/Output) Mode 3 и 4, которые обеспечивают скорость передачи данных 11.1 и 16.6 мегабайт в секунду соответственно. Программируемый ввод-вывод — это способ передачи данных между контроллером периферийного устройства и оперативной памятью компьютера посредством команд пересылки данных и портов ввода/вывода центрального процессора.
В пятых — поддерживается режим прямого доступа к памяти — Multiword Mode 1 DMA (Direct Memory Access) или Multiword Mode 2 DMA и Ultra DMA, которые поддерживают обмен данными в монопольном режиме (то есть когда канал ввода-вывода в течение некоторого времени обслуживает только одно устройство). DMA — это еще один путь передачи данных от контроллера периферийного устройства в оперативную память компьютера, от PIO он отличается тем, что центральный процессор ПК не задействуется и его ресурсы остаются свободными для других задач. Периферийные устройства обслуживает специальный контроллер DMA. Скорость при этом достигает 13.3 и 16.6 мегабайта в секунду, а при использовании Ultra DMA и соответствующего драйвера шины — 33 мегабайт в секунду. EIDE-контроллеры используют механизм PIO точно так же, как это делают и некоторые SCSI-адаптеры, но скоростные адаптеры SCSI работают только по методу DMA.
В шестых — расширена система команд управления устройством, передачи данных и диагностики, увеличен кеш-буфер обмена данными и существенно доработана механика.
Фирмы Seagate и Quantum вместо спецификации EIDE используют спецификацию Fast ATA для накопителей, поддерживающих режимы PIO Mode 3 и DMA Mode 1, а работающие в режимах PIO Mode 4 и DMA Mode 2 обозначают как Fast ATA-2.
Интеллектуальный многофункциональный интерфейс SCSI был разработан еще в конце 70-х годов в качестве устройства сопряжения компьютера и интеллектуального контроллера дискового накопителя. Интерфейс SCSI является универсальным и определяет шину данных между центральным процессором и несколькими внешними устройствами, имеющими свой контроллер. Помимо электрических и физических параметров, определяются также команды, при помощи которых, устройства, подключенные к шине осуществляют связь между собой. Интерфейс SCSI не определяет детально процессы на обеих сторонах шины и является интерфейсом в чистом виде. Интерфейс SCSI поддерживает значительно более широкую гамму периферийных устройств и стандартизован ANSI (X3.131-1986).
Сегодня применяются в основном два стандарта — SCSI-2 и Ultra SCSI. В режиме Fast SCSI-2 скорость передачи данных доходит до 10 мегабайт в секунду при использовании 8-разрядной шины и до 20 мегабайт при 16-разрядной шине Fast Wide SCSI-2. Появившийся позднее стандарт Ultra SCSI отличается еще большей производительностью — 20 мегабайт в секунду для 8-разрядной шины и 40 мегабайт для 16-разрядной. В новейшем SCSI-3 увеличен набор команд, но быстродействие осталось на том же уровне. Все применяющиеся сегодня стандарты совместимы с предыдущими версиями «сверху — вниз», то есть к адаптерам SCSI-2 и Ultra SCSI можно подключить старые SCSI-устройства. Интерфейс SCSI-Wide, SCSI-2, SCSI-3 — стандарты модификации интерфейса SCSI, разработаны комитетом ANSI. Общая концепция усовершенствований направлена на увеличение ширины шины до 32-х, с увеличением длинны соединительного кабеля и максимальной скорости передачи данных с сохранением совместимости с SCSI. Это наиболее гибкий и стандартизованный тип интерфейсов, применяющийся для подключения 7 и более периферийных устройств, снабженных контроллером интерфейса SCSI. Интерфейс SCSI остается достаточно дорогим и самым высокопроизводительным из семейства интерфейсов периферийных устройств персональных компьютеров, а для подключения накопителя с интерфейсом SCSI необходимо дополнительно устанавливать адаптер, т.к. немногие материнские платы имеют интегрированный адаптер SCSI.
Логическое хранение и кодирование информации
Для обеспечения наиболее оптимальной производительности и работы накопителя как запоминающего устройства, а также, для улучшения программного интерфейса, накопители не используются системами в первичном виде, а в них, на основе физически присутствующих структур — дорожек и секторов, используется логическая структура хранения и доступа к информации. Ее тип и характеристики зависят от используемой операционной системы и называется она — файловой системой. В настоящее время имеется достаточно много типов различных файловых систем, практически столько же, сколько и различных операционных систем, однако, все они основывают свои логические структуры данных на нескольких первичных логических структурах. Рассмотрим их подробнее.
Первый сектор жесткого диска содержит хозяйственную загрузочную запись — Master Boot Record (MBR) которая, в свою очередь, содержит загрузочную запись — Boot Record (BR), выполняющуюся в процессе загрузки ОС. Загрузочная запись жестких дисков является объектом атаки компьютерных вирусов, заражающих MBR. За загрузчиком расположена таблица разделов — Partition Table (PT), содержащая 4 записи — элементы логических разделов — Partitions. Завершается MBR специальной сигнатурой — последовательностью из 2-х байт с шестнадцатиричными значениями 55H и ААH, указывающая на то, что данный раздел, после которого расположена сигнатура, является последним разделом в таблице. Ниже представлена структура MBR.
Название записи в MBR | Длина, байт |
Загрузочная запись – Boot Record | 446 |
Элемент таблицы разделов 1 – Partition 1 | 16 |
Элемент таблицы разделов 2 – Partition 2 | 16 |
Элемент таблицы разделов 3 – Partition 3 | 16 |
Элемент таблицы разделов 4 – Partition 4 | 16 |
Сигнатура окончания Partition Table | 2 |
Каждый элемент таблицы разделов содержит информацию о логическом разделе. Первым байтом в элементе раздела идет флаг активности раздела (0 — не активен, 128 (80H) — активен). Он служит для определения, является ли раздел системным загрузочным и необходимости производить загрузку операционной системы с него при старте компьютера. Активным может быть только один раздел. Небольшие программы, называемые менеджерами загрузки (Boot Manager), могут располагаться в первых секторах диска. Они интерактивно запрашивают пользователя с какого раздела производить загрузку и соответственно корректируют флаги активности разделов. За флагом активности раздела следует байт номера головки с которой начинается раздел. За ним следует два байта, означающие соответственно номер сектора и номер цилиндра загрузочного сектора, где располагается первый сектор загрузчика операционной системы. Загрузчик операционной системы представляет собой маленькую программу, осуществляющую считывание в память начального кода операционной системы во время ее старта. Затем следует байт – кодовый идентификатор операционной системы, расположенной в разделе. За байтом кода операционной системы расположен байт номера головки конца раздела, за которым идут два байта – номер сектора и номер цилиндра последнего сектора распределенного разделу. Ниже представлен формат элемента таблицы разделов.
Название записи элемента Partition Table | Длина,байт |
Флаг активности раздела | 1 |
Номер головки начала раздела | 1 |
Номер сектора и номер цилиндра загрузочного сектора раздела | 2 |
Кодовый идентификатор операционной системы | 1 |
Номер головки конца раздела | 1 |
Номер сектора и цилиндра последнего сектора раздела | 2 |
Младшее и старшее двухбайтовое слово относительного номера начального сектора | 4 |
Младшее и старшее двухбайтовое слово размера раздела в секторах | 4 |
Завершают элемент раздела младшее и старшее двухбайтовое слово относительного номера первого сектора раздела и размер раздела в секторах соответственно.
Номера сектора и номер цилиндра секторов в разделах занимают 6 и 10 бит соответственно. Ниже представлен формат записи, содержащей номера сектора и цилиндра.
Биты номера цилиндра Биты номера сектора
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Как было показано выше, для жестких дисков типичной является ситуация, когда имеется четыре записи в таблице разделов и соответственно четыре раздела. ОС MS-DOS использует только два из них, остальные резервируются на случай параллельного использования других операционных систем.
Благодаря наличию такой структуры как MBR на одном физическом жестком носителе может располагаться несколько файловых систем различного типа различных операционных систем.
Структуры MBR представляют собой важнейшую информацию, повреждение которой приводит к частичной или полной потере доступа к данным логических устройств жесткого диска и возможно, к невозможности загрузки операционной системы с поврежденного носителя.
Логические разделы тоже имеют некоторую иерархическую структуру в зависимости от типа и вида ОС и ее файловой системы.
Так, первый раздел жесткого диска в MS-DOS называется главным разделом (Primary Partition), а второй расширенным (Extended Partition). Главный раздел всегда должен присутствовать на диске, с него происходит загрузка MS-DOS. Расширенного же раздела может не быть, он создается лишь в том случае, когда необходимо получить более одного логического устройства на физическом диске. Логический раздел размещает в себе такие структуры файловой системы как логические диски или устройства, или тома (оформленные как подразделы), загрузчик операционной системы, таблицы распределения файлов, области пользовательских данных в которых размещаются записи о каталогах и файлах и данные файлов. По своей структуре логические подразделы или диски схожи с разделами. Основным отличием является то, что их число может быть более четырех, а последний элемент каждого показывает является ли он последним логическим подразделом раздела, или указывает на следующий элемент таблицы логических устройств или подразделов. Таблица подразделов строится только на расширенной таблице разделов, каждый ее элемент соответствует логическому устройству с односимвольным именем D:, E: и т.д.. Главная таблица разделов содержит только одно логическое устройство – диск С:. Таблица подразделов создается при создании расширенной таблицы разделов, а число элементов таблицы подразделов определяется пользователем. При определении числа логических устройств пользователь определяет и долю дискового пространства расширенного раздела, отводимую каждому логическому устройству – задает объем логических дисков. В дальнейшем, число и объем логических устройств не может быть изменено без потери данных, расположенных на перераспределяемых логических устройствах. На основе разделов в MS-DOS и Windows 95 ориентированных ОС создается дальнейшая структура. Так в таких системах основной единицей хранения информации является кластер (cluster) — группа секторов. В таком случае, для распределения минимального дискового пространства в один байт выделяется целый кластер, содержащий много секторов и еще больше байт (килобайты), что приводит к нерациональному использованию пространства ЖД для мелких файлов. Для доступа к каждому кластеру создается таблица соответствия номеров кластеров файлам на логическом разделе — таблица распределения файлов (File Allocation Table — FAT). Поэтому, файловые систем такого типа называют типа FAT, или построенные по принципу FAT. Это не самый оптимальный, но довольно быстрый способ организации информации на разделах, поэтому он «дожил» до наших дней с незапамятных времен зори цивилизации ПК, где использовался исключительно для накопителей на гибких магнитных дисков. Все остальные логические структуры — файлы или каталоги связаны локализацией с FAT.
Для других ОС, например, UNIX — использование разделов происходит иначе. Как правило, их может быть более четырех, все они равноправны и одинаково могут быть загрузочными, содержат собственные файловые системы на основе i-узлов. Такие файловые системы являются теговыми и не имеют таблиц распределения порций информации. Дисковое пространство распределяется посекторно, что дает максимально возможное использование пространства раздела, но несколько снижает производительность. Весь раздел разбивается на иерархически связанную цепочку узлов разного уровня, которым соответствует некоторое количество секторов. На основе узлов строится понятие файлов и каталогов, и в таких системах файлы и каталоги действительно не различаются, т.к. каталог является файлом, содержащим структуру узлов. Один раздел отводится для дискового свопа и имеет упрощенную структуру, т.к. никогда не содержит файлов и каталогов.
Существуют и другие принципы организации логической структуры дискового пространства разделов накопителей на ЖД.
Все разделы могут содержать загрузчик операционной системы, который располагается, как правило, в первом секторе и занимает один сектор. В этом секторе располагаются структуры — записи, имеющие отношение лишь к конкретной операционной системе и следовательно они могут отличаться для разных разделов и версий операционных систем. Многие специализированные программы (например, защиты данных, по борьбе и профилактике вирусов и др.) могут изменять структуру или отдельные части загрузчика операционных систем. Загрузчик большинства персональных однопользовательских операционных систем является объектом заражения вирусами, которые заражают загрузочные сектора жестких дисков.
Физическое и логическое подключение жестких дисков
Какие же необходимо подключить разъемы и установить перемычки и другие операции при физической установке накопителя на жестких дисках? Это — интерфейсный шлейф, кабель питания, перемычки выбора статуса логического устройства и, возможно, индикатор состояния устройства (обращения к устройству), а также программное распознавание процедурой BIOS компьютера.
Интерфейсный шлейф. Как правило, интерфейсный шлейф соответствующего интерфейса (ATA или SCSI) входит в состав поставки материнской платы (если на ней интегрирован интерфейсный адаптер) или в состав отдельного адаптера и представляет собой плоский одинарный или двойной шлейф. Многие шлейфы комплектуются двумя разъемами для подключения двух устройств, что может быть полезно при добавлении еще одного накопителя в будущем. Один из концевых разъемов на шлейфе подсоединяется к разъему контроллера на плате (материнской или внешнего контроллера, подключаемого к шине материнской платы как устройство расширения через слот расширения шины PCI, ISA или VLB), а два других предназначены для накопителей. Как и на всех других шлейфах, первый проводник на IDE-кабеле помечен красным цветом. Его следует подключать к первому контакту разъемов на плате и на самом накопителе, которые хорошими производителями помечаются цифрой «1». Как правило, первый контакт интерфейсного кабеля на плате накопителя приходится на ту сторону разъема, что ближе к разъему питания. Если интерфейсный шлейф подсоединить неправильно, то, обычно, BIOS накопителя и интерфейса не могут стартовать и зависают на начальной стадии тестирования дисковой системы, при этом ПК не грузится и не отрабатывает процедура «Post». Шлейфы интерфейсов ATA и SCSI подключаются аналогично, хотя многие SCSI контроллеры подключаются не одним, а двумя шлейфами.
Кабель питания подключается аналогично на всех устройствах посредством 4-х контактного стандартного разъема и четырехпроводного кабеля. Питание практически невозможно подключить неправильно, т.к. разъем содержит направляющие фаски, однако, в противном случае, накопитель сразу же выйдет из строя.
Перемычки. При подключении первого ATA или SCSI накопителя вся процедура выполняется аналогично, т.к. основные установки обычно устанавливаются на заводе изготовителе для одиночного устройства (master или single). Однако, при подключении второго накопителя ATA необходимо установить перемычки, определяющие логический статус второго устройства, подключаемого либо к тому же каналу контроллера, что и первый, либо — ко второму каналу. Если устройство IDE подключается первым на канал, то на нем необходимо установить перемычку выбора кабеля логического устройства в положение master, (для одного единственного накопителя также может быть особое положение перемычки — single). При подключении вторым устройством на том же шлейфе — к тому же каналу, что и первое устройство, на втором накопителе необходимо установить перемычку в положение slave или cable select. Необходимо отметить, что два устройства на одном шлейфе (на одном канале), подключенные неправильно, опознаваться и работать не будут, а master устройство является загрузочным и ведущим, в то время как, slave устройство является ведомым и работает несколько медленнее. Необходимо также подчеркнуть, что производительность двух ATA накопителей на одном канале несколько ниже, чем одиночного, чего нельзя сказать о нескольких SCSI накопителях, подключенных к одному контроллеру SCSI.
Рекомендуется не подключать к одному и тому же каналу накопитель на ЖД и CD-ROM, т.к. такое подключение снижает производительность накопителя с интерфейсом ATA.
Единственный и последний накопитель SCSI, подключенные к одному контроллеру, должны содержать плату резисторной сборки или нагрузочную резисторную сборку, или перемычку ее включающую (устанавливается на заводе) и иметь каждый свое положение перемычек, определяющих логический номер устройства. Необходимо отметить возможную поддержку накопителем и адаптером SCSI стандарта SCAM (SCSI Configuration AutoMatically), позволяющий программным путем автоматически установить требуемые идентификаторы логических номеров подключенных к адаптеру SCSI-устройств. А практически все выпущенные в последнее время накопители и адаптеры, как правило, поддерживают этот стандарт.
Раскладка перемычек к накопителям, как правило, приводится на верхней крышке устройства и/или в руководстве пользователя.
Многие накопители содержат разъем для подключения индикатора состояния накопителя, расположенного на передней панели корпуса ПК. Однако, большинство интегрированных и внешних интерфейсных карт, также имеют такой разъем, поэтому, целесообразнее будет подключаться именно к нему, т.к. при смене накопителя не будет необходимости в таком подключении.
После завершения физического подключения необходимо произвести программное распознавание и подключение накопителя. Для устройств с интерфейсом ATA (IDE, EIDE) необходимо выставить процедурой BIOS Standard CMOS Setup или аналогичной такие параметры накопителей как число цилиндров (cyls), головок (head) и секторов (sector), а также режим использования (normal, large или LBA), используя для этого пользовательский тип накопителя (type) — номер 47. Однако, для облегчения данной задачи, особенно, если такие параметры неизвестны или труднодоступны, все современные BIOSы материнских плат содержат процедуру автоматического распознавания накопителей на ЖД с интерфейсом ATA (IDE, EIDE) — IDE HDD Autodetection. Это более необходимо еще и по причине представления несоответствия физического и логического числа цилиндров, головок и секторов для накопителей с числом цилиндров более 1024 и объемом более 540 Мб. В настоящее время, для таких накопителей производители обеспечивают три различных режима работы BIOS с накопителем на жестких дисках – Normal, Large и LBA (Large Block Access) и, соответственно, три различных режима работы интерфейса. Причины возникновения этих режимов кроются в совместимости низкоуровневого ПО для серии клонов IBM-PC. Ранее, задолго до появления накопителей на жестких магнитных дисках большого объема, программисты, создающие низкоуровневое ПО, работающее с аппаратурой ПК, к которому обращается операционная система и прикладные программы, определили интерфейс работы программного кода с процедурами BIOS и не позаботились о том, чтобы можно было сообщить номер читаемого или записываемого цилиндра больший 1024. В настоящее время, большинство накопителей большого объема (более 540Мб) имеют число цилиндров гораздо большее 1024. Использование такого накопителя в обычном режиме normal давало бы возможность использовать только часть объема устройства (приблизительно 540 Мб). Данные ограничения и проблемы ни в коей мере не касаются ОС не использующих процедуры BIOS и выполняющих все операции управления интерфейсами дисковых накопителей самостоятельно, а также накопителей с интерфейсом SCSI. Такими системами традиционно являются UNIX-ориентированные ОС и Windows NT. Режимы Large и LBA дают возможность обойти эти ограничения для ОС типа MS-DOS путем специального пересчета и уменьшения числа цилиндров за счет программного виртуального увеличения числа секторов и головок. Наиболее предпочтительным является режим LBA, допускающий большую совместимость и позволяющий использовать накопители большего объема (до 8.4 Гб, против 1Гб — для режима Large). Необходимо помнить, что если накопитель был отформатирован ОС на высоком уровне в режиме LBA, то в других режимах он будет работать ненормально и может испортиться, то же касается и остальных параметров, неправильная установка которых может привести к частичной или полной неработоспособности и даже к поломке накопителя.
Для накопителей с интерфейсом SCSI, контроллер которых снабжен собственной BIOS и процедурой setup, необходимо вызвать данную процедуру во время загрузки ПК путем нажатия соответствующей комбинации клавиш (такие комбинации различны у адаптеров различных производителей, а указание на них приводится в строках инициализации интерфейса, возникающих на экране монитора после включения ПК). Так как процедуры setup существенно различаются, то общей рекомендацией будет найти и выполнить программу тестирования или определения устройств и их логических номеров, подключенных к интерфейсу. Часто, такая процедура выполняется автоматически и входит в состав тестирующих процедур для PnP BIOSов.
Физическое положение, в котором работают современные ЖД, не играет большой роли. Большинство накопителей может работать и горизонтально, и вертикально, и на боку, и в наклонном положении, однако, встречаются накопители, в руководстве к использованию которых не рекомендуется располагать устройство, например, платой электроники вверх или иначе, поэтому, перед установкой внимательно познакомьтесь с руководством пользователя. Главное, во время работы не подвергать накопитель резким толчкам и сильной вибрации, т.к. при этом создается максимальная угроза повреждения поверхностей дисков головками чтения/записи. В выключенном состоянии головки запаркованы и небольшая вибрация и толчки не могут повредить накопитель.
Работа накопителя
Теперь рассмотрим процесс работы накопителя от запуска до остановки. При подаче питающих напряжений начинает работать микропроцессор контроллера. Вначале он, как и компьютер, выполняет самотестирование и в случае его успеха запускает схему управления двигателем вращения шпинделя. Диски начинают раскручиваться, увлекая за собой прилегающие к поверхностям слои воздуха, и при достижении некоторой скорости давление набегающего на головки потока воздуха преодолевает силу пружин, прижимающих их к дискам, и головки «всплывают», поднимаясь над дисками на доли микрона. С этого момента, вплоть до остановки дисков, головки не касаются дисков и «парят» над поверхностями, поэтому ни диски, ни сами головки практически не изнашиваются. Тем временем, двигатель шпинделя продолжает раскручивать поверхности. Его скорость постепенно приближается к номинальной (тысячи оборотов в минуту). В это время накопитель потребляет максимум питающего напряжения и создает предельную нагрузку на блок питания компьютера по напряжению 12 Вольт. Поскольку в любой зоне дисков присутствует серворазметка, то сервоимпульсы начинают поступать с головок сразу же после начала вращения, и по их частоте контроллер судит о скорости вращения дисков. Система стабилизации вращения следит за потоком сервоимпульсов, и при достижении номинальной скорости происходит так называемый «захват», при котором любое отклонение скорости вращения сразу же корректируется изменением тока в обмотках двигателя. После достижения шпинделем номинальной скорости вращения освобождается фиксатор позиционера головок чтения/записи, и система его управления проверяет способность поворачиваться и удерживаться на выбранной дорожке путем выборочного произвольного позиционирования. При этом делается серия быстрых поворотов в разные стороны, что на слух выглядит как характерное «тарахтение», слышимое через несколько секунд после старта. Во время перемещения позиционера головок происходит слежение за поступающими с головок серво-импульсами, и система управления всегда «знает», над сколькими дорожками прошли головки. Аналогично происходит и удержание головок над выбранной дорожкой — при отклонении от центра дорожки изменяется во времени величина и форма серво-импульсов. Система управления может ликвидировать отклонение, изменяя ток в обмотках двигателя позиционера головок. Во время тестирования привода головок заодно делается и его калибровка — подбор параметров управляющих сигналов для наиболее быстрого и точного перемещения позиционера при минимальном количестве «промахов». Здесь нужно сказать, что микрокомпьютер ЖД, как и компьютер, имеет ПЗУ, в котором записана BIOS накопителя — набор программ для начального запуска и управления во время работы, и ОЗУ, в которое после раскрутки механической системы загружаются остальные части управляющих программ. Кроме всего прочего, в ОЗУ загружается так называемая карта переназначения дефектных секторов, в которой отмечены дефектные секторы, выявленные при заводской разметке дисков. Эти секторы исключаются из работы и иногда подменяются резервными, которые имеются на каждой дорожке и в специальных резервных зонах каждого диска. Таким образом, даже если диски и имеют дефекты (а при современной плотности записи и массовом производстве поверхностей носителей они имеют их всегда), для пользователя создается впечатление «чистого» диска, свободного от сбойных секторов. Более того — на каждом диске накопителя имеется некоторый запас резервных секторов, которыми можно подменить и появляющиеся впоследствии дефекты. Для одних накопителей это возможно сделать под управлением специальных программ, для других — автоматически в процессе работы. Хранение подобной служебной информации на дисках, кроме очевидной выгоды, имеет и свои недостатки — при ее порче микрокомпьютер не сможет правильно запуститься, и, даже, если все информационные секторы не повреждены, восстановить их можно будет только на специальном заводском стенде.
После начальной настройки электроники и механики микрокомпьютер ЖД переходит в режим ожидания команд контроллера, расположенного на системной плате или интерфейсной карте, который в свою очередь программируется процедурами собственной BIOS или BIOS компьютера под управлением ОС. Получив команду, он позиционирует на нужный цилиндр, по сервоимпульсам отыскивает нужную дорожку, дожидается, пока до головки дойдет нужный сектор, и выполняет считывание или запись информации. Если контроллер запросил чтение/запись не одного сектора, а нескольких — накопитель может работать в блочном режиме, используя ОЗУ в качестве буфера и совмещая чтение/запись нескольких секторов с передачей информации к контроллеру или от него.
Современные накопители (как ATA, так и SCSI) поддерживают развитую систему команд управления устройством среди которых имеются и такие, которые позволяют остановить вращение шпинделя и перевести накопитель в ждущий режим. Данный режим используется ПО ОС и BIOSов ПК для обеспечения стандартов сохранения энергии и работы процедур системы сохранения энергии, отключающих накопитель через некоторое время после ожидания его использования. Необходимо отметить, что не следует злоупотреблять частой остановкой и включением накопителя, т.к. именно во время разгона накопитель работает в форсированном режиме и изнашивается сильнее, нежели при нормальной эксплуатации в полностью рабочем активном состоянии. Использовать возможности сохранения энергии процедур BIOS и ОС следует лишь на машинах-серверах, работающих круглосуточно, дисковые операции на которых могут не выполняться по нескольку часов, в то время как, вся система должна находиться в состоянии полной готовности.
При выключении питания двигатель шпинделя работает в режиме генератора, обеспечивая питание плат электроники на время, необходимое для корректного завершения работы. Прежде всего, блокируется подача тока записи в магнитные головки, чтобы они не испортили информацию на поверхностях, а остаток энергии подается в обмотки привода головок, толкая их к центру дисков (в этом движении головкам помогает и естественная скатывающая сила, возникающая при вращении дисков). Как правило, для того чтобы запарковать головки достаточно одной скатывающей силы. Дойдя до посадочной зоны, привод головок защелкивается магнитным или механическим фиксатором еще до того, как головки успеют коснуться поверхности в результате падения скорости вращения дисков. В этом и состоит суть «автопарковки» — любой исправный накопитель всегда запаркует головки, как бы внезапно не было выключено питание, однако, если в этот момент происходила запись информации, то для пользователя последствия могут быть весьма печальными из-за недописанных или необновленных, как областей данных, так и управляющих структур файловой системы ПК, независимо от типа и вида установленной ОС.
Как выбрать жесткий диск
Несомненно, что при обилии предложения такой высокотехнологичной продукции как накопители на жестких дисках неквалифицированному пользователю бывает трудно сделать свой выбор. Это усугубляется еще и тем, что неправильный выбор комплектующих в другой части ПК, например видеокарты, или даже материнской платы, в худшем случае, будет выражаться в потраченных зря средствах, суммой равной стоимости комплектующих. В случае же внезапного отказа жесткого диска, потери предприятия или частного пользователя, как правило, заключаются не только в сумме, необходимой для приобретения нового накопителя, или ремонта старого. Часто это лишь крохи по сравнению со стоимостью восстановления данных и программ, хранившихся на устройстве. Поэтому, к выбору накопителя на ЖД следует относиться с особой внимательностью и ответственностью и ни в коем случае не следует экономить на таком оборудовании.
Итак, вы решили приобрести первый накопитель, дополнительный или сменить уже существующий на устройство большего объема. В качестве первой рекомендации можно посоветовать не покупать диск, бывший в употреблении. Сэкономленные деньги могут стоить вам потерянной информации, так как вероятность выхода из строя такого диска значительно выше, да и на хороший гарантийный срок рассчитывать не приходится. Кроме того, покупая устаревшую модель накопителя, вы обрекаете ПК на то, что спустя короткий промежуток времени, например, через год, вопрос о необходимости покупки нового диска станет снова. Также, лучше при установке нового диска убрать старый, что позволит избежать проблем с несовместимостью и заниженной производительностью.
Какой же диск можно в настоящий момент назвать современным? Современный накопитель на ЖД должен иметь достаточный объем для установки любой ОС персонального ПК и соответствовать стандартам, появившимся в течение последних трех лет. Так, к примеру, сейчас объем должен быть не ниже 1-3 Гбайт (накопители с меньшей емкостью, как правило, относятся к устаревшим сериям и моделям). Среднее время доступа к данным — менее 13 мс (у лучших — менее 8!). Скорость вращения дисков (шпинделя) — более 4500 об/мин (для быстрых — 5400, а для самых последних моделей — 7200 и 10000). Интерфейс — EIDE или SCSI-3 (у самых современных — Ultra ATA или Ultra Wide SCSI соответственно). Скорость передачи данных — более 10 Мбайт/с (а для быстрых накопителей последних моделей — до 40 Мбайт/с). Форм-фактор (диаметр дисков и требуемый размер отсека под установку) — 3,5 дюйма.
После рассмотрения основных технико-эксплуатационных характеристик необходимо определиться с типом интерфейса. Так как большинство материнских плат для персональных компьютеров имеют встроенный интегрированный интерфейс Ultra ATA IDE, производительность и другие характеристики накопителей с этим интерфейсом постоянно улучшаются, а стоимость (по сравнению с аналогичными моделями SCSI включая стоимость интерфейсной карты) остается достаточно низкой, можно смело рекомендовать для настольной офисной, домашней или учебной системы накопитель с интерфейсом Ultra ATA IDE. И только в случае комплектации мощных серверов распределенных баз данных и сетевых многопользовательских систем с большим числом пользователей необходимо ориентироваться на систему с SCSI интерфейсом, стоимость которого будет выше аналогичной или более производительной Ultra ATA приблизительно на 250 у.д.е — т.е. на стоимость интерфейсной карты SCSI. Если же, система уже оснащена интегрированным или внешним интерфейсным адаптером SCSI (причем, желательно, чтобы это не был адаптер сканера, т.к. для сканирующих устройств SCSI интерфейсы, как правило, упрощены и малопроизводительны), то, конечно же, следует установить SCSI накопитель. Приобретая SCSI-адаптер желательно остановиться на модели, отвечающей спецификации Plug&Play. Исходя из имеющихся средств, постарайтесь приобрести адаптер одного из последних стандартов SCSI, т.к. он не будет ограничивать скорость передачи данных, но позволит установить диски предыдущих стандартов SCSI. При наличии в компьютере свободных слотов расширения PCI, предпочтительнее покупать адаптер для этой более производительной шины. В общем случае можно порекомендовать адаптеры фирмы Adaptec (http://www.adaptec.com), отличающиеся простотой установки и конфигурации.
Конечно, к основной рекомендации можно отнести принцип — покупайте продукцию только известных фирм, имеющую длительную гарантию (1-3 года и дольше) и устойчивую репутацию. Какие же компании в настоящее время являются лидерами на рынке производителей накопителей на жестких магнитных дисках? Ниже приводится перечень крупнейших компаний и краткое описание их продукции.
Seagate Technology, Inc.. Корпорация, стоявшая у истоков разработки накопителей на жестких дисках для первых моделей IBM-PC. Еще и сейчас на многих ископаемых но работающих ХТ и 286-х машинах можно встретить живые накопители этой фирмы объемом 20 мегабайт, проработавшие почти 20 лет и не имеющие ни единого «бед» блока. Компания выпускает EIDE и SCSI диски с высоким быстродействием, по самым передовым технологиям. Известна сериями дисков Medalist и Barracuda. В тестах журнала PC World эти накопители неоднократно отмечались как одни из самых быстрых и малошумных («Best Buy» журнала PC World). Расположение и маркировка перемычек удобны и понятны. Корпус Seagate Medalist имеет хорошую защиту электронных компонентов от механических повреждений. В комплекте стандартной поставки идет утилита для Windows — DiscWizard, наиболее полно обеспечивающая установку и разметку. SCSI диски Seagate серии Barracuda соответствуют самым современным стандартам, включая Ultra SCSI. Фирма предоставляет длительную (до 5 лет) гарантию на свои изделия. Необходимо отметить, что для дисков Seagate некоторыми российскими фирмами установлена, пожалуй, самая длительная гарантия — 4 года
Quantum Corporation. Одна из лидирующих компаний по выпуску как SCSI, так и EIDE дисков. Наиболее распространены диски серий Pioneer и Fireball. Эти диски сертифицированы для использования с Windows 95 и Windows NT и используют, так же, как и Western Digital, технологию S.M.A.R.T. для предупреждения о возможных сбоях. В серии Fireball выпускаются EIDE и SCSI модификации, при этом диски EIDE имеют одни из самых лучших показателей быстродействия. Компания является разработчиком нового стандарта для дисков EIDE — Ultra ATA, обеспечивающего скорости передачи данных до 33,3 Мбайт/с и более высокую надежность обмена данными. Однако, продукция Quantum имеет довольно средние показатели ударозащищенности, к тому же конструкция дисков содержит много открытых элементов, т. е. велика опасность физических повреждений и выхода из строя из-за воздействия статического электричества. Стандартный гарантийный срок фирмы — 3-5 лет.
Samsung Electronics. Бурно развивающийся компьютерный гигант, который еще недавно практически не мог конкурировать с ведущими производителями накопителей всех видов, в настоящее время планирует занять до 9% рынка в области производства дисковых магнитных и оптических накопителей. Производство жестких дисков организуется по новейшим технологиям. Соответственно, можно ожидать высокого уровня надежности продукции, что не относится к старым моделям. Существенным стимулом для покупки диска Samsung может быть его невысокая стоимость.
Fujitsu. Японская компания, известная прежде всего демпинговыми ценами своей продукции на мировом компьютерном рынке. В дисках этой фирмы также использованы передовые технологии, такие, как S.M.A.R.T., и собственная технология энергосбережения Intelligent Power Management. Диски имеют невысокий уровень шума и, в целом, средние значения показателей быстродействия. В качестве недостатков можно упомянуть нестандартные расположение и маркировку перемычек; специфическую, не содержащую полной жесткой станины, конструкцию корпуса; достаточно средние характеристики удароустойчивости и большое количество открытых элементов, незащищенных от механических повреждений. Также, существенным стимулом для покупки дисков Fujitsu является их невысокая стоимость.
IBM PC Company. Один из старейших производителей не только PC, но и жестких дисков. Производит как SCSI так и EIDE накопители. К наиболее известным относится серия Deskstar. Диски имеют отличную производительность и быстродействие. Однако, маркировка и расположение перемычек нестандартны. Фирма гарантирует совместимость с Windows 95, Windows NT и OS/2. Гарантия на диски — до 3 лет. В комплект поставки входит утилита Disk Manager, обеспечивающая быструю установку и разметку. Накопители IBM также достаточно дешевы и могут быть рекомендованы в качестве надежной альтернативы накопителям Seagate.
Western Digital Corporation несомненно относится к ведущим производителям жестких дисков. Компания является разработчиком первой спецификации IDE. Наиболее известна именно дисками EIDE, занимающими львиную долю западного и российского рынка HDD. Ее накопители можно охарактеризовать как имеющие высокие скоростные характеристики. Накопители просты в установке (имеют удобное расположение и понятную маркировку перемычек. Современная серия EIDE дисков носит название Caviar и использует технологию S.M.A.R.T.. Диск Western Digital Caviar 22100 получил высшую оценку («Best Buy») журнала PC World среди IDE дисков. EIDE диски WD имеют высокие показатели ударозащищенности. В настоящее время компания выпускает SCSI диски серии Enterprise, поддерживающие наиболее современные спецификации Ultra SCSI, имеющие высокие характеристики и длительную гарантию (до 5 лет). Все накопители сертифицированы на совместимость с Novell, Windows 95 и Windows NT. В комплект поставки входит утилита EZ Drive, облегчающая разбиение и форматирование дисков. К сожалению, необходимо отметить, что в 1997 году фирмой были отмечены некоторые серьезные недостатки для очень небольшого числа выпущенных накопителей, которые были впоследствии исправлены. Поэтому, приобретая диски этой фирмы, необходимо удостовериться по маркировке, что они выпущены не в 1997 году. Кроме того, необходимо обратить внимание на совместимость с платами AsusTek. С подробностями о контроле качества компанией Western Digital, исправленными ошибками и о новом ПО можно ознакомиться на узле WD в Интернет.