Управление магнитными дисками
Управление магнитными дисками
Как устроены НМД и от чего зависят их параметры:
-рисунок (смотрим на доску!)
-скорость вращения
-зазор между диском и головкой чтения/записи
-ширина зазора головки чтения записи
-характеристики тонарма
-параметры магнитного слоя
Чем можно управлять:
-поиск цилиндра
-поиск сектора
-чтение/запись
Когда нужно управлять:
-если есть поток запросов к накопителю
-если диски стали критическим ресурсом
Стратегии управления
FIFO(FCFS) - самая простая
SSTF (shortest seek time the first) - выбираем из очереди запрос с минимальным временем поиска дорожки. «Любит» средние дорожки.
SCAN (сканирование) - выбираем из очереди запрос с минимальным временем поиска дорожки в преимущественном направлении.
Хорошая, часто используется на практике.
N-step SCAN (N-шаговое сканирование) – как в SCAN, но новые попутные запросы игнорируются. Маленькая дисперсия времен ответа!
C-SCAN (circle SCAN) – запросы обслуживаются только при движении к центру, обратно «рывком» на крайнюю дорожку. Очень маленькая
дисперсия времен ответа!
Эшенбаха – как в C-SCAN, но добавлена оптимизация по секторам
SLTF (shortest latency time the first) – как в SSTF но добавлена оптимизация по секторам. Близка к теоретически оптимальной, простая.
Винчестер RAMAC
RAMAC (Random Access Method of Accounting and Control) был разработан в лаборатории IBM в 1956 году в калифорнийском городе Сан-Хосе (сердце Силиконовой долины). Пластины диска были покрыты «краской» из магнитного оксида железа. Емкость 5 Мбайт. Пластины были смонтированы на вращающемся шпинделе, а механический кронштейн (один!) содержал головки чтения и записи и перемещался вверх-вниз на вертикальном стержне, причем время доставки головки до нужной магнитной дорожки составляло менее одной секунды. Вес – 970 кг. Аренда – 35000$/год.
Винчестер IBM 3340
Разработан в 1973. Плотность записи 1,7 Мбит на кв.дюйм, аэродинамические головки, герметичная «коробка», в которой помещались пластины с головками. IBM 3340 по праву считают отцом современных жестких дисков. Несменяемая емкость 30 Мбайт плюс еще (30 Мбайт) в сменном отсеке.
Высота – 1 метр.
Время доступа - 25 миллисекунд. Сменные диски дали название - Винчестер.
Аренда – 7.8$ МБ/месяц
Современные винчестеры
IBM в 1999 году выпустила |
Жесткий диск Seagate Momentus |
однодюймовый жесткий диск — |
5400.3 (Venus) емкостью 160 Гбайт с |
Microdirve. Скорость вращения |
перпендикулярной магнитной |
пластин 3600 об./мин. |
записью (это на треть увеличивает |
|
емкость диска при том же объеме). |
RAID 0
RAID 0 («Striping») — дисковый массив из двух или более дисков с отсутствием избыточности.
Информация разбивается на блоки данных (Ai) и записывается на оба/несколько дисков одновременно.
(+): За счёт этого существенно повышается производительность (от количества дисков зависит кратность увеличения производительности).
(+): RAID 0 может быть реализован как программно, так и аппаратно.
(−): Страдает надёжность всего массива (при выходе из строя любого из входящих в RAID 0 винчестеров полностью и безвозвратно пропадает вся информация). Надёжность массива RAID 0 ниже надёжности любого из дисков, т.к. она равна произведению вероятностей безотказной работы составляющих его дисков, каждая из которых меньше единицы.
RAID 1
RAID 1 (Mirroring — «зеркалирование»). (+): Обеспечивает приемлемую скорость записи и
выигрыш по скорости чтения при распараллеливании запросов.
(+): Имеет высокую надёжность — работает до тех пор, пока функционирует хотя бы один диск в массиве.
(-): Недостаток заключается в том, что приходится выплачивать стоимость двух жёстких дисков, получая полезный объем одного.
Вероятность выхода из строя сразу двух дисков ниже. Достоинство такого подхода — поддержание постоянной надёжности.
Зеркало на многих дисках — RAID 1+0. При использовании такого уровня зеркальные пары дисков выстраиваются в «цепочку», поэтому объём полученного тома может превосходить ёмкость одного жёсткого диска.
RAID 2
В массивах такого типа диски делятся на две группы — для данных и для кодов коррекции ошибок, причем если данные хранятся на n дисках, то для складирования кодов коррекции необходимо n − 1 дисков. Данные записываются на соответствующие винчестеры так же, как и в RAID 0, они разбиваются на небольшие блоки по числу дисков, предназначенных для хранения информации. Оставшиеся диски хранят коды коррекции ошибок, по которым в случае выхода какого-либо винчестера из строя возможно восстановление информации. Метод Хемминга давно применяется в памяти типа RAM и позволяет на лету исправлять однократные и обнаруживать двукратные ошибки.
Впрочем, держать ради этого громоздкую структуру из почти двойного количества дисков никому не хотелось, и этот вид массива не получил распространения.
RAID 3
Структура RAID 3: в массиве из n дисков данные разбиваются на блоки размером 1 байт и распределяются по n − 1 дискам, а еще один диск используется для хранения блоков четности. В RAID 2 для этой цели стояло n − 1 дисков, но большая часть информации на этих дисках использовалась только для коррекции ошибок на лету, а для простого восстановления в случае поломки диска достаточно меньшего ее количества, хватает и одного выделенного винчестера. Соответственно, отличия RAID 3 от RAID 2 очевидны: невозможность коррекции ошибок на лету и меньшая избыточность.
(+): скорость чтения и записи данных высока, для создания массива нужно min 3 диска. (-): массив этого типа хорош только для однозадачной работы с большими файлами. Массив не получил распространения.