- •Физическая структура магнитного диска
- •Логическая структура магнитного диска
- •Дополнительные сведения
- •Принцип размещения файлов
- •Структура логического диска Введение
- •Логический диск fat12/fat16
- •Логический диск fat32
- •12345678123 Msdos sys (для файла с именем msdos.Sys) file 1 (для файла с именем file.1)
- •Дополнительные сведения
- •Каталожная запись ms-dos
- •Специальные записи
- •Допустимые символы ms-dos
- •Каталожная запись fat32 (Windows 98)
- •Дополнительные сведения
Логическая структура магнитного диска
Логическая структура диска описывает распределение абсолютных физических секторов. Это распределение зависит от того, является ли диск жестким или гибким, а также от количества логических дисков, размещенных на поверхности физического диска.
Нулевой сектор жесткого магнитного диска содержит главную загрузочную запись (MBR - Master Boot Record), предназначенную для старта компьютера. Она содержит первичный загрузчик ОС и таблицу разделов жесткого диска (partition table).
Предполагается, что диск может быть поделен на части, называемые разделами (partition) для лучшей организации файлов и для обеспечения возможности установки нескольких операционных систем. Разделы можно рассматривать как логические диски, разделяющие пространство физического диска.
(Рис. 1)
Каждый из 4-х возможных разделов диска имеет независимую файловую систему. В зависимости от типа раздела, логический диск имеет операционную систему, которая может стартовать компьютер, или является просто логическим диском с данными.
Всего на жесткий диск может быть установлено до 4-х разных операционных систем. Выбор той или иной ОС при старте компьютера происходит по признаку активного раздела, установленному в таблице разделов для соответствующей ОС.
При старте компьютера загрузчик BIOS читает MBR и исполняет ее. Просматривая записи таблицы разделов, MBR определяет, какой из разделов активный, берет из таблицы адрес нулевого сектора этого раздела, загружает его в память и передает ему исполнение. В секторе 0 логического диска выбранного раздела должен находиться начальный загрузчик ОС, расположенной на этом диске.
Таким образом, возникает иерархия загрузчиков: загрузчик MBR - загрузчик ОС активного раздела. Если на диске один раздел, можно исключить загрузчик MBR, разместив логический диск на всей поверхности диска, а в секторе 0 - начальный загрузчик ОС. Такая организация диска присуща, например, дискетам.
Таблица разделов состоит из 4-х записей, называемых дескрипторами разделов. Дескриптор содержит физические адреса первого и последнего сектора раздела, и таблица разделов определяет, таким образом, распределение дискового пространства. Эта информация является чрезвычайно важной для работы с физическим диском.
Структура физического сектора 0 (MBR):
Адрес Назначение 000-1BDh первичный загрузчик MBR 1BE-1CDh Дескриптор раздела 1 1CE-1DDh Дескриптор раздела 2 1DE-1EDh Дескриптор раздела 3 1EE-1FDh Дескриптор раздела 4 1FE-1FFh Признак загрузочной записи AA55h
Структура дескриптора раздела:
Адрес Назначение 00h Признак активности раздела 01h Начальная головка 02h-03h Начальный цилиндр/сектор 04h Тип раздела 05h Конечная головка 06h-07h Конечные цилиндр/сектор 08h-0Bh Начальный сектор раздела относительно начала диска 0Ch-0Fh Размер раздела в секторах
Расположение разделов на диске указывается в таблице разделов одновременно двумя способами: в формате CHR и в формате LBA.
Формат CHR (Cylinder, Head, Sector) является координатным способом адресации и задает физический адрес сектора: цилиндр, поверхность (головку) и сектор начала или конца раздела.
Формат LBA (Logical Block Addressing) является линейным способом адресации и задает логический адрес сектора (порядковый номер).
Недостаток формата CHR - ограничения на максимальные значения цилиндра, головки и сектора.
Для номера головки предусмотрено 8 бит, следовательно, описываемый диск не может иметь более 256 головок. Для номера сектора отводится 6 младших бит двухбайтного слова, следовательно, максимальное число секторов на дорожке не может превышать 63 (а не 64, так как секторы нумеруются с 1). Для номера цилиндра отводятся 10 бит, поэтому максимальное число цилиндров в формате CHR составляет 1024.
Ограничение на число цилиндров в формате CHR имеет неприятные последствия: так как при чтении сектора 0 (загрузочной записи) используется формат CHR, загрузочная запись должна располагаться не далее 1024 цилиндра, следовательно, не каждый раздел можно сделать загружаемым.
Формат CHR работает только с дисками небольшого размера: 1024x256x63 = 16 515 072 сектора = 7.875 Гбайт. Для дисков большего размера используется формат LBA.
Количество цилиндров, головок и секторов, используемое в таблице разделов и репортируемое жестким диском, не совпадает с фактическими количествами цилиндров, головок и секторов. Попробуйте представить себе набор из 128 пластин и сравните его получаемую высоту с полудюймовой высотой винчестера. На самом деле внутри диска находится 1-3 пластины. Этот пример наглядно показывает, как решения, принятые на заре развития компьютерной индустрии, оказывают влияние на ее современное состояние.
Разделы, представляющие собой логические устройства, делятся на загружаемые и незагружаемые. Загружаемый раздел (называемый также основным - primary) может иметь свою загрузочную запись и, соответственно, свою копию ОС. Незагружаемые разделы предназначены для хранения данных. Так как объем дисков постоянно возрастает, необходимость в разделении всего дискового пространства на множество отдельных устройств становится очевидной. Это связано также с необходимостью ограничить размер кластера.
Для того, чтобы поделить физический диск на большое число логических дисков, незагружаемым разделам назначают тип "расширенный" (extended). Extended раздел можно представить как новый физический диск со своей главной загрузочной записью типа MBR.
Запись расширенного раздела называют SMBR (Secondary Master Boot Record). Отличие этой записи заключается в том, что она не имеет загрузчика, а таблица разделов состоит из двух записей: основной раздел и расширенный раздел.
Таким образом, одна запись SMBR определяет один логический диск и, возможно, еще логические диски, образующие иерархию (все последующие логические диски оказываются вложенными друг в друга). Рисунок 2 поясняет использование расширенного раздела. На диске 2 раздела: основной (например, Windows, обозначен как DOS) и расширенный. Расширенный раздел определяет два дополнительных логических диска.
(Рис. 2)
