Принципиально никто и ничто не мешает сконфигурировать дисковое пространство на винчестере, как хочется. Примерно так и поступали на заре компьютерной эры. К сожалению, торжество операционной системы MS- DOS на персональных компьютерах привело к тому, что утвердилась схема деления дискового пространства винчестера на 4 основных раздела (диски, логические диски).
Согласно принципам MS-DOS, нулевая дорожка винчестера оказалась зарезервированной для главной загрузочной записи, где расположен загрузчик операционной системы и таблица с информацией об основных разделах (дисках) на винчестере. Причем на нулевой дорожке занят только первый сектор, равный 512 байт. Все остальные сектора, независимо от объема винчестера, не используются. Служебные и пользовательские данные всегда размещаются с первого сектора нулевого цилиндра винчестера.
Существуют программы защиты информации на винчестере, которые используют свободное пространство на нулевой дорожке, но это вызывает сложности при переустановке операционной системы.
Реальная геометрия дискового пространства на современных винчестерах скрыта от пользователя и операционной системы. Контроллер винчестера программно формирует традиционное распределение данных по цилиндрам, секторам и плоскостям.
Когда в компьютер устанавливается второй винчестер, то его дисковое пространство делится аналогично, как было рассмотрено ранее. Названия для обозначения дополнительных разделов выбираются из 26 латинских букв от А до Z.
Основная таблица разделов
Знать, где находится основная таблица разделов и как она организована, всегда полезно, когда спасаешь информацию на винчестере после проблем с вирусами или форматируешь новый винчестер. Последнее, это политика распределения дискового пространства на винчестере (винчестерах), о которой приходится вспоминать, обдумывая, как разумно разделить, например, 100-гигабайтный винчестер на логические диски.
Кстати, Linux тут в общем-то ни при чем, так как вопрос касается скорее того, где будут храниться видеофильмы, музыка, фотографии. Если использовать все дисковое пространство на винчестере под один диск С:, то рано или поздно встанет проблема спасения личного архива при переустановке Windows.
Информация о параметрах четырех основных разделов хранится в главной таблице разделов, которая начинается с адреса IbeH (шестнадцатеричное значение) в загрузочном секторе винчестера. Для каждого раздела в таблице отводится 16 байт, где указаны наиболее важные параметры. А так как разделов всегда четыре, то адреса элементов таблицы разделов начинаются с адресов IbeH, IceH, IdeH и leeH.
Структура одного элемента раздела показана на рис. 2.3. Вначале идет один байт «Флаг загрузки», который говорит о том, является ли данный раздел по умолчанию загрузочным для операционных систем Windows 95/98/Ме и MS-DOS. Фактически, первый раздел всегда содержит значение 80Н, а остальные 0.
Следующие три байта указывают на физические координаты начала раздела. Первый — это номер головки (поверхности) винчестера. Два других байта «закодированы» в формате «6 бит сектор + 10 бит цилиндр».
После информации о начале раздела идет байт с кодом операционной системы (файловой системы), которая расположена на этом разделе. Кодов достаточно много, поэтому они здесь не могут быть все приведены. Например, в MS-DOS код 06Н — это основной раздел или диск С:, а код 05Н — расширенный раздел. Для Windows популярен код 06Н.
Политика деления дискового пространства
Как только появилась операционная система MS-DOS, пользователи регулярно пытаются разделить дисковое пространство на винчестере на четыре раздела. Ведь наличие четырех независимых разделов — это увеличение надежности хранения данных, простота спасения информации при различных бедах.
Когда имеется четыре независимых дисковых раздела, то очень просто можно менять их размеры. Например, увеличить какой-либо раздел для работы с видеофайлами за счет других. Или изменить размер диска С: при переустановке операционной системы. Принцип тут достаточно прост: переносим файлы с изменяемых разделов на другие, а потом размеры «пустых» разделов изменяем.
При работе с логическими дисками в расширенном разделе это тоже возможно, но весьма опасно; конечно, существуют коммерческие программы для проведения данной операции, правда работают они необычайно медленно.
Следует отметить, что попытка изменить установленный корпорацией Microsoft порядок разбиения дискового пространства на винчестере с помощью программы FDISK из комплекта MS-DOS или Windows 9х, всегда оказывается неудачной.
Программа FDISK хотя и показывает наличие на винчестере четырех разделов, даже когда те созданы другими операционными системами, всегда предлагает создать два раздела: диск С: и расширенный раздел, в котором уже можно налепить много-много логических дисков. Если же пользователь продолжает упорствовать в своем желании разделить дисковое пространство на своем винчестере по собственному желанию, то ему уже необходимо искать программу «не от Microsoft». Часто пользуются коммерческой программой PartitionMagic корпорации PowerQuest.
Конечно, можно изменить главную таблицу разделов вручную, но это работа для хороших программистов, которые умеют работать на уровне аппаратных ресурсов, соответственно описывать такой подход не имеет смысла. Для тех же, кто все же получил в свое распоряжение дистрибутив Linux, в следующей главе рассказывается о простых способах корректного деления дискового пространства с помощью программы fdisk (это программа, относящаяся к операционной системе Linux), а также с помощью других аналогичных программ.