Жесткий диск изнутри - логическая структура, что такое адресация и разметка

С внутренним устройством жёсткого диска HDD знакомы многие пользователи, включая тех, которым никогда не приходилось вскрывать гермоблок. Благо, это и не нужно, ведь на этот счёт в интернете имеется масса информации. А вот как именно устроена логическая структура диска знают лишь немногие. Физически жёсткий диск HDD представляет собой несколько закрепленных на центральном шпинделе магнитных пластин, имеющих особую «нарезку», именуемую треками.

Информация считывается и записывается на них в виде нулей и единиц, и в этом есть некая аналогия тому, как музыка записывается на старые виниловые пластинки.

Только вот в случае с жёсткими дисками всё намного сложнее. Как компьютер определяет, в каком месте диска лежит какой файл? Каким образом достигается отказоустойчивость, благодаря которой мы можем переустанавливать операционную систему, не затрагивая пользовательские файлы? Это было бы едва возможно, если бы данные не хранились на диске в упорядоченном виде. Тема логической структуры HDD-диска настолько глубока и обширна, что рассмотреть её в рамках одной статьи не представляется возможным, поэтому сегодня мы коснёмся только двух её самых важных аспектов — адресации и разметки.

Адресация жесткого диска

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

Первый механизм адресации, который использовался в ранних моделях жёстких дисков назывался CHS, что расшифровывалось как Cylinder, Head, Sectorцилиндр, головка, сектор. Что такое головка и сектор, надеемся, вам понятно. Под цилиндром же нужно понимать совокупность круговых дорожек одинакового радиуса на всех магнитных поверхностях пластин одного накопителя.

CHS

По сути, CHS это ничто иное, как трёхмерная система координат, где Cylinder это номер дорожки на поверхности диска, Head — номер считывающей головки, а Sector — номер конкретного сектора. Когда компьютеру нужно было прочитать некий файл, он делал запрос в формате CHS, и считывающая головка переходила как раз в нужный сектор, в котором этот файл был записан.

Очевидный минус технологии CHS заключался в поддержке дисков весьма ограниченного объёма, так как на низком уровне под адресацию изначально выделялось немного памяти. Максимальный объём диска с CHS не мог превышать 508 Мб. Поэтому, когда появились более объёмные диски, возникла нужда в новых механизмах адресации. Последующие механизмы адресации были основаны на CHS и представляли собой его расширенную версию.

Настоящим прорывом стал LBA (Logical block addressing), не нуждающийся в учёте геометрии жёсткого диска, вместо этого всем секторам от самого первого (нулевого) до самого последнего присваивался свой порядковый номер, служащий идентификатором. При этом под адресацию выделялось гораздо больше памяти. В общем, максимальный объём жёсткого диска, с которым может работать LBA составляет 128 Пиб, что намного больше объёма любых современных дисков, используемых в персональных компьютерах.

Разметка жёсткого диска

С адресацией всё более-менее ясно, теперь давайте перейдём к другому важному понятию — разметке жёсткого диска. Разметка — это разделение общего пространства диска на логические разделы иначе партиции, которые могут быть видны в операционной системе. Зачем вообще нужно такое разделение? Во-первых, это позволяет разграничивать загрузочные, системные и пользовательские файлы, во-вторых, использовать на каждом из разделов свой тип файловой системы, в-третьих — устанавливать на один ПК несколько разных операционных систем.

Существует две основных схемы разбиения на партиции. Самой распространённой является MBR. Называется она так потому, что в первых физических секторах жёсткого диска этого типа размещается особая область, содержащая загрузочный код и таблицу разделов. Эта область ещё именуется главной загрузочной записью, что на английском языке звучит как master boot record или сокращённо MBR.

MBR

Эта область диска не является ни одним из логических разделов, и она не доступна для просмотра средствами операционной системы. Загрузочный код передаёт управление компьютером системному разделу, а таблица разделов указывает, где именно начинается и заканчивается тот или иной логический раздел. Основной недостаток MBR заключается в том, что отводимая под него область диска является фиксированной, а это значит, что в него можно записать ограниченное количество информации. В свою очередь это становится следствием других ограничений, а именно:

• На MBR-диске нельзя создать более четырёх логических Primary-разделов (ограничение условно снимается посредством создания extended-партиции).
• Каким бы объёмным ни был диск, пользователю будет доступно только 2 Терабайта.

Кроме того, схема MBR не отличается надёжностью. Малейшее повреждение кода в этой области приведёт к невозможности загрузки или другим проблемам, при которых записанная на диск информация перестанет определяться.

Менее распространённой, но зато более новой и надёжной схемой является GPT или GUID Partition Table. Если посмотреть на схематическое изображение GPT-диска, то можно увидеть, что его структура очень похожа на структуру диска MBR, но это сходство весьма условное. Приходящаяся на нулевой сектор область называется Protection MBR, и назначение её несколько иное, чем обычной MBR. Служит она для защиты схемы GPT от перезаписи утилитами, которые не понимают GPT. Если такой утилите «показать» GPT-диск, то благодаря Protection MBR она определит его как MBR-диск, на котором отсутствует свободное пространство. Следовательно, перезаписать она его уже не сможет.

GPT

В будущем, когда MBR уйдёт в прошлое, возможно, в Protection MBR больше не будет надобности, ведь процесс загрузки с GPT-дисков в EFI происходит несколько иначе. Помимо области Protection MBR, на GPT-дисках имеется другая область, именуемая GUID Partition Entries Array. Это аналог Partition Table в MBR, содержащий список всех партиций на диске GPT. В отличие от MBR, он не имеет жёсткой фиксации, поэтому на GPT-диске можно создавать практически неограниченное количество логических разделов. Ограничения тут могут быть только на уровне операционной системы. Например, Windows не может работать с более чем с 128 партициями.

Другим важным отличием GPT-дисков является резервирование загрузочных данных и сведений о таблице разделов. Если в MBR-дисках они хранятся в одном месте — в первых физических секторах, то в дисках с разметкой GPT они могут храниться где-то ещё, но уже в виде копий. Если основные данные окажутся повреждены, механизм GPT восстановит их из бекапа. В MBR же это привело бы к невозможности загрузки компьютера или «потере» разделов, а вместе с ними и записанных данных.

И наконец, разметка GPT позволяет работать с дисками объёмом больше 2 Тб.

Диски 3 Тб и больше будут читаться и в MBR, но доступно пользователю будет только 2 Тб.

На этом пока всё. В следующий раз мы продолжим знакомится с логической структурой жестких дисков. В частности, вы узнаете, чем отличаются обычные диски от динамических, где последние применяются, а также что представляет собой файловая система.

Оцените Статью:

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (4 оценок, среднее: 4,50 из 5)
Загрузка...

3 комментария

  • Статья хорошая, но мне не хватило ответов на несколько вопросов.
    В основном, это вопросы "Почему?"
    - Почему в модели адресации CHS не возможно адресовать более 508 Мб ?
    - Почему в формате MBR только 4 партиции ?
    - Что значит primary партиция, бывают ли другие?
    - Почему для MBR лимит дискового пространства 2 Тб?
    - Какой лимит дискового пространства в формате GPT?

    • — Почему в модели адресации CHS не возможно адресовать более 508 Мб?

      Если быть точными, 504 Мб. Адресация CHS изначально была реализована в BIOS и связана она была с ограничениями самого BIOS, который определял разрядную сетку адресов на 63 сектора, 1024 цилиндра и 255 головок. Только вот конструкция винчестеров тех времен не допускала использования более 16 головок, размер же блока являлся стандартным для всех дисков — 512 байт. Теперь давайте посчитаем: 63 x 1024 x 512 x 16 = 504 Мб. Поэтому, когда производители стали выпускать диски большего объема, от CHS отказались, заменив ее LBA.

      — Почему в формате MBR только 4 партиции?

      Потому-что запись каждого раздела занимает 16 байт, всего же под таблицу разделов в MBR изначально было выделено 64 байта. 64 разделить на 16 получается 4.

      — Что значит primary партиция, бывают ли другие?

      Не уверен, что это именно так, но ранние версии Windows могли быть установлены только на раздел, расположенный в начале физического диска, то есть идущий первым. Отсюда его название — первичный, первый или главный. Помимо primary, существуют и другие типы разделов, например, расширенные, отличающиеся от первичных отсутствием собственной файловой системы.

      — Почему для MBR лимит дискового пространства 2 Тб?

      В модели MBR для представления логических секторов используется максимальное число из 32 битов, следовательно, число самих логических секторов с текущим стандартом 512 байт, которые могут быть использованы MBR будет ограничено.

      — Какой лимит дискового пространства в формате GPT?

      В GPT для представления секторов используется максимальное число уже из 64 битов (каждый бит дает геометрическую прогрессию), поэтому для адресации становится доступным гораздо больше дискового пространства. Теоретически, оно составляет 9.4 ЗБ или 9,4 миллиарда терабайт. Насколько мне известно, дисков такого объема в природе пока еще не существует.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *