Просмотр таблицы разбиения дисков Partition table (1086664)
Текст из файла
ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ
ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ
ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ
«МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ ИНСТИТУТ
РАДИОТЕХНИКИ, ЭЛЕКТРОНИКИ И АВТОМАТИКИ
(ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ)»
ВЕЧЕРНИЙ ФАКУЛЬТЕТ
АВТОМАТИКИ И ВЫЧИСЛИТЕЛЬНОЙ ТЕХНИКИ
КАФЕДРА ВЫЧИСЛИТЕЛЬНОЙ ТЕХНИКИ
ЛАБОРАТОРНАЯ РАБОТА
(системное программное обеспечение)
ТЕМА: Просмотр таблицы разбиения дисков Partition table
Выполнила: студентка группы
ВССУ-8н-06 Мордвинцева М.В.
Москва 2010
Таблица разделов, в которой хранится информация о распределении разделов жесткого диска (Partition table), является частью загрузочной записи (Master boot record), расположенной в первом физическом секторе диска.
Непосредственно под таблицу разделов обычно отводится 64 байта из расчета шестнадцати байт на один раздел. Таким образом, в Partition table может быть создано четыре раздела.
Загрузка операционной системы начинается со считывания BIOS первого сектора жесткого диска и размещения Master boot record по адресу 0000:7С00h с последующей передачей ей управления. В начале Master boot record расположен машинный код загрузчика, а далее следует таблица разделов, описывающая схему разбиения логических дисков.
Загрузчик, анализируя таблицу разбиения, находит в ней нужный логический диск, читает его первый загрузочный сектор, после чего передает ему управление.
В общем случае Master boot record жесткого диска выглядит так:
Смещение | Размер | Назначение |
000h | Переменный | Код загрузчика |
1BBh | 4h | Идентификатор диска |
1BEh | 10h | Раздел 1 |
1CEh | 10h | Раздел 2 |
1DEh | 10h | Раздел 3 |
1EEh | 10h | Раздел 4 |
1FEh | 0x2 | Признак конца Master boot record, сигнатура 55h AAh |
Для просмотра таблица разбиения диска используем программу DM Disk Editor and Data Recovery
После запуска программы на экране открывается следующее диалоговое окно:
В данном окне можно выбрать один из имеющихся на компьютере дисков физических или логических. Выбор между физическим и логическим дисками осуществляется путем установки напротив соответствующей позиции метки в правой стороне окна «Выбрать устройство/диск».
После выбора первого физического диска Physical Drive 0 открывается окно «Разделы», в котором можно выбрать нужный нам раздел жесткого диска (представлены основной, с действующей операционной системой, раздел и дополнительные в виде логических дисков). Так как нам нужно посмотреть таблицу разбиения данного диска, то в окне программы выберем пункт «Таблица» основного раздела диска, щелкнув по ней левой кнопкой мыши.
Открывшаяся в новом окне таблица разбиения диска содержит следующую информацию: количество строк, имеющих ненулевые значения, в ней отражается количество существующих разделов (в данном случае их два), правый столбик указывает на размеры данных разделов. Поле «Число секторов» указывает число секторов диска, отведенных под раздел (занимает в поле записи 4 байта).
Относительное смещение показывает, на сколько секторов от начала диска смещен данный раздел (у байта). Адрес раздела в формате CHS (Cylinder-Head-Sector) расположен в следующих (четвертом и пятом) столбике таблицы. Здесь указываются интервалы номеров цилиндров, головок и секторов, задействованных в записи раздела (3 байта начальный и 3 байта конечный адрес в записи). В следующем столбце располагаются флаги загрузки разделов (80h-активный раздел, 00h – обычный).
Флаг загрузки располагается в одном байте в записи таблицы. В седьмом столбце указана информация об использующихся файловых системах: в данном случае основной раздел имеет файловую систему NTFS и адреса начала-конца раздела в формате CHS (на это указывает 07h в восьмом столбце), а также имеется расширенная таблица разделов со своей Master boot record ( на что указывает надпись 0Fh в восьмом столбце).
Расширенная таблица нужна для указания дополнительных логических дисков на данном физическом.
Так же в нижней строке окна «Секторы» расположена строка, показывающая зону адресов, занимаемую строкой таблицы.
Чтобы посмотреть таблицу в шестнадцатеричном режиме перейдем на вкладку «Вид» в основном окне программы и выберем команду «Шестнадцатеричный».
Таблица разбиения в шестнадцатеричном формате:
Главная загрузочная запись (англ. master boot record, MBR) — это код и данные, необходимые для загрузки операционной системы (ОС), и расположенные в первых физических секторах (чаще всего в самом первом) на жёстком диске или другом устройстве хранения информации. MBR содержит небольшой фрагмент исполняемого кода, таблицу разделов (partition table) и специальную сигнатуру.
Цель MBR — ещё не загрузка ОС, а всего лишь выбор, «с какого раздела жёсткого диска следует загружать ОС». На стадии MBR происходит выбор раздела диска и ничего более. Загрузка самой ОС происходит на более поздних этапах.
В процессе запуска компьютера после окончания начального теста (Power On Self Test, POST) MBR загружается базовой системой ввода-вывода (BIOS) в оперативную память (в компьютерах архитектуры IBM PC обычно с адреса 0000:7c00) и ему передаётся управление (обычно командой long jump).
Роль и место MBR в загрузке компьютера (для архитектуры x86)
В процессе загрузки компьютера x86 вначале всегда отрабатывается BIOS. На этой стадии кроме тестирования и активации «железа», происходит также и выбор устройства, с которого будет происходить дальнейшая загрузка. Это может быть дискета, жёсткий диск, сетевой ресурс, встроенное ПЗУ или любое иное устройство. (Алгоритм выбора загрузочного устройства может быть различным и зависит от реализации BIOS.) После выбора загрузочного устройства, управление всей дальнейшей загрузкой BIOS полностью передаёт этому устройству.
В случае если устройство имеет только один раздел (как, например, дискета или сетевая загрузка), то выбор однозначен, и загрузка продолжается сразу с этого устройства. Однако, если устройство содержит несколько разделов, каждый из которых потенциально может быть загрузочным (как, например, в случае жестких дисков), то возникает неопределённость: с какого именно раздела производить загрузку?
Для разрешения неоднозначности по выбору раздела было предложено вынести этот вопрос из ведения BIOS и передать этот выбор самому устройству. Возникла идея использовать для этого небольшую программу, записанную на самом носителе, которая и осуществляла бы данный выбор. Так появилась концепция MBR.
Таким образом, потенциальное наличие нескольких загрузочных разделов, среди которых необходимо осуществить выбор — это ключевой момент в необходимости появления и отработки MBR. Для устройств с единственным (или однозначно заданным) загрузочным разделом концепция MBR лишена смысла и не используется.
Развитие MBR
Иногда в MBR кроме основной функции (выбора раздела) включаются также и другие функции, например, авторизация. Но это уже расширение и дополнение к основной функции и задаче MBR. Такие системы не получили широкого распространения.
Другие (не x86) системы
В связи с тем, что на других системах применяются иные архитектурные решения (начиная от активации железа и заканчивая загрузкой ОС), то концепция MBR может быть к ним не применима.
Стандартизация MBR
Утвержденного стандарта на структуру MBR не существует, однако, есть «сложившиеся традиции», по сути, «стандарт де-факто», которого придерживаются большинство MBR от разных производителей.
Иные форматы MBR
Загрузчики, отличные от стандартных Windows-загрузчиков, могут использовать всё пространство между MBR и первым разделом (~32 кб) для собственных целей. В таких случаях под MBR понимают весь загрузочный код, а для выделения именно первых 512 байт говорят, что они расположены в MBS — Master Boot Sector — главном загрузочном секторе. Для операционных систем Microsoft понятия MBR и MBS совпадают, так как вся MBR содержится в MBS, хотя это не совсем правильно, так как под MBR подразумевают данные, а под MBS — физический сектор.
MBR от Microsoft (MS DOS и MS Windows)
Структура MBR
Структура MBR от Microsoft занимает один сектор (512 байт):
-
область кода и служебных данных (446 байт)
-
область partition table (4 записи по 16 байт)
-
Сигнатура 55AAh (2 байта)
Содержание «Области кода и служебных данных» зависит от версии DOS / Windows, но функции остаются те же — поиск, загрузка и запуск нужного загрузочного сектора.
Алгоритм работы кода MBR от Microsoft
BIOS (до MBR)
-
BIOS проводит начальную инициализацию оборудования («железа»)
-
BIOS определяет, с какого устройства производить дальнейшую загрузку: дискета, флеш-накопитель, жёсткий диск и т. д... (выбор устройства зависит от версии и от настроек BIOS)
-
…. [в данном описании рассматривается только случай загрузки с жесткого диска..]
-
-
BIOS считывает один сектор (512 байт), который находится по адресу: «цилиндр 0, головка 0, сектор 1», и помещает его в область памяти по адресу 0000:7c00
-
BIOS проверяет, что этот сектор оканчивается сигнатурой 55ААh
-
…. [если это не так, то управление возвращается обратно в BIOS]
-
-
BIOS передаёт управление по адресу 0000:7c00 (то есть сектору MBR)
Выбор загрузочного раздела и проверка целостности MBR:
-
MBR копирует себя с адреса 0000:7c00 на адрес 0000:0600 (освобождая место для будущей загрузки уже собственно загрузчика ОС)
-
MBR просматривает по очереди все записи о разделах и ищет первую запись об «активном» (== «загрузочном») разделе (то есть ищет раздел, отмеченный как 80h)
-
В случае успеха (раздел, помеченный как 80h — найден) MBR запоминает номер этого раздела
-
…. [если просмотрены все 4 записи и не найден раздел, помеченный как 80h, то вызывается INT 18h. Это возвращает управление обратно в BIOS, что может приводить либо к загрузке BASIC, либо к повторной попытке загрузить систему с диска, либо к перезагрузке компьютера — в зависимости от версии и реализации BIOS]
-
MBR просматривает все оставшиеся записи и проверяет, что это единственный активный раздел (что больше разделов, помеченных 80h, на данном физическом диске не существует)
-
…. [если находятся другие разделы, помеченные 80h, то MBR выводит сообщение об ошибке (обычно это что-то типа «Invalid partition table»), после чего система подвисает в бесконечном цикле, из которого можно выйти только перезагрузкой компьютера]
-
MBR проверяет, что в данном поле для всех 4-х разделов нет иных значений кроме «00h» и «80h»
-
…. [если находятся разделы, помеченные иным значением, чем 00h или 80h, то MBR выводит сообщение об ошибке («Invalid partition table»), система подвисает, требуется перезагрузка компьютера]
-
На этом заканчивается проверка MBR и начинается подготовка к загрузке ОС:
-
MBR считывает первый сектор логического диска, помеченного как «загрузочный» и помещает этот сектор по адресу 0000:7c00
-
MBR проверяет, что данный сектор заканчивается сигнатурой 55ААh
-
…. [если этой сигнатуры в этом месте нет, то выводится сообщение «Missing operating system» и компьютер подвисает, требуется перезагрузка]
-
MBR передает управление по адресу 0000:7c00 (то есть загрузочному сектору выбранного логического диска)
-
Загрузочный сектор логического диска (после MBR)
-
Загрузочный сектор зависит от типа файловой системы на логическом диске и содержит код, выполняющий нахождение и загрузку собственно операционной системы на данном типе файловой системы.
Код загрузчика
После завершения процедуры POST в ОЗУ по адресу 0x0000:0x7c00 записывается код загрузчика после чего ему передается управление. Задача загрузчика проанализировать таблицу разделов жёсткого диска, а затем либо передать управление загрузочному коду активного раздела, либо загрузить в память ядро операционной системы и передать ему управление.
Таблица разделов
В таблице разделов хранится информация о типе раздела и его расположении на жёстком диске.
Сигнатура
Последние два байта MBR называются сигнатурой. Значение этих байтов должно быть 55h AAh. В случае, если это не так, запись считается некорректной.
Признак активности разделов
Признак активности раздела — признак обозначающий возможность загрузки операционной системы с данного раздела. Для стандартных загрузчиков может принимать следующие значения:
-
80h — раздел является активным
-
00h — раздел является неактивным
-
Другие значения являются ошибочными и игнорируются.
Начало раздела / Конец раздела
Координаты начала и конца раздела в CHS (Цилиндр, головка, сектор) формате. Следует учитывать, что CHS не позволяет выполнять адресацию более чем к 7,8 Гб данных. Для адресации к разделам находящимся за пределами 7,8 Гб используется LBA адресация.
Код типа раздела
Код файловой системы используемой на данном разделе. В случае расширенного раздела принимает значение 05h. В случае если используется расширенный раздел, то координаты начала раздела указывают на EBR.
Формат указателей аналогичен MBR.
Смещение первого сектора
Координаты начала раздела в LBA координатах. Позволяет выполнять адресацию до 2 Тб данных.
Восстановление MBR
Если каким-либо образом была потеряна MBR, то её можно восстановить специальными утилитами (например TestDisk), которая просмотрит весь носитель информации и создаст таблицу разделов.
Характеристики
Тип файла документ
Документы такого типа открываются такими программами, как Microsoft Office Word на компьютерах Windows, Apple Pages на компьютерах Mac, Open Office - бесплатная альтернатива на различных платформах, в том числе Linux. Наиболее простым и современным решением будут Google документы, так как открываются онлайн без скачивания прямо в браузере на любой платформе. Существуют российские качественные аналоги, например от Яндекса.
Будьте внимательны на мобильных устройствах, так как там используются упрощённый функционал даже в официальном приложении от Microsoft, поэтому для просмотра скачивайте PDF-версию. А если нужно редактировать файл, то используйте оригинальный файл.
Файлы такого типа обычно разбиты на страницы, а текст может быть форматированным (жирный, курсив, выбор шрифта, таблицы и т.п.), а также в него можно добавлять изображения. Формат идеально подходит для рефератов, докладов и РПЗ курсовых проектов, которые необходимо распечатать. Кстати перед печатью также сохраняйте файл в PDF, так как принтер может начудить со шрифтами.