- •Раздел 4. Управление внешней памятью
- •4.1. Общие принципы управления внешней памятью
- •4.1.1. Причины необходимости управления внешней памятью
- •4.1.2. Диски с фиксированными головками чтения/записи
- •4.1.2. Диски с подвижными головками чтения/записи
- •4.2. Системное по для управления внешней памятью
- •4.2.1. Правила ввода-вывода на диски
- •4.2.2. Принципы программирования процедур управления диском
- •4.3. Управление внешней памятью в современных ос
- •4.3.1. Недостатки старых ос (msdos и WinNt по сравнению с Win2000) и базовая терминология
- •4.3.2. Структура динамического диска
- •4.3.3. Драйверы устройств внешней памяти
- •4.3.4. Управление составными томами
- •4.3.5. Ввод-вывод на томах
- •4.3.6. Порты завершения ввода-вывода
- •Заключение по разделу 4
4.3.3. Драйверы устройств внешней памяти
Первым этапом загрузки Win2000 управляет Ntldr. Ntldr считывает с системного тома файл Boot.ini и предлагает выбор варианта загрузки. Имена вариантов представлены в виде меню. Затем Ntldr транслирует имя выбранного варианта в имя загрузочного раздела и загружает системные файлы.
Драйверы дисков
Драйверы устройств внешней памяти соответствуют архитектуре "класс-порт-минипорт".
Согласно этой архитектуре драйвер класса внешней памяти реализует общую функциональность для всех устройств внешней памяти.
Порт-драйвер реализует функциональность, общую для конкретной шины, например, SCSI или IDE.
Минипорт-драйвер реализует интерфейс с конкретным устройством.
Пример класс-драйвера диска – драйвер Disk.sys (каталог winnt\system32\drivers\).
Пример порт-драйвера диска – драйвер Pciidex.sys, для IDE диска.
Иногда порт-драйвер и минипорт-драйвер представлены одним объектом, например, Atapi.sys.
Управление базовыми дисками осуществляет драйвер FtDisk.sys.
Управление динамическими дисками осуществляет драйвер Dmio.sys.
4.3.4. Управление составными томами
Существуют следующие типы составных томов:
перекрытые (spanned)
зеркальные (mirrored)
чередующиеся (striped)
RAID-5
Управление составными томами существенно сложнее, т.к. их разделы могут быть несмежными и даже находиться на разных дисках.
Перекрытые тома
Перекрытый том – это единый логический том, состоящий из нескольких свободных разделов на одном или нескольких дисках.
Перекрытый том D:
Перекрытый том удобен для объединения небольших областей свободного дискового пространства в единый том большего объема.
Если том отформатирован для NTFS, его можно расширять.
Диспетчер томов скрывает физическую конфигурацию дисков от файловой системы.
Чередующиеся тома
Чередующийся том – это группа разделов, каждый из которых размещается на отдельном диске и объединяется в один логический том. Другое название – RAID-0.
Файловой системе этот чередующийся том кажется обычным томом, но диспетчер томов оптимизирует хранение и выборку данных, распределяя их между физическими дисками.
Данные равномерно распределяются между дисками, а поскольку к данным на разных дисках можно обращаться одновременно, быстродействие ввода-вывода часто возрастает.
Задача повышения надежности хранения данных не ставится.
Логическая нумерация секторов в чередующемся томе
Зеркальные тома
В зеркальном томе содержимое раздела на одном диске дублируется в разделе равного размера на другом диске. Другое название RAID-1.
Зеркальный том
Когда программа что-то пишет на диск С:, диспетчер томов пишет те же данные в идентичный участок зеркального раздела.
Если первый диск окажется поврежденным, то диспетчер автоматически обратится за данными к зеркальному разделу.
Быстродействие операций чтения возрастает, т.к. диспетчер распределяет их между томами.
Хотя запись приходится вести на два диска, но из-за асинхронности операций записи быстродействие записи почти не снижается.
Тома RAID-5
Том RAID-5 – это отказоустойчивый вариант обычного чередующегося тома. Том также называют чередующимся томом с записью четности (striped volumes with parity).
Информация о четности для чередующейся области 1 хранится на диске 1. Она представляет собой побайтовую логическую сумму (XOR) чередующихся областей 1 дисков 2 и 3.
Информация о четности для чередующейся области 2 хранится на диске 2.
Информация о четности для чередующейся области 3 хранится на диске 3.
Чередование областей четности между дисками оптимизирует операции ввода-вывода.
Когда данные записываются на какой-нибудь из дисков, байты четности должны быть пересчитаны и перезаписаны.
Если бы информация о четности хранилась на одном диске, то к нему все время шли бы обращения.
При сбое диска 1 содержимое его областей 2 и 5 вычисляется побайтовым логическим сложением соответствующих чередующихся областей на диске 3 с областями четности на диске 2.
Содержимое чередующихся областей 3 и 6 определяется побайтовым сложением соответствующих областей на диске 2 с областями четности на диске 3.
Для организации тома требуется, по крайней мере, три диска.
Том RAID-5