Память на жестких магнитных дисках
В отличие от накопителей на гибких дисках и их контроллеров, жестко стандартизованных и поэтому легко конфигурируемых, в 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 Analysis 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 с мультисегментной кэш-памятью (для каждой задачи отводится своя часть кэша – сегмент). В адаптивной системной кэш-памяти для повышения производительности размер и количество сегментов могут изменяться.
©2015 arhivinfo.ru Все права принадлежат авторам размещенных материалов.
|