shkolakz.ru 1

Тема: Внешняя память. Дисковая память. Память на гибких магнитных дисках. Общие сведения о RAID – технологиях.

Внешняя память

Внешней называют память на магнитных (жесткие и гибкие диски), оптических носителях (CD-ROM) и т.п.

Кроме того существует и накопители на магнитной ленте, которые в настоящее время практически не используются и поэтому в данной главе не рассматриваются.

Дисковые накопители в зависимости от среды носителя и по применяемому методу записи (чтения) данных на (с) поверхность (и) могут подразделяться на магнитные, оптические и магнитооптические.

Тип накопителя

Емкость, Мб

Время доступа, мс

Скорость передачи, Кбайт/с

Режим доступа

НГМД

1,2; 1,44

65 -100

150

Чтение/запись

НЖМД (Винчестер)

1000-18000

8-20

500-3000

Чтение/запись

CD-R

120-800

15-300

150-1500

Чтение/
однократная запись

CD-RW

120-800

15-150

150-1500

Чтение/Запись

НМОД


128-1300

15-150

300-2000

Чтение/запись

Дисковая память


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

Перед осуществлением записи на магнитный диск он должен быть специальным образом инициализирован – отформатирован. В результате форматирования на поверхности образуются концентрические окружности (синхронизирующие метки диска), называемые дорожками (track). Количество дорожек зависит от типа диска. Дорожки разбиваются на участки фиксированной длины, называемые секторами. Количество секторов на дорожке определяется типом и форматом диска, и они в основном одинаковы для всех дорожек. IBM PC-совместимые ПК могут работать с несколькими размерами секторов от 128 до 1024 байт. Стандартным сектором считается сектор из 512 байт. Данные любого размера (разрядности) размещаются в секторах с фиксированным размером, а дисковые операции записи и считывания производятся с целыми секторами.

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

Память на гибких магнитных дисках


Все НГМД, применяемые в PC, независимо от типа и размера имеют одинаковый интерфейс и унифицированные разъемы. Используемый в PC кабель-шлейф имеет перевернутый фрагмент из 7 проводов с номерами 10-16. Этот поворот позволяет подключать к контроллеру одним шлейфом до двух НГМД, причем адрес накопителя определяется его положением на шлейфе: для при­вода А: фрагмент перевернут, для В: – нет.

Контроллер накопителей на гибких дисках FDC (Floppy Drive Controller) является всегда внешним по отношению к накопителю и обычно располагается на одной плате с контроллером или адаптером жестких дисков.

Контроллер FDC XT поддерживает до четырех накопителей (FDD), хотя многие контроллеры имеют интерфейсные схемы только для одного шлейфа, то есть для двух накопителей. Эти контроллеры обеспечивают скорость передачи данных 250 и 300 Кбит/с.

Контроллер FDC AT поддерживает только два накопителя, но обеспечивает более высокую скорость 500 Кбит/с.

Современные контроллеры обеспечиваю скорость 1000 Кбит/с. В карте ресурсов AT имеется место под два контроллера НГМД.

Контроллеры вырабатывают запрос аппаратного прерывания IRQ6 (BIOS INT OEh) по окончании выполнения внутренних операций. Для обмена данными может использоваться канал DMA2.

Память на жестких магнитных дисках


В отличие от накопителей на гибких дисках и их контроллеров, жестко стандартизованных и поэтому легко конфигурируемых, в PC применяется множество типов накопителей на жестких дисках, их интерфейсов и контроллеров, различающихся и способами конфигурирования.

Накопители на жестких магнитных дисках НЖМД (HDD), появились с машинами PC/XT. Первые накопители имели интерфейс, являющийся расширением интерфейса НГМД, и подключались к специальной плате контроллера с модулем дополнительной BIOS, хранящей всю информацию об установленных жестких дисках. В машинах класса AT поддержку стандартного контроллера включили в системную BIOS, параметры используемых жестких дисков стали хранить в памяти CMOS.


Традиционные версии BIOS поддерживают до двух накопителей на жестких дисках и хранят их параметры в ячейках памяти CMOS. Расширенные версии BIOS для современных двухканальных контроллеров АТА поддерживают 4 жестких диска и хранят их параметры.

Для дисков ATA используются следующие режимы адресации:


  • CHS (целиндр-головка-сектор, традиционная трехмерная адресация данных на диске);

  • ECHS (расширенная трехмерная адресация);

  • LBA (линейная адресация данных на диске через логический адрес блока).

Учитывая, что в соответствии с форматом вызова функций дискового сервиса, одно устройство может иметь 210=1024 цилиндра, 28=256 головок, 26-1=63 сектора. Таким образом, при трехмерной адресации (CHS) и размере сектора в 512 байт максимальный объем диска не может превышать 7.875 Гбайт.

HDDmax(CHS) = [210 * 28 * (26-1)] * 512 = 136 902 082 560 байт = 7.875Gb (~8,4ГБ)

Все современные винчестеры используют LBA-адресацию. В режиме LBA параметры стандартных вызовов транслируются в т.н. линейный адрес, который вычисляется однозначно в «естественном» порядке счета секторов, т.е. сектору с нулевым лог. адресом соответствует первый сектор нулевой головки нулевого цилиндра. В этом случае номер каждого сектора представляет собой 28-битное число и максимальным диском для LBA будет:

HDDmax(LBA) = 228 * 512 = 137.4Gb (128ГБ)

В тоже время большинство ПО использует CHS-адресацию. Поэтому с появлением HDD с LBA адресацией, чтоб не модернизировать имеющееся ПО, поступили следующим образом. BIOS в случае определения LBA-винчестера, переводит его параметры в CHS-версию и ОС работает с ним с CHS-винчестером. Т.е. 28-битное значение адреса LBA «раскладывается» следующим образом: 16 бит – цилиндр, 8 бит – сектор, 4 бита – головка. В результате, при получении запроса на работу с диском, BIOS переводит для контроллера это значение LBA-адрес :


В общем виде формулы вычисления такого адреса имеет вид:

LBA=(CYL*HDS*HD)*SPT+SEC-1

CYL – номер цилиндра

HD – номер головки

HDS – количество головок

SPT – количество секторов на треке

SEC – номер сектора

Для накопителей на жестких дисках используют интерфейсы ST-506/412, ESDI, АТА (неофициальное название IDE), SCSI. Накопители и контроллеры с интерфейсами ST-506/412 и ESDI практически не используются.

В настоящее время широко используются перечисленные ниже интерфейсы.

АТА-2 — расширенная спецификация ATA, включает 2 канала, 4 устройства, PIO Mode 3 (программированный ввод-вывод), DMA mode 1 , Block mode (пакетный обмен), объем диска до 8 Гбайт, поддержка LBA и CHS адресации.

Fast АТА-2 разрешает использовать DMA Mode 2 (13,3 Мбайт/с), PIO Mode 4.

ATA-3 — расширение, направленное на повышение надежности. Включает средства парольной защиты, улучшенного управления питанием, самотестиро­вания с предупреждением приближения отказа — SMART (Self Monitoring Ana­lysis and Report Technology).

Ultra DMA/33 — версия ATA/IDE со скоростью обмена по шине 33 Мбайт/с. Устройства ATA IDE, E-IDE, АТА-2, Fast АТА-2, ATA-3 и Ultra DMA/33 электрически совместимы.

Последние достижения в этой области – интерфейсы Ultra ATA/66, Ultra ATA/100 и Ultra ATA/133 позволяющие осуществлять передачу данных со скоростью 66Мбай/сек, 100 Мбай/сек и 133 Мбай/сек соответственно.

Возможно также подключение дисковых устройств и к параллельному порту, но через устройство, обеспечивающее один из вышеперечисленных интерфейсов. О дисках с интерфейсом USB говорить пока рано, а интерфейс FireWire является родственником SCSI-3.

Кэширование диска

Время доступа к различным блокам информации на HDD является переменной величиной, складывающейся из временами подвода магнитной головки (МГ) к искомой дорожке, времени успокоения вибрации МГ и времени подвода искомого сектора под МГ. Кэш или буфер HDD необходим, чтоб по возможности сократить время доступа к диску за счет, во первых, предварительной выборки данных, и во-вторых, за счет организации поблочного доступа. Для организации буфера используются два вида кэш-памяти аппаратная и программная.


Аппаратная кэш-память представляет собой значительный объем памяти и имеет архитектуру полного ассоциативного отображения. Она строится на плате кэш-контроллера HDD с использованием модулей высокопроизводительной памяти и имеет собственный процессор.

Программная кэш-память — это некоторая область системной памя­ти, зарезервированная для дискового кэша и управляемая утилитой (например, Windows SmartDrive).Объем программной кэш-памяти рекомендуется ограничивать четвертью объема системной памяти).

В многозадачных системах выгодно иметь HDD с мультисегментной кэш-памятью (для каждой задачи отводится своя часть кэша – сегмент). В адаптивной системной кэш-памяти для повышения производительности размер и количество сегментов могут изменяться.

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

Общие сведения о RAID-технологиях


В RAID (Redundant Array of Independent Disks) технологии данные и информация для устранения ошибок распределяются по нескольким дискам. При этом обеспечивается повышение производительности, а также защита критически важных приложений в среде клиент-сервер. Для обеспечения бесперебойного доступа выбирается конфигурация с дублированным источником питания и функцией «горячей перекачки», которая оперативно реконструирует данные при замене отказавшего диска на новый.

С целью уменьшения платы за надежность был предложен ряд архитектур. Разработаны RAID-системы нескольких уровней. Первый уровень RAID предполагает сплошное копирование защищаемых данных. Остальные уровни RAID основаны на работе с одной копией данных, распределенной по разным дискам, при использовании схем четности. По сравнению с зеркальным отображением контроль четности позволяет снизить накладные расходы на избыточность (см. рис. 2.12). На рисунке схематично представлена система RAID 3 и дается пример восстановления потерянного блока (ФБЗ1) с использованием контрольной информации (ФБ41). При появлении отказа необходимо заменить отказавший диск и подать команду на RAID-контроллер о восстановлении массива. Получив такую информацию, компьютер рассматривает все блоки, определяет, каких данных не достает, восстанавливает утраченные фрагменты на основе информации о четности и записывает полученные блоки на новый диск. Очень важно восстановить массив как можно быстрее. Отказ второго диска будет означать полную утрату всех данных. Использовании при построении ВС RAID 3 при четырехдисковой организации приводит к повышению стоимости системы приблизительно на 25 %.