Пример логической организации диска

Поясним логическую структуру диска на конкретном примере. Хотя любые современные диски используют метод адресации LBA, мы будем разбирать организацию основанную на методе CSH, так этот метод дает намного более наглядную картину. В качестве примера для разбиения будем рассматривать физический диск со следующими параметрами: цилиндров– 38309, поверхностей (головок) – 16, секторов на дорожке - 255. Несложно подсчитать объем такого диска:

V = CYL*HDS*SPT*512 =

38309 * 16 * 255 * 512 = 80 025 968 640 байт.

Будем организовывать на нашем физическом диске три логических (C:, D:, E:) в пропорции по размеру примерно 10% – 10% – 10%. Пример разбиения этого диска представлен на рисунке …. Соответствующие этому разбиению таблицы разделов и логических дисков отображены в таблице …. Заметим, что таблицы показаны в упрощенном виде для большей наглядности (напоминаем, что полный формат элемента MBR или SMBR представлен в таблице 4).

Схема, иллюстрирующая логическую структуру жесткого диска, т.е. разбиение его на разделы, представлена на рис. 4.

В самом начале физического диска располагается главная загрузочная запись MBR, находящаяся в первом секторе диска — цилиндр 0, головка 0, сектор 1. Внутри MBR располагается таблица разделов. Из четырех элементов находящихся в таблице разделов мы будем использовать только – первичный (Primary) и расширенный (Extened).

Рисунок 4. Логическая организация жесткого диска

Первая запись таблицы разделов описывает первичный раздел. Этот первичный раздел содержит один логический диск – C:. Так как раздел должен начинаться с первого сектора на дорожке, наш логический диск начинается с 1-го сектора, 0-го цилиндра, первой (а не нулевой) поверхности. С первой поверхности этот диск начинается так как первый сектор на нулевой поверхности уже занят – там находится сам MBR. Если это представить наглядно, то MBR будет располагаться на верхней поверхности диска, а первый сектор логического диска буде располагаться на нижней поверхности прямо под ним. Сектора располагающиеся после MBR на нулевой дорожке (с номерами от 2 до 255) остаются не использованными. На рисунке 4 заштрихованная область соответствует всем неиспользуемым секторам.

Таблица 4 Заполнение таблиц разделов жесткого диска (пример)

Тип раздела Признак активного раздела Инф-я о разделе Размер раздела
Начало Конец
H C S H C S
Первичный (Primary) 80h             Около 40%
Расширенный (Extended) 00h            

SMBR 1

Первичный (Primary) 00h             Около 48%
Расширенный (Extended) 00h            

SMBR 2

Первичный (Primary) 00h             Около 12%

Заканчиваться разделы должны на границе цилиндра, поэтому последний сектор логического диска C: будет иметь адрес: цилиндр 15301 (что соответствует примерно 40% всех цилиндров), головка 15 (последняя поверхность диска), сектор 255 (последний сектор на дорожке).

Признак активного раздела в первой записи таблицы разделов отмечен как активный (код 80h), это означает, что операционная система будет загружаться с логического диска C:.

Вторая запись таблицы разделов из MBR описывает расширенный раздел для этого в поле «идентификатор системы» должен находиться код, которому соответствует расширенный вид раздела. Этот раздел начинается сразу же за последним сектором логического диска C:, т.е. адрес первого сектора расширенного раздела будет следующим: цилиндр - 15301, головка - 0, сектор - 1. Расширенный раздел будет занимать все свободные (оставшиеся после выделения логического диска C:) сектора. Это значит, что расширенный раздел заканчивается в самом последнем секторе физического диска: цилиндр - 38309, головка - 15, сектор - 255. Так как из расширенного раздела никакой загрузки быть не может, в поле признака активного раздела во втором элементе таблицы разделов будет записан ноль.

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

Первый элемент этой таблицы задает первичный (Primary) раздел, отведенный под очередной логический диск (D:). Логический диск опять начинается с первого сектора 1-й поверхности, таким образом, между SMBR и разделом опять остаются неиспользуемые сектора, также как между MBR и логическим диском C:. Таким образом, первый сектор второго логического диска будет располагаться по адресу: цилиндр - 15301, головка - 1, сектор - 1. Отведем на второй логический диск 18400 цилиндров (48% от общего объема физического диска). Последний сектор логического диска D: будет иметь адрес: цилиндр - 33700, головка - 15, сектор - 255.

Если логический диск занимает не весь объем расширенного раздела (как в нашем случае), то второй элемент таблицы разделов (находящийся в SMBR) указывает на положение следующего (в нашем случае второго) расширенного раздела. Первым сектором этого раздела будет сектор, следующий за логическим диском D:, его адрес: цилиндр - 33701, головка - 0, сектор - 1. Заканчивается второй расширенный раздел опять в самом последнем секторе физического диска: цилиндр - 38309, головка - 15, сектор - 255. Т.е. расширенные разделы являются вложенными друг в друга; все они располагаются в области, описанной в главной таблице разделов как расширенный раздел. В главной таблице описан лишь один расширенный раздел.

Для второго расширенного раздела применима та же логика, что и для первого. В первом секторе этого раздела находится еще одна вторичная главная загрузочная запись (SMBR2). В SMBR2 опять находится таблица разделов расширенного раздела. Поскольку в этом расширенном разделе должен присутствовать только один логический диск (Е:), в таблице разделов должен находиться только один элемент, описывающий этот диск. В поле «Идентификатор системы» этого элемента будет код для описания первичного раздела. Начальный сектор логического диска Е: будет располагаться в первом подходящем для этого секторе после SMBR2, т.е. адрес начального сектора этого диска определиться так: цилиндр - 33701, головка - 1, сектор - 1. (Между SMBR2 и началом диска опять остается свободное место на нулевой поверхности.)

Так как логический диск Е: занимает все свободное место во втором расширенном разделе, адрес конечного сектора логического диска совпадет с адресом последнего сектора второго расширенного раздела, который в свою очередь совпадает с адресом последнего сектора физического диска (цилиндр - 38309, головка - 15, сектор - 255).


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: