stringtranslate.com

Расширенная загрузочная запись

Расширенная загрузочная запись ( EBR ), [1] или расширенная загрузочная запись раздела ( EPBR ), [примечание 1] — это дескриптор логического раздела в общей системе разметки дисков DOS. В этой системе, когда одна (и только одна) запись раздела в главной загрузочной записи (MBR) обозначена как расширенный раздел , тогда этот раздел можно разделить на несколько логических разделов. Фактическая структура этого расширенного раздела описывается одним или несколькими EBR, расположенными внутри расширенного раздела. Первый (а иногда и единственный) EBR всегда будет расположен в самом первом секторе расширенного раздела.

В отличие от основных разделов, которые описываются одной таблицей разделов в MBR и, следовательно, ограничены в количестве, каждый EBR предшествует описанному им логическому разделу. [примечание 2] Если за ним следует другой логический раздел, то первый EBR будет содержать запись, указывающую на следующий EBR; таким образом, несколько EBR образуют связанный список . [примечание 3] Это означает, что количество логических дисков, которые могут быть сформированы в расширенном разделе, ограничено только объемом доступного дискового пространства в данном расширенном разделе. [примечание 4]

В то время как в версиях Windows до XP логические разделы внутри расширенного раздела были выровнены в соответствии с соглашениями, называемыми «геометрией диска» или «CHS» , начиная с Windows Vista они выравниваются по границе в 1 МБ. Из-за этой разницы в выравнивании Диспетчер логических дисков XP (Управление дисками) может удалить эти расширенные разделы без предупреждения. [2]

Структура и ценности EBR

EBR имеют по существу ту же структуру, что и MBR; за исключением того, что предполагается использовать только первые две записи таблицы разделов, помимо наличия обязательной подписи загрузочной записи (или магического числа ) 0xAA55 в конце сектора. [1] Эта 2-байтовая подпись отображается в дисковом редакторе сначала как 0x55 , а затем как 0xAA , поскольку IBM-совместимые ПК хранят шестнадцатеричные слова в порядке с прямым порядком байтов (см. таблицу ниже).

Структуры

IBM Boot Manager (входит в состав операционных систем OS/2 и некоторых ранних версий Partition Magic ) добавляет по крайней мере одну 9-байтовую запись (начиная со смещения 0x18A ) в каждый сектор EBR. Запись состоит из байта значения флага (указывающего, находится ли раздел в меню IBM Boot Manager), за которым следует 8-байтовая строка ASCII, представляющая собой имя, которое будет использоваться в меню. Если раздел не включен в меню загрузки (например, разделы только с данными), байт флага равен нулю; в этом случае следующее 8-байтовое поле может содержать ASCII-представление номера начального сектора этого раздела (в шестнадцатеричном формате).

Тип расширенного раздела — 0x05 ( адресация CHS ) или 0x0F ( адресация LBA ). [4] DR DOS 6.0 и выше поддерживают защищенные расширенные разделы с использованием 0xC5 , которые невидимы для других операционных систем. Поскольку версии DR-DOS без поддержки LBA, включая 7.03, не распознают тип раздела 0x0F, а другие операционные системы не распознают тип 0xC5 , это также можно использовать для занятия места до первых 8 ГБ диска. для использования под DR-DOS (для логических дисков в защищенных или незащищенных разделах) и по-прежнему используйте 0x0F для выделения оставшейся части диска для операционных систем с поддержкой LBA неконфликтным способом. Аналогично, Linux поддерживает концепцию второй расширенной цепочки разделов с типом 0x85 — этот тип скрыт (неизвестен) для других операционных систем, поддерживающих только одну цепочку. [5] Другие расширенные типы разделов, которые могут содержать EBR, включают намеренно скрытые типы 0x15 , 0x1F , 0x91 и 0x9B , типы с ограниченным доступом 0x5E и 0x5F , а также защищенные типы 0xCF и 0xD5 . Однако они должны рассматриваться как частные по отношению к операционным системам и поддерживающим их инструментам и не должны монтироваться иначе.

Адреса CHS раздела трудно интерпретировать без знания геометрии (виртуального) диска, поскольку преобразования CHS в LBA основаны на количестве головок и количестве секторов на дорожке. Однако заданный начальный адрес LBA и заданный размер раздела в секторах позволяют рассчитать геометрию диска, соответствующую заданным адресам CHS, где это вообще возможно. Адресация CHS с 24 битами всегда использует 6 бит для 63 секторов на дорожку (1...63), а доступ к диску INT 13h обычно использует 8 бит для 256 головок (0...255), оставляя 10 бит для до 1024 цилиндров (0...1023). Адреса ATA CHS всегда используют 4 бита для 16 головок (0...15), это оставляет 14 бит для 16 383 цилиндров ( {{{1}}} ) в преобразованиях 24-битных адресов CHS ATA-5. [6]

Ценности

Ниже приведены общие правила , которые применяются только к значениям, найденным в 4-байтовых полях записей таблицы разделов EBR (см. таблицы выше). Эти значения зависят от инструментов разбиения, используемых для их создания или изменения, и фактически большинство операционных систем, использующих расширенную схему разбиения (включая Microsoft MS-DOS, Windows и Linux), игнорируют значение «размера раздела» в записи, которые указывают на другой сектор EBR. Единственным исключением является то, что значение должно быть равно единице или больше для операционных систем Linux.

Первая запись таблицы разделов EBR указывает на логический раздел, принадлежащий этому EBR:

  • Начальный сектор = относительное смещение между этим сектором EBR и первым сектором логического раздела.
Примечание. Часто это одно и то же значение для каждого EBR на одном жестком диске; обычно 63 для Windows XP или старше.
  • Количество секторов = общее количество секторов в этом логическом разделе.
Примечание. Любые неиспользуемые сектора между EBR и логическим диском не считаются частью логического диска. [1]

Вторая запись таблицы разделов EBR будет содержать нулевые байты, если это последняя запись EBR в расширенном разделе; в противном случае он указывает на следующий EBR в цепочке EBR.

другими словами, EBR должен иметь допустимый тип раздела, точно так же, как раздел должен иметь допустимый тип раздела.
  • Начальный сектор = относительный адрес следующего EBR в расширенном разделе.
другими словами: Начальный сектор = адрес LBA следующего EBR минус адрес LBA первого EBR расширенного раздела.
  • Количество секторов = общее количество секторов для следующего логического раздела, но отсчет начинается со следующего сектора EBR.
Примечание. В отличие от первой записи в таблице разделов EBR, это количество секторов включает в себя сектор EBR следующего логического раздела вместе с другими секторами на его неиспользуемой в противном случае дорожке . (Сравните диаграммы 1 и 2 ниже.)

Примечания:
Приведенные выше диаграммы не в масштабе: тонкие белые линии между каждым «EBR» и его логическим «разделом» представляют собой оставшуюся часть неиспользуемой области , обычно длиной 63 сектора [примечание 2] ; включая единственный сектор EBR (показан в сильно преувеличенном размере).

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

Показанное выше чередование EBR и разделов является типичным, но не обязательным. Разрешено иметь два или более последовательных EBR, за которыми следуют две или более областей данных раздела.

Именование

Linux и подобные операционные системы обозначают жесткие диски IDE/dev/hda как первый жесткий диск, /dev/hdbвторой жесткий диск и так далее. Аналогично SCSI , а в более поздних ядрах жесткие диски IDE и SATA идентифицируются как /dev/sdaпервый диск и т. д.

До четырех разделов, определенных в основной загрузочной записи, обозначаются как /dev/hda1... /dev/hda4для /dev/hda. Пятый раздел в этой схеме, например, /dev/hda5соответствует первому логическому диску . Тогда шестой раздел /dev/hda6будет соответствовать второму логическому диску , иными словами, контейнеры расширенного раздела не учитываются. Только самый внешний расширенный раздел, определенный в MBR (один из /dev/hda1... /dev/hda4), имеет имя в этой схеме. [7]

Примеры

Это расширенный раздел с 6000 секторами и 3 логическими разделами.
Примечание. Ни крошечный расширенный раздел размером всего 3 МБ , ни жесткий диск с 20 секторами на дорожку не являются реалистичными, но эти значения были выбраны, чтобы сделать этот пример более читабельным.

Снимок

Следующий вывод инструмента командной строки [ который? ] показывает структуру диска с двумя логическими дисками. Детали разделов FAT и NTFS удалены, строка с пометкой Linux соответствует /dev/hda6расширенной файловой системе . Начало /dev/hda5показывает, что задействованные операционные системы ПК DOS 7 , Windows NT и Debian не настаивают на каком-либо расширенном выравнивании разделов с пробелом:

\\.\PHYSICALDRIVE0 (при условии, что геометрия CHS 99999 255 63) идентификатор. [3189-3188] MBR CHS 0 0 1 в 0, конец 0 0 1, размер 1неиспользуемый CHS 0 0 2 в 1, конец 0 0 63, размер 621:*06: CHS 0 1 1 в 63, конец 260 254 63, размер 4192902 bigFAT2:05: CHS 261 0 1 по номеру 4192965, конец 757 254 63, размер 7984305 => EXT3:17: CHS 758 0 1 по адресу 12177270, конец 1522 254 63, размер 12289725 NTFS4:1C:CHS 1523 0 1 по номеру 24466995, конец 1825 254 63, размер 4867695 FAT32 (расширенное смещение 4192965) всего 29334690=> EXT CHS 261 0 1 в 0, конец 261 0 1, размер 15:06: CHS 261 0 2 в 1, конец 384 254 63, размер 1992059 bigFAT6:05: CHS 385 0 1 по номеру 1992060, конец 757 254 63, размер 5992245 => EXT (расширенное смещение 6185025) всего 7984305=> EXT CHS 385 0 1 в 0, конец 385 0 1, размер 1неиспользованный CHS 385 0 2 в 1, конец 385 0 63, размер 626:83: CHS 385 1 1 в 63, конец 757 254 63, размер 5992182 Linux7:00: CHS 0 0 0 в 0, конец 0 0 0, размер 0 не используется всего 5992245bigFAT CHS 0 1 1 в 63, конец 260 254 63, размер 4192902ПК DOS 7 (размер кластера 64, номер 65506) всего 4192902 NTFS CHS 758 0 1 по адресу 12177270, конец 1522 254 63, размер 12289725[1C81-013D] (размер кластера 8, номер 1536215) всего 12289725 FAT32 CHS 1523 0 1 по номеру 24466995, конец 1825 254 63, размер 4867695[C417-9E22] (размер кластера 8, номер 607271) всего 4867695bigFAT CHS 261 0 2 по номеру 4192966, конец 384 254 63, размер 1992059FAT SWAP (размер кластера 32, номер 62236), всего 1992059

Другой пример см. в «Linux Partition HOWTO» . [8]

Сноски

  1. ^ Этот термин используется диагностическими программами PowerQuest (теперь Symantec ), такими как утилита PartitionInfo (входящая в состав Partition Magic ), когда отображается расширенная информация о разделах.
  2. ^ ab EBR расположен в самом первом секторе неиспользуемой в противном случае области , которая равна количеству секторов на дорожке; обычно 63 сектора. В этом отношении каждый логический раздел имитирует структуру жесткого диска для его первого основного раздела, поскольку MBR расположена в самом первом секторе диска, первом секторе дорожки 0 (обычно за которым следуют 62 неиспользуемых сектора) и затем загрузочный сектор его первого основного раздела.
  3. ^ Таким образом, любая операционная система или служебная программа, которая должна иметь доступ ко всем разделам логического диска или перечислять их, должна следовать этой цепочке записей до тех пор, пока не будет прочитан последний EBR, содержащий только одну запись.
  4. ^ В большинстве операционных систем DOS и более ранних версиях Windows количество логических дисков в расширенном разделе было ограничено до 23, поскольку программа FDISK не могла создавать больше дисков, чем она могла назначить букву диска; таким образом, если предположить, что C: является основным диском, буквы дисков DOS от D: до Z: допускают только 23 дополнительных диска. Этого ограничения не существует в DR-DOS FDISK, поскольку он не связывает разделы с буквами дисков (за исключением основных разделов). Расширенные функции, такие как защищенные или сжатые тома и поддержка нескольких платформ, приводят к более сложным правилам назначения букв дисков, что делает непрактичным или даже вводящим в заблуждение сопоставление букв дисков с разделами внутри FDISK. Кроме того, тот факт, что DR-DOS FDISK не только разбивает на разделы, но и форматирует вновь созданные разделы, делает менее важным знание соответствующей буквы диска. Кроме того, Novell DOS 7 и выше официально поддерживает до 32 томов с помощью директивы LASTDRIVE =32 CONFIG.SYS . В Windows NT и более поздних версиях можно создать неограниченное количество логических разделов с помощью расширения управления компьютером и управления дисками; хотя на практике пользователи редко создавали более 23, поскольку оболочка Windows NT (пользовательский интерфейс) по-прежнему ограничивала доступ только к тем дискам с буквами дисков от A: до Z:. Более новые версии Windows поддерживают Unix-подобное монтирование разделов по путям в другой файловой системе вместо буквы, а также допускают пути в стиле UNC, такие как \\?\Volume{ uuid }\ .

Смотрите также

Рекомендации

  1. ^ abc «Концепции дисков и устранение неполадок». Технический обзор веб-служб и служб приложений Windows 2000 . Майкрософт Технет. 2000 . Проверено 19 июля 2011 г.
  2. ^ «Раздел, на котором установлена ​​Windows Vista, может исчезнуть, если вы используете Windows XP для создания раздела на компьютере, на котором установлены как Windows XP, так и Windows Vista». Поддержка Майкрософт . 02.12.2007 . Проверено 29 августа 2015 г.
  3. ^ ab «Устранение неполадок с дисками и файловыми системами». Ресурсный комплект Windows XP . Microsoft TechNet . 03.11.2005 . Проверено 15 сентября 2011 г.
  4. ^ ab Андрис Э. Брауэр (2011). «Список идентификаторов разделов для ПК» . Проверено 19 июля 2011 г. [0x05 s]поддерживает не более 8,4 ГБ дисков: с типом 05 DOS/Windows не будет использовать расширенный вызов BIOS, даже если он доступен. См. тип 0f ниже. Использование типа 05 для расширенных разделов размером более 8 ГБ может привести к повреждению данных в MSDOS.
  5. ^ Андрис Брауэр (2004). «Расширенные и логические разделы». Большой диск HOWTO . Проверено 19 июля 2011 г.
  6. ^ «АТА-5» (PDF) . Т13/1321Д . Технический комитет INCITS Интерфейсы хранения данных T10 SCSI. 2000. Архивировано из оригинала (PDF) 28 июля 2011 г. Проверено 30 июля 2011 г.
  7. ^ Юрген Хаас. «Расширенные разделы». linux.about.com . Архивировано из оригинала 10 мая 2016 г. Проверено 19 июля 2011 г.
  8. ^ Энтони Лиссо (2005). «Разбиение с помощью fdisk». HOWTO по разделам Linux, версия 3.5 . Проверено 19 июля 2011 г.