бесплатно рефераты
 

Накопители на жестких дисках

компьютеров является 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.

Страницы: 1, 2, 3, 4


ИНТЕРЕСНОЕ



© 2009 Все права защищены.