Разделы
В начале жесткого диска, в его самом первом секторе самой первой дорожки располагается небольшая программа — так называемая "главная загрузочная запись" Master Boot Record. В том же секторе помещается Корневая Таблица Разделов ("Root Partition Table"), в которой располагаются сведения о разбиении всего физического пространства жесткого диска на разделы — участки диска с определенной файловой системой на них.
Раздел — это кольцевидная зона поверхности жесткого диска, находящаяся между двумя определенными цилиндрами. В Корневой Таблице Разделов указывается для каждого раздела, с какого сектора какой дорожки какого цилиндра он начинается и на каких заканчивается, сколько в нем всего секторов, какой тип файловой системы на нем установлен и является ли данный логический диск в данный момент загрузочным — то есть должна ли операционная система загружаться именно с него. Согласно стандартам IBM PC, всего в Корневой Таблице Разделов может быть описано не более четырех различных разделов, так как ее размер не должен превышать 512 байт вместе с Master Boot Record.
Внутренняя структура раздела определяется той файловой системой, которая на нем создана. Однако в начале каждого раздела обязательно располагается Загрузочная запись раздела ("Boot Record") — небольшая программа, выполняющая начальную загрузку операционной системы. Один из разделов, описанных в Корневой Таблице Разделов, помечается как «загрузочный», или «активный», и при загрузке компьютера Master Boot Record считывает Корневую Таблицу разделов, а затем считывает и запускает Boot Record того раздела, который помечен в этой таблице как загрузочный. (Сама Master Boot Record запускается BIOS'ом, запрограммированным считывать с диска и запускать на исполнение содержимое его первого сектора.)
С понятием «раздела» тесно связано понятие "логического диска", использующееся в операционных системах MS DOS и Windows. "Логический диск" — это некоторая часть жесткого диска, представляемая операционной системе как отдельное физическое устройство — как отдельный жесткий диск. При наличии нескольких логических дисков проще организовывать хранение данных, в частности, можно разнести системные файлы и данные пользователя.
Изначально, согласно стандартам, принятым при разработке MS-DOS и впоследствии унаследованными всеми операционными системами типа Windows, в каждом разделе мог быть выделен лишь один логический диск. Однако для увеличения числа логических дисков, могущих быть выделенными на винчестере, в те же стандарты была добавлена возможность создания так называемого Расширенного раздела DOS.
Структура этого Расширенного раздела DOS такова. В его первом секторе расположена Таблица Разделов Расширенного раздела DOS с точно такой же структурой, как и Корневая Таблица Разделов. Только описываются в ней координаты начала и конца первого логического диска в этом Расширенном разделе (точно так же, как и каждого раздела в Master Boot Record), его тип файловой системы, а также координаты начала и конца зоны, занимаемой остальными логическими дисками, если они есть. Соответственно в первом секторе зоны остальных логических дисков находится Таблица Разделов с информацией о втором логическом диске, расположенном в Расширенном разделе Dos, и зоне, занимаемой следующими за ним дисками. В итоге получается как бы ряд вложенных друг в друга, как матрешки, разделов, в каждом из которых имеется по Таблице Разделов, описывающей координаты одного логического диска и зоны, занимаемой следующими дисками. Такая структура может показаться сложной, но только она дает возможность совместить большое количество логических устройств и ограниченный размер Таблиц Разделов.
Все изложенное проиллюстрировано на рис. 8.6.
Рис. 8.6. Структура жесткого диска, на котором в MS-DOS или Windows выделено несколько логических дисков.
Операционные системы MS-DOS и Windows допускают создание на жестком диске лишь одного Расширенного раздела DOS. Остальные разделы при этом могут содержать не более одного логического диска (то есть границы этих дисков попросту совпадают с границами разделов) и именуются Первичными разделами DOS.
В начале каждого логического диска размещается его Загрузочная запись ("Boot Record"), содержащая в себе информацию о размерах кластера на данном диске, а также о местах начала и конца обеих копий FAT, если на этом диске используется именно такая файловая система. Если логический диск является загрузочным (а это возможно в том случае, если он расположен в Первичном разделе DOS, помеченном в Корневой Таблице Разделов как активный, — в этом случае Master Boot Record загрузит Boot Record именно этого диска в память и запустит ее), то в его Boot Record содержится также и программа, обеспечивающая считывание файлов операционной системы, отвечающих за ее начальный запуск. Эта программа может считывать лишь определенные секторы диска (обычно, хоть и не обязательно, находящиеся сразу за корневым каталогом), поэтому и файлы начального запуска операционной системы обязательно должны располагаться в местах, известных BootRecord. [21] Именно поэтому перенос операционной системы Dos выполняется командой sys, а не простым копированием — чтобы при этом в Boot Record была помещена информация о размещении файлов с программами начальной загрузки системы.
Читать дальше