Не читается нулевой сектор жесткого диска. Как восстановить битые секторы на жестком диске с помощью программы Victoria? Проверка жесткого диска на битые секторы. Проверка HDD на наличие битых секторов

Часто пользователи персональных компьютеров сталкиваются с проблемами жесткого диска, которые влияют на работу системы. Основными причинами поломки жесткого диска являются: битые сектора в HD D и неисправная файловая система . В этом материале мы опишем подробный процесс исправления проблем с HDD , а также опишем методы восстановления информации на жестких дисках , если он неисправен или полностью вышел из строя. Также хочется отметить, что проблемам, которые связаны с жестким диском, необходимо уделять особое внимание. Например, если HDD станет полностью неисправным, то восстановить с него информацию вам вряд ли удастся. То есть все ваши документы, личные видеозаписи и фотографии, а также другие файлы могут быть навсегда утеряны.

Считываем показания SMART с винчестера

Если у вас на компьютере не копируются файлы, программы после открытия зависают, то возможной причиной этому может быть неисправный HDD . Обычно такое поведение операционной системы связано с неисправными секторами в жестком диске. Чтобы быть уверенным, что проблема связана с битыми секторами HDD, а не с вредоносными программами, первым делом необходимо подтвердить эту догадку. Если на компьютере наблюдается описанная выше ситуация, мы установим на него утилиту CrystalDiskInfo . Эта утилита описывает состояние всех винчестеров, установленных у вас на компьютере. Скачать CrystalDiskInfo можно с ее официального сайта http://crystalmark.info. Утилита поддерживает ОС Windows, начиная с XP и заканчивая Windows 10.

Для проверки информации о винчестере утилита использует технологию самодиагностики SMART . Технология SMART используется на всех выпускаемых HDD. Ниже изображен пример проверки показаний SMART с помощью утилиты CrystalDiskInfo в винчестере WD1200JS . Из этого окна видно, что программа обнаружила его состояние, как «Хорошо » - это означает, что этот винчестер в полном порядке и о нем не следует беспокоиться.

На следующем изображении в показаниях SMART утилита CrystalDiskInfo обнаружила состояние винта сообщением «Тревога ». Это сообщение означает, что в винчестере уже присутствуют битые сектора или он перегревается.

Если вы увидите сообщение «Плохое », то это будет означать, что на винчестере переназначены все битые сектора и в скором времени он полностью накроется.

В обоих случаях, когда программа обнаружила сообщения «Тревога » и «Плохое », вам следует сделать резервную копию всех данных на компьютере, так как в скором времени винт придет в негодность.

Одним из решений, которое может временно починить ваш винт, является утилита Victoria . Эта утилита может сделать REMAP BAD секторов , то есть она переназначит битые сектора на резервные. В следующем разделе мы подробно опишем процесс REMAP BAD секторов с помощью утилиты Victoria.

Восстанавливаем жесткий диск с помощью программы Victoria

Утилита Victoria создана силами белорусского программиста и распространяется бесплатно. Скачать утилиту можно на ее официальном сайте hdd-911.com . Утилита Victoria распространяется в двух версиях для Windows и DOS. В нашем случае мы загрузим версию для Windows. После запуска утилиты Victoria на Windows мы попадем в такое окно.

Для исправления жесткого диска нам необходимо перейти на вкладку «Tests». На этой вкладке нас интересует область с радио кнопками Ignore , Erase , Remap и Restore , а также кнопка Start . Для исправления нам необходимо выбрать радио кнопку Remap и нажать Start .

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

После переназначения секторов возможно программе Victoria удастся восстановить битые сектора, и в утилите CrystalDiskInfo будет выдаваться значение «Хорошо». Но волшебного исправления может и не произойти, так как резервные сектора могут попросту отсутствовать и Victoria ничем помочь не сможет. В этом случае остается один выход - делать полную замену HDD . Кроме лечения винта в Victoria также предусмотрено проверка показаний SMART на вкладке «SMART ».

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

Исправляем неполадки файловой системы на жестком диске

У многих пользователей на компьютерах с Windows часто наблюдаются проблемы, связанные с ошибками файловой системы NTFS . Неполадки в файловой системе возникают из-за вредоносных утилит и различного программного обеспечения . Также чаще всего неполадки в файловой системе происходят по неопытности самого пользователя ПК. Например, неправильное обращение с утилитой Acronis Disk Director . Для решения поставленной задачи нам поможет сама Windows. В Windows предусмотрено средство исправления файловой системы . Чтобы исправить файловую систему на конкретном разделе, необходимо перейти к его свойствам. В нашем случае это системный раздел операционной системы Windows 10. Для запуска исправления нам нужно перейти на вкладку «Сервис ».

На этой вкладке есть кнопка Проверить , которую мы нажмем.

После этого действия появится окно, в котором нужно подтвердить наши действия.

Подтвердив действия, Windows произведет сканирование этого раздела.

После сканирования система выдаст сообщение с результатами сканирования раздела на наличие ошибок.

Используя этот метод, многие пользователи восстанавливали нормальную работоспособность операционной системы, не прибегая к ее переустановке. Если же неполадки кроются в самом HDD, то никакая проверка диска и переустановка ОС в этом случае не поможет. Единственным вариантом в этом случае будет то, что можно прибегнуть к утилите Victoria или же делать полную замену винта на новый, переустановив при этом Windows.

Восстанавливаем диски с помощью Acronis True Image 2016

Программное обеспечение является идеальным инструментом для создания полного бекапа всех локальных разделов, включая системный. Этой возможностью пользуются множество администраторов во всем мире. Созданный бекап локальных дисков можно восстановить в очень короткое время. Например, если система подверглась заражению вируса или HDD сломался, в этом случае вы восстановите все диски ОС за короткий промежуток времени. Найти Acronis True Image 2016 можно на ее официальном сайте www.acronis.com. Запустив рассматриваемую программу, мы попадем в такое окно.

Первым делом мы покажем нашим читателям, как можно создать резервную копию локальных разделов Acronis True Image 2016. На первой вкладке «Резервное копирование» видно, что выбран весь компьютер для бекапа. То есть будет проводиться полный бекап всех локальных разделов, включая системный. В следующем блоке нужно выбрать место для бекапа. В нашем случае это локальный диск E. После выбора типа резервных данных и места их сохранения нажмем кнопку Создать копию , находящуюся в нижнем правом углу.

В зависимости от объема сохраняемых данных будет зависеть время создания резервной копии.

Завершив резервное копирование, опишем процесс восстановления компьютера. Для этого нам нужно создать загрузочный диск или флешку Acronis True Image 2016. Сделать это можно, перейдя на вкладки «ИНСТРУМЕНТЫ/МАСТЕР СОЗДАНИЯ ЗАГРУЗОЧНЫХ НАКОПИТЕЛЕЙ ». Ниже показан мастер, который должен открыться.

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

После сохранения загрузочного накопителя мастер выдаст завершающее окно.

Создав загрузочную флешку или оптический диск с Acronis True Image 2016, можно приступать к восстановлению данных. Для этого загрузимся с загрузочной флешки при старте компьютера. Загрузившись с загрузочного накопителя, мы попадаем в меню Acronis True Image 2016. Выбираем в этом меню первый пункт, после чего попадаем в основное окно Acronis True Image.

В окне программы переходим на вкладку «» и находим ранее созданную нами резервную копию всей системы.

Теперь, чтобы восстановить системный диск с Windows и локальные диски, нажмем кнопку Восстановление дисков .

В появившемся мастере выберем пункт «Восстановить диски и разделы » и продолжим.

В следующем окне выберем все локальные диски и продолжим работу мастера.

В пунктах «Место назначения » для первого и второго дисков выберем оригинальные HDD. Если в системе установлено много винчестеров, то будьте внимательны, чтобы не перепутать винты. В завершающем окне нажмем кнопку Приступить .

Время восстановления резервной копии зависит от объема и скорости HDD. В нашем случае потребовалось 10 минут.

Из примера видно, как легко можно делать резервную копию всего компьютера, поэтому, если вы освоите программный пакет Acronis True Image 2016, то вы сможете легко восстановить его работоспособность в случаях, если система заражена или винчестер поломался. Также после освоения программы у вас не будут возникать вопросы о том, как восстановить данные с жесткого диска.

Восстановление информации с помощью Recuva

Бывают случаи, когда при переустановке Windows или при использовании программного обеспечения Acronis пользователи по ошибке стирают всю информацию с жесткого диска . Если у вас именно эта ситуация, то расстраиваться не стоит, так как всю информацию можно восстановить . В этой задаче нам поможет бесплатная утилита Recuva . Скачать утилиту можно на ее официальном сайте www.piriform.com. После запуска утилиты пользователь попадает в мастер, который поможет восстановить вам все данные. Ниже изображена последовательная работа мастера.

Из примера видно, что восстановление информации с помощью Recuva довольно простой процесс и с ним справится практически любой пользователь ПК.

Подводим итог

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

Видео по теме

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

Наличие определенного процента бэд блоков - нормальная ситуация. Особенно когда жесткий диск используется не первый год. Но если этот показатель превышает норму, часть нестабильных секторов можно попытаться заблокировать или восстановить.

Способ 1: Victoria

Если сектор был обозначен нестабильным из-за несоответствия записанной в нем информации и контрольной суммы (например, из-за сбоя при записи), то такой участок можно восстановить путем затирания данных. Сделать это можно с помощью программы Victoria.

Для этого:

  1. Запустите встроенную SMART-проверку для выявления общего процента неисправных секторов.
  2. Выберите один из доступных режимов восстановления (Remap, Restore, Erase) и дождитесь окончания процедуры.

Программное обеспечение подходит для программного анализа физических и логических дисков. Может использоваться для восстановления битых или нестабильных секторов.

Способ 2: Встроенные средств Windows

Проверить и восстановить часть неисправных секторов можно с помощью встроенной в Виндовс утилиты «Проверка диска» . Порядок действий:

После этого начнется анализ диска, по возможности восстановив какие-то сектора путем их переписывания. В процессе может появиться ошибка — значит, вероятно, процент нестабильных участков слишком большой и резервных блоков-заплаток больше нет. В таком случае лучшим выходом станет приобретение нового винчестера.

Если после анализа жесткого диска с помощью специального софта, программа выявила слишком большой процент битых или нестабильных секторов, то проще всего заменить неисправный HDD. Другие рекомендации:

  1. Когда жесткий диск используется уже долгое время, то, скорее всего, в негодность пришла магнитная головка. Поэтому восстановление даже части секторов не исправят ситуацию. HDD рекомендуется заменить.
  2. После повреждения жесткого диска и увеличения показателя bad sectors нередко пропадают пользовательские данные — восстановить их можно с помощью специального софта.
  3. Не рекомендуется использовать неисправные HDD для хранения важной информации или устанавливать на них операционную систему. Они отличаются нестабильностью и могут быть установлены в компьютер только в качестве запасных устройств после предварительно проведенного ремапа специальным софтом (переназначения адресов бэд блоков на запасные).

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

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

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

Понятие «сектор» непосредственно связано с разделением записываемой на диск информации, потому как она и распределяется на компактные ячейки памяти, называемые секторами. Нередко, считывающая головка даёт сбои при снятии данных с того или иного сектора, за этим следует невозможность запуска, к примеру, какого-либо записанного файла. Операционная система ПК предупреждает про ошибку чтения файла. Не стоит забывать, что корректно работающий винчестер может прочитать любые данные, обладая целостной структурой всех секторов. Возникновение поврежденного участка (битого сектора) предвещает угрозу скорой неисправности всего HDD.

1. Факторы, влияющие на способ того, как исправить битые сектора на HDD, а также основные действия при возникновении битых секторов.

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


Стоит отметить, что для активации средства восстановления, рекомендуется отметить пункт «Автоматически исправлять системные ошибки». Благодаря штатному комплексу программных утилит, система будет автоматически проверять жесткий диск на присутствие неполадок и исправлять их. Потребуется перезагрузка ПК для полного доступа программ-реаниматоров HDD без участия активной ОС. Многие пользователи задаются вопросом, как убрать битые сектора на жестком диске, а также выполнить его проверку в такой ситуации, когда компьютер не запускается? Для этого необходимо наличие диска, содержащего виртуальную систему, после его установки в дисковод, компьютер сумеет включиться в привычном режиме, затем пользователь сможет выполнить действия, аналогичные вышеприведенным в случае с работоспособным ПК. Следует знать, что при помощи установочного диска с ОС, в случае неработоспособности текущей системы ПК, можно выявлять поврежденные сектора жесткого диска. Для этого, в ходе запуска установочного диска, пользователем активируется раздел «Восстановить систему». При выполнении восстановления, битые участки HDD пройдут последовательную диагностику с устранением выявленных неисправностей. Для проверки битых секторов на винчестере, консоль восстановления можно запустить без участия загрузочного диска следующим образом:

  • При начальном этапе запуска ПК, нажать кнопку «F8».
  • Войти в безопасном режиме при поддержке командной строки.

Как восстановить нулевой сектор на жестком диске компьютера?

Если пользователь столкнулся с надписью «Primary master harddisk fail», значит возникла проблема невозможности чтения информации с диска нулевого сектора, содержащего главную таблицу разделов. Неполадки в работе данного сектора сперва вызывают сильные подтормаживания системы, а порой и её полное зависание. Восстановление нулевого сектора можно произвести посредством низкоуровневого форматирования, установив соответствующее программное обеспечение от фирмы-производителя HDD, однако это приведет к полной потере всех данных. Правильным решением при неисправности нулевого сектора, станет диагностика всех секторов винчестера при программных утилит на подобии Victoria.

2. Как исправить поврежденные сектора на жестком диске, с помощью Victoria?

Программа Victoria направлена на диагностику, а также восстановление участков жесткого диска. Утилита за достаточно короткое время проверки, легко обнаруживает битые сектора, выделяя их неработоспособными.Такие выделенные участки не будут считываться системой, а значит последующие зависания и сбои в процессе чтения данных будут временно исключены. Victoria предоставляет владельцу ПК информацию о том, нуждается ли определенный жесткий диск в лечении и какое количество времени он сумеет корректно работать. Утилита не займёт много места и запускается моментально из архива без загрузки установочного пакета. С первым запуском приложения, открывается системное окно со вкладками, содержащими основной функционал, это данные о состоянии дисков, тестирование, настройки и так далее. Вкладка «TEST» будет содержать требуемую информацию для проверки и устранения битых секторов HDD. В процессе проверки жесткого диска утилитой Victoria, интерфейс программы будет выводить цветовые обозначение тестируемых секторов:

Здравствуйте админ, вопрос! Моему компьютеру 5 лет и он стал заметно подвисать при работе в различных приложениях. Часто при включении автоматически запускается утилита проверки жёсткого диска на ошибки. Переустановка Windows не помогла и пришлось обратиться к знакомому компьютерщику, он просканировал жёсткий диск программой Виктория и у меня оказалось очень много секторов с задержкой более 200 мс и с задержкой 600 мс (кандидаты в бэд-блоки). Мой приятель сказал, что надо делать « Запись по всей поляне » другими словами - произвести посекторное стирание информации с жёсткого диска. Отсюда собственно и вопрос, как это сделать самостоятельно, так как моему другу всегда некогда.

Привет друзья! Данная статья является продолжением повествования о программе по ремонту жёстких дисков Victoria и конечно лучше было бы, если перед прочтением этой статьи, вы .

Коротко напомню Вам о чём шла речь в первой статье.

Если ваша операционная система тормозит и зависает, а жёсткий диск иногда издаёт посторонние звуки, то дело может быть в сбойных секторах (бэд-блоках).

Сбойные сектора бывают двух видов: физические и логические.

Физические бэд-блоки - это механически деформированный сектор жёсткого диска, из которого невозможно прочитать информацию, а также невозможно записать в него данные. Исправить такие сектора невозможно никакими программами. Встроенное в жёсткий диск микропрограммное обеспечение должно вовремя обнаруживать появившийся сбойный сектор и переназначать его нормальным сектором с резервной дорожки. Неисправный сектор в этот момент выводится из работы и информация о нём заносится в специальный дефект-лист. Но часто бывает, что бэд-блоки присутствуют на жёстком диске, а скрытия их не происходит. В этом случае нужно намекнуть встроенной в жёсткий диск микропрограмме о присутствии на винчестере бэдов с помощью специальных программ по работе с жёсткими дисками (Виктория, HDDScan, MHDD) и только после этого бэд-блоки при благоприятном исходе пропадут.

  • Примечание : кому интересно, более подробная статья о сбойных секторах (бэд-блоках) .

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

Для проведения диагностики жёсткого диска можно воспользоваться программой Victoria.

Чтобы вам всё было понятно, предлагаю рассмотреть данный вопрос на конкретном примере.

Встреча 10 лет спустя...

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

Системный блок оказался идеально чистым внутри, а температура процессора, видеокарты, жёсткого диска в норме. Конечно мои подозрения упали на жёсткий диск, который при ближайшем рассмотрении оказался знаменитым ветераном WDC WD1200JS-00MHB0: объём 120 Гб SATA-II , когда-то популярный чёрный жёсткий диск высокопроизводительной серии Caviar SE от производителя Western Digital ! Друзья, данный диск я покупал своему приятелю 10 лет назад, обратите внимание на дату изготовления - 16 октября 2005 года!

Итак, посмотрим, что со здоровьем у нашего старого знакомого и с чего это он стал зависать и тормозить!

Запускаю с флешки программу CrystalDiskInfo и смотрю SMART (самодиагностика жёсткого диска), ничего криминального нет, техническое состояние - Хорошо.

Также запускаю программу Victoria прямо в работающей Windows 8.1 и обязательно от администратора, начинаю производить тест поверхности жёсткого диска.

В начальном окне программы выбираю вкладку Standard и в правой части окна выделяю левой мышью винчестер WDC WD1200JS-00MHB0.

Перехожу на вкладку Tests и отмечаю пункты Ignor и read , жму Start . Запускается простой тест поверхности жёсткого диска без исправления ошибок. Данный тест не опасен для информации, находящейся на жёстком диске. Мне интересно узнать, в каком состоянии жёсткий диск после десяти лет работы. Самое главное не запускать во время теста никаких программ, иначе возможны ошибки, вообще идеально произвести тест HDD в ДОС-режиме с помощью загрузочной флешки программы Victoria, но мы сделаем это чуть позже.

Через 30 минут получаем результат теста:

В нашем случае бэд-блоков нет, но есть сектора с большой задержкой более 600 мc, смотрим на скриншот, всё показано стрелочками.

500 блоков секторов с задержкой более 50 мc.

31 блок секторов с задержкой более 200 мc.

7 блоков секторов с задержкой более 600 мc (блоки секторов с такой задержкой опасны и являются скорее всего кандидатами в бэд-блоки).

Есть небольшая вероятность, что из-за данных семи секторов и происходят зависания компьютера.

Предлагаю применить для жёсткого диска в программе Victoria алгоритм Write (Запись, стирание) на жаргоне ремонтников - "Запись по всей поляне". Произойдёт посекторное стирание информации с диска блоками по 256 секторов и последующая принудительная запись в сектора нулей. Именно таким образом можно избавиться от логических бэд-блоков и в некоторых случаях от физических бэд-блоков (произойдёт ремап).

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

Физические "бэды" могут пропасть от того, что Виктория слишком явно покажет их встроенной микропрограмме жёсткого диска и та просто переназначит бэд-блоки резервными секторами с запасных дорожек!

На вкладке Tests отмечаем пункт Write (Запись, стирание). Осторожно, вся информация будет удалена с жёсткого диска! Поэтому убедитесь, что вы правильно выбрали тестируемый диск. Можете отметить пункт DDD Enable (усиленное стирание).

Жму Start .

Will be lost (все пользовательские данные на жёстком диске WD1200JS-00MHB0 будут потеряны).

Соглашаемся. Yes .

Начинается процесс посекторного стирания информации с жёсткого диска

Если в данный момент запустить Управление дисками, то мы увидим, что все разделы на тестируемом жёстком диске удалены вместе с данными.

По окончании стирания, опять производим простой тест поверхности жёсткого диска.

На вкладке Tests отмечаем пункты Ignor и read , жмём Start . Запускается простой тест поверхности жёсткого диска без исправления ошибок.

Через 30 минут получаю результат, все сектора с большими задержками исправлены.

Какой бы продвинутой ни была операционная система, ее загрузка невозможна без наличия двух секторов на жестком диске, которые содержат код, необходимый для запуска любой операционной системы. Первый сектор называется Master Boot Record (MBR); он всегда располагается по адресу: сектор 1/цилиндр 0/головка1 и является самым первым сектором жесткого диска. Вторым важнейшим сектором является Boot Sector (загрузочный сектор), расположенный в первом секторе каждого тома.

Master Boot Record

Master Boot Record является самой важной структурой диска; этот сектор создается при разбиении диска на разделы. В секторе MBR расположены небольшой код, называемый Master Boot Code, а также сигнатура диска и таблица разделов. В конце сектора MBR располагается двухбайтовая структура, указывающая на конец сектора. Она имеет значение 0x55AA. Сигнатура диска - это уникальное число, расположенное по смещению 0x01B8 и позволяющее операционной системе однозначно определить данный диск.

Код, находящийся в секторе MBR, выполняет следующие действия:

  • ищет активный раздел в таблице разделов;
  • ищет начальный сектор активного раздела;
  • загружает копию загрузочного сектора из активного раздела в память;
  • передает управление исполняемому коду из загрузочного сектора.
Если эти функции по какой-то причине не удается завершить, то выдается одно из следующих системных сообщений об ошибке:
  • Invalid partition table;
  • Missing operating system.
Отметим, что для гибких дисков не существует понятия MBR. Загрузочным сектором является первый сектор на диске. Также следует помнить, что каждый жесткий диск содержит сектор MBR, но загрузочный код используется только на дисках, имеющих активный первичный раздел.

Таблица разделов

Таблица разделов - это 64-байтовая структура, используемая для определения типа и местоположения разделов на жестком диске. Содержимое данной структуры унифицировано и не зависит от операционной системы. Информация о каждом разделе занимает 16 байт - таким образом, на диске может быть не более четырех разделов.

Информация о каждом разделе начинается с определенного смещения от начала сектора, как показано в табл. 1 .

Смещение​

| |

Значение​

|

Описание​

0x01BE| 1 байт| 0x80| Индикатор загрузки (Boot Indicator) - указывает, является ли том активным разделом. Может иметь значения: 00 - не используется для загрузки; 80 - активный раздел
0x01BF| 1 байт| 0x01| Начальная головка (Starting Head)
0x01C0| 6 бит| 0x01| Начальный сектор (Starting Sector) - используются биты 0-5. Биты 6 и 7 используются следующим полем
0x01C1| 10 бит| 0x00| Начальный цилиндр (Starting Cylinder) - 10-битовое число с максимальным значением 1023
0x01C2| 1 байт| 0x07| Идентификатор системы (System ID) - определяет тип тома
0x01C3| 1 байт| 0xFE| Конечная головка (Ending Head)
0x01C4| 6 бит| 0xBF| Конечный сектор (Ending Sector) - используются биты 0-5. Биты 6 и 7 используются следующим полем
0x01C5| 10 бит| 0x09| Конечный цилиндр (Ending Cylinder) - 10-битовое число с максимальным значением 1023
0x01C6| Двойное слово| 0x3F000000| Относительные сектора (Relative Sectors) - смещение от начала диска до начала тома, выраженное в числе секторов
0x01CA| Двойное слово| 0x4BF57F00| Общее число секторов (Total Sectors) - число секторов в данном томе


После того как мы ознакомились с устройством записи о разделе, более подробно рассмотрим некоторые из полей этой записи.

Поле Boot Indicator

Первый элемент таблицы разделов, поле Boot Indicator, указывает, является ли том активным разделом. Напоминаем, что только первичный раздел диска может быть активным. Имеется возможность установки различных операционных систем и различных файловых систем на различных томах. Используя утилиты типа FDISK (MS-DOS), Disk Management (Windows 2000) или утилиты сторонних производителей, можно активизировать первичный раздел и установить соответствующее значение данного поля.

Поле System ID

Это поле содержит идентификатор системы и указывает, какая файловая система - FAT16, FAT32 или NTFS - использовалась для форматирования тома, а также позволяет узнать некоторые характеристики файловой системы. Кроме того, данное поле показывает, существует ли на диске расширенный раздел (extended partition). Возможные значения поля System ID показаны в табл. 3 .

Тип раздела​

|

Пояснения​

0x01| Первичный раздел или логический диск FAT12. Том имеет менее 32 680 секторов
0x04| Раздел или логический диск FAT16. Том имеет от 32 680 до 65 535 секторов, или размер от 16 до 33 Мбайт
0x05| Расширенный раздел
0x06| Раздел или логический диск BIGDOS FAT16. Размер от 33 Мбайт до 4 Гбайт
0x07| Раздел или логический диск NTFS. Installable File System
0x0B| Раздел FAT32 или логический диск
0x0C| Раздел FAT32 или логический диск с использованием расширений BIOS INT 13h
0x0E |Раздел BIGDOS FAT16 или логический диск с использованием расширений BIOS INT 13h
0x0F| Расширенный раздел, использующий расширения BIOS INT 13h
0x12| EISA-раздел
0x42 |Том динамического диска (Windows 2000)


Отметим, что под управлением MS-DOS доступны только тома с полем System ID, которое равно 0x01, 0x04, 0x05 или 0x06. Но тома с другим System ID этого поля могут быть удалены с помощью утилиты FDISK.

Поля Cylinder, Head и Sector

Поля Starting Cylinder, Ending Cylinder, Starting Head, Ending Head, Starting Sector и Ending Sector (общее название - CHS) являются дополнительными элементами таблицы разделов. Загрузочный код использует значения этих полей для нахождения загрузочного сектора и его активизации. Поля Starting CHS неактивных разделов указывают на загрузочные сектора первичных разделов и на расширенный загрузочный сектор первого логического диска в расширенном разделе.

На рис. 2 показаны Master Boot Record (содержащий код, таблицу разделов и сигнатуру) и загрузочные сектора для диска с четырьмя разделами.


рис. 2
Поле Ending Cylinder в таблице разделов имеет размер 10 бит и позволяет описывать цилиндры с номерами от 0 до 1023. Поля Starting Head и Ending Head имеют размер 1 бит и могут содержать номера головок от 0 до 255. Так как поля Starting Sector и Ending Sector занимают по 6 бит, они могут содержать значения от 0 до 63. Поскольку нумерация секторов начинается с 1 (а не с 0, как для других полей), то максимальное число секторов на дорожке равно 63.

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

Код:

Максимальный размер = Размер сектора x Число цилиндров x Число головок x x Число секторов на дорожке.

Используя максимально допустимые значения этих величин, мы получаем:

Код:

512 x 1024 x 256 x 63 (или 512 x 224) = = 8 455 716 864 байт, или 7,8 Гбайт.

Таким образом, без использования расширений INT 13h, известных под названием Logical Block Addressing (LBA), размер активного первичного раздела не может превышать 7,8 Гбайт независимо от используемой файловой системы.

Максимальный размер тома под FAT16 зависит от геометрии диска и максимальных значений в таблице разделов. Возможные значения при использовании и отсутствии LBA показаны в табл. 4. Число цилиндров в обоих случаях равно 1024 (0-1023). В том случае, когда первичный раздел или логическое устройство занимает область далее 1023-го цилиндра, все поля таблицы разделов будут иметь максимально допустимые значения.

Режим LBA​

|

Число головок​

|

Секторов/Дорожка​

|

Макс. размер раздела​

Запрещен| 64| 32| 1 Гбайт
Разрешен| 255| 63| 4 Гбайт


Чтобы обойти описанное выше ограничение в 7,8 Гбайт, в Windows 2000 игнорируются значения полей Starting Sector и Ending Sector - вместо этого используются значения полей Relative Sectors и Total Sectors.

Поля Relative Sectors и Total Sectors

Поле Relative Sectors содержит смещение от начала диска до начала тома, выраженное в числе секторов. Поле Total Sectors указывает общее число секторов в томе.

Используя значения двух этих полей (которые вместе являются 32-битовым числом), мы получаем дополнительные 8 бит для хранения общего числа секторов по сравнению с описанной выше схемой CHS. В этом случае число секторов может быть представлено как 232. При использовании стандартного размера сектора (512 байт) и 32-битового представления числа секторов максимальный объем раздела ограничивается числом 2 Тбайт (или 2 199 023 255 552 байт). Такая схема используется только в Windows 2000 с файловыми системами NTFS и FAT32.

Отметим, что при создании разделов под управлением Windows 2000 корректные данные заносятся и в поля Starting Cylinder, Ending Cylinder, Starting Head, Ending Head, Starting Sector и Ending Sector. Это позволяет обеспечить совместимость с MS-DOS, Windows 95 и Windows 98, а также с функциями INT 13h, используемыми BIOS при загрузке компьютера.

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

Расширенная загрузочная запись (Extended Boot Record, EBR) состоит из расширенной таблицы разделов и сигнатуры - двухбайтовой структуры, имеющей значение 0x55AA. Расширенная загрузочная запись существует для каждого логического устройства в расширенном разделе. Она содержит информацию о первой стороне первого цилиндра для каждого логического устройства. Загрузочный сектор логического диска обычно располагается в относительных секторах с номером 32 либо 63. Если на диске нет расширенного раздела, то нет расширенной загрузочной записи и нет логических устройств.

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

На рис. 3 показано, как устроена расширенная загрузочная запись. Показаны три логических устройства в расширенном разделе.


рис. 3
За исключением последнего логического устройства в расширенном разделе (см. рис. 3 ), формат расширенной таблицы разделов, описанный в табл. 5 , повторяется для каждого логического устройства: первый элемент описывает загрузочный сектор логического устройства, второй элемент указывает на следующую расширенную загрузочную запись. Для последнего логического устройства элементы со второго по четвертый не используются.

Элемент расширенной таблицы разделов​

|

Содержимое​

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


Поля каждого элемента в расширенной таблице разделов аналогичны полям обычной таблицы разделов, описанной выше.

Поле Relative Sectors в расширенной таблице разделов указывает в байтах смещение от начала расширенного раздела до первого сектора логического устройства. Число в поле Total Sectors позволяет узнать число секторов, отведенных под логическое устройство. Значение поля Total Sectors равно числу секторов от начала загрузочного сектора до конца логического раздела.

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

Boot Sector

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

На компьютерах, работающих под управлением Windows 2000, загрузочный сектор активного раздела загружается в память и вызывает загрузчик операционной системы - NTLDR , который выполняет все необходимые действия по загрузке Windows 2000.

В Windows 2000 загрузочный сектор содержит следующие элементы:

  • ассемблерную инструкцию JMP;
  • идентификатор производителя (OEM ID);
  • структуру данных, называемую BIOS Parameter Block (BPB);
  • расширенную структуру BPB;
  • исполняемый код, запускающий операционную систему.
Отметим, что загрузочные сектора для NTFS, FAT16 и FAT32 отформатированы иным образом.

Структура BPB содержит физические параметры тома, расширенная структура BPB начинается сразу же после стандартной BPB. Длина структуры BPB и содержащаяся в ней информация зависят от типа загрузочного сектора - NTFS, FAT16 или FAT32.

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

Сразу же за расширенной структурой BPB следует загрузочный код.

Процесс загрузки

Процесс загрузки компьютера состоит из следующих основных шагов:

  1. При включении питания выполняется проверочный тест BIOS и процессора - POST .
  2. BIOS ищет загрузочное устройство (обычно это диск).
  3. BIOS загружает первый физический сектор с загрузочного диска в память и передает управление по тому адресу, куда загружен этот сектор.
Если загрузочным устройством является жесткий диск, то BIOS загружает MBR. Располагаемый в MBR код загружает загрузочный сектор активного раздела и передает управление по тому адресу, куда загружен этот сектор. На компьютерах с Windows 2000 исполняемый код в загрузочном секторе находит файл NTLDR, загружает его в память и передает ему управление.

Если в дисководе A находится диск, то BIOS загружает первый сектор (загрузочный сектор) этого диска в память. Если диск является загрузочным (содержит базовые файлы операционной системы), загрузочный сектор загружается в память и использует код для передачи управления файлу IO.SYS - базовому файлу операционной системы MS-DOS. Если диск не является загрузочным, исполняемый код в загрузочном секторе выдает следующее сообщение:

  • Non-System disk or disk error
  • Replace and press any key when ready
Начальный процесс загрузки не зависит от формата диска и от операционной системы. Уникальные характеристики операционной и файловой систем используются уже после того, как начинается выполнение кода из загрузочного сектора.

Виды загрузочных секторов

Как мы уже знаем, MBR передает управление загрузочному сектору. Поэтому первые три байта данного сектора должны содержать допустимую инструкцию для центрального процессора. Этой инструкцией является инструкция перехода, перенаправляющая выполнение кода. За инструкцией JMP следует 8-байтовый идентификатор производителя (OEM ID) - строка, описывающая название и номер версии операционной системы, использовавшейся для форматирования тома.

Для сохранения совместимости с MS-DOS Windows 2000 записывает идентификатор «MSDOS5.0» для файловых систем FAT16 и FAT32. Для файловой системы NTFS идентификатор содержит символы «NTFS».

Windows 95 использует идентификатор «MSWIN4.0», а Windows 95 OSR2 и Windows 98 - идентификатор «MSWIN4.1».

Сразу же за идентификатором производителя следует структура данных, называемая BIOS Parameter Block (BPB). В ней содержится информация, необходимая для обнаружения файла NTLDR. Поскольку BPB обычно располагается по одному и тому же смещению, то стандартные параметры легко обнаруживаются. Так как инструкция JMP обходит структуру BPB, ее размер может быть увеличен в будущем, если здесь потребуется хранить какую-либо дополнительную информацию.
Теперь давайте рассмотрим, как выглядят загрузочные сектора для трех основных файловых систем - FAT16, FAT32 и NTFS.

Загрузочный сектор FAT16

В табл. 6 приведено описание загрузочного сектора для файловой системы FAT16.

Смещение​

| |

0x00| 3 байт| Инструкция JMP
0x03| 2 x LONG| OEM ID
0x0B| 25 байт| BPB
0x24| 26 байт| Расширенный BPB
0x3E| 448 байт| Загрузочный код
0x01FE| 2 байт| Маркер конца сектора (0x55AA)


На конкретном примере показано содержимое загрузочного сектора FAT16. Здесь можно выделить три секции:
  • байты 0x00-0x0A содержат инструкцию JMP и OEM ID (выделены шрифтом);
  • байты 0x0B-0x3D содержат BPB и расширенный BPB;
  • остальные байты содержат код загрузки и маркер конца сектора (выделены шрифтом).

В двух следующих таблицах показано содержимое BPB (табл. 7 ) и расширенного BPB (табл. 8 ) для FAT16. Приведенные значения соответствуют загрузочному сектору, показанному на рис. 4.

Смещение​

| |

Значение​

|

Описание​


0x0D| 1 байт| 0x40| Число секторов в кластере. Так как FAT16 поддерживает ограниченное число кластеров (до 65 536), тома большего объема требуют использования большего числа секторов в кластере. Значение этого поля по умолчанию зависит от размера тома. Допустимы следующие значения: 1, 2, 4, 8, 16, 32, 64 и 128. Значения, приводящие к увеличению размера кластера более 32 Кбайт (количество байт в секторе, умноженное на число секторов в кластере), могут служить источником ошибок
0x0E| 2 байт| 0x0100| Зарезервированные сектора - число секторов перед первой таблицей FAT, включая загрузочный сектор. Значение этого поля всегда равно 1

0x11| 2 байт| 0x0002| Общее число 32-байтовых имен файлов и каталогов, которые могут храниться в корневом каталоге тома. Обычно значение этого поля равно 512. Один элемент всегда используется для хранения метки тома, поэтому максимальное число файлов и каталогов не превосходит 511
0x13| 2 байт| 0x0000| Число секторов в томе, выраженное 16-битовым значением. Для томов, имеющих более 65 536 секторов, это поле не используется и его значение равно 0

0x16| 2 байт| 0xFC00| Число секторов в каждой копии FAT. Значение этого поля, число копий FAT и число зарезервированных секторов используются для вычисления местонахождения корневого каталога. Зная максимальное число элементов корневого каталога, можно также узнать, где начинаются пользовательские данные

0x1A| 2 байт| 0x4000| Число головок. Используется для низкоуровневого форматирования дисков
0x1C| 4 байт| 0x3F000000| Число “скрытых” секторов - число секторов перед загрузочным сектором. Используется во время загрузки для вычисления абсолютного смещения корневого каталога и данных
0x20| 4 байт| 0x01F03E00| Число секторов в томе, выраженное 32-битовым значением. Используется для томов, имеющих более 65 536 секторов


Смещение​

| |

Значение​

|

Описание​

0x24| 1 байт| 0x80| Физический номер устройства. Содержит 0x00 для флоппи-дисков и 0x80 для жестких дисков. Используется INT 13h для обращения к диску. Значение данного поля имеет смысл только для загрузочного устройства
0x25| 1 байт| 0x00| Зарезервировано. Для FAT16 значение этого поля всегда равно 0
0x26| 1 байт| 0x29| Сигнатура расширенного загрузочного сектора. Для Windows 2000 это поле должно иметь значения 0x28 или 0x29
0x27| 4 байт| 0xA88B3652| Серийный номер тома. Случайное число, генерируемое при форматировании диска
0x2B |11 байт| NO NAME| Метка тома. В Windows 2000 метка тома хранится в специальном файле
0x36| 2 х LONG| FAT16| Тип файловой системы. В зависимости от формата диска это поле может содержать символы FAT, FAT12 или FAT16



рис. 4
Загрузочный сектор FAT32

Загрузочный сектор FAT32 имеет много общего с загрузочным сектором FAT16, но BPB содержит дополнительные поля, а те поля, которые используются в FAT16, находятся по другим адресам. Таким образом, диски, отформатированные под FAT32, не могут быть прочитаны операционными системами, несовместимыми с FAT32.

В табл. 9 показано содержимое загрузочного сектора для файловой системы FAT32.

Смещение​

| |

Значение​

|

Описание​

0x0B| 2 байт| 0x0002| Число байт в секторе - размер сектора. Допустимы следующие значения: 512, 1024, 2048 и 4096. Для большинства дисков значение этого поля равно 512
0x0D| 1 байт| 0x40| Число секторов в кластере. Так как FAT32 поддерживает ограниченное число кластеров (до 4 294 967 296), тома очень большого объема требуют использования большего числа секторов в кластере. Значение этого поля по умолчанию зависит от размера тома. Допустимы следующие значения: 1, 2, 4, 8, 16, 32, 64 и 128. В Windows 2000 для FAT32 поддерживаются тома максимальным объемом до 32 Гбайт. Тома большего объема, созданные с помощью Windows 95 OSR2 и Windows 98, доступны из Windows 2000
0x0E| 2 байта| 0x0200| Зарезервированные сектора - число секторов перед первой таблицей FAT, включая загрузочный сектор. Значение этого поля для FAT32 обычно равно 32
0x10| 1 байт| 0x02| Число копий таблиц FAT для данного тома. Значение этого поля всегда равно 2
0x11| 2 байт| 0x0000| Общее число 32-байтовых имен файлов и каталогов, которые могут храниться в корневом каталоге тома (только для FAT12/FAT16). Для томов FAT32 значение этого поля должно быть равно 0
0x13| 2 байт| 0x0000| Число секторов в томе, выраженное 16-битовым значением (только для FAT12/FAT16). Для томов FAT32 значение этого поля должно быть равно 0
0x15| 1 байт| 0xF8| Тип носителя. Значение 0xF8 указывает на жесткий диск, 0xF0 - на флоппи-диск высокой плотности. Данное поле не используется в Windows 2000
0x16| 2 байт| 0x0000| Число секторов в каждой копии FAT (только для FAT12/FAT16). Для томов FAT32 значение этого поля должно быть равно 0
0x18| 2 байт| 0x3F00| Число секторов в дорожке. Используется для низкоуровневого форматирования дисков
0x1A| 2 байт| 0xFF00| Число головок. Используется для низкоуровневого форматирования дисков
0x1C| 4 байт| 0xEE39D700| Число «скрытых» секторов - число секторов перед загрузочным сектором. Используется во время загрузки для вычисления абсолютного смещения корневого каталога и данных
0x20| 4 байт| 0x7F324E00| Число секторов в томе, выраженное 32-битовым значением. Используется для томов, имеющих более 65 536 секторов
0x24| 4 байт| 0x83130000| Число секторов в FAT (только для FAT32)
0x28| 2 байт| 0x0000| Расширенные флаги (только для FAT32). Отдельные биты этого слова имеют следующее назначение: биты 0-3 - число активных FAT; биты 4-6 - зарезервированы; бит 7 - равен 0, если выполняется «зеркалирование» FAT; равен 1, если активна только одна FAT; биты 8-15 - зарезервированы
0x2A| 2 байт| 0x0000| Версия файловой системы (только для FAT32)
0x2C| 4 байт| 0x02000000| Номер кластера для первого кластера корневого каталога (только для FAT32). Обычно значение этого поля равно 2
0x34| 2 байт| 0x0600| Номер сектора с резервной копией загрузочного сектора (только для FAT32). Обычно значение этого поля равно 6
0x36| 12 байт| 0x000000000000000000000000| Зарезервировано (только для FAT32)

табл. 10.​


Смещение​

| |

Значение​

|

Описание​

0x40| 1 байт| 0x80| Физический номер устройства. Содержит значения 0x00 для флоппи-дисков и 0x80 для жестких дисков. Используется INT 13h для обращения к диску. Значение данного поля имеет смысл только для загрузочного устройстватабл. 12 0x0D| 1 байт| 0x08| Число секторов в кластере
0x0E| 2 байт| 0x0000| Зарезервированные сектора
0x10| 3 байт| 0x000000| Всегда 0
0x13| 2 байт| 0x0000| Не используется в NTFS
0x15| 1 байт| 0xF8| Тип носителя
0x16| 2 байт| 0x0000| Всегда 0
0x18| 2 байт| 0x3F00| Число секторов на дорожке
0x1A| 2 байт| 0xFF00| Число головок
0x1C| 3 байт| 0x3F000000| Число “скрытых” секторов
0x20| 4 байт| 0x00000000| Не используется в NTFS
0x24| 4 байт| 0x80008000| Не используется в NTFS
0x28 |2 x LONG| 0x4AF57F0000000000| Общее число секторов
0x30| 2 x LONG| 0x0400000000000000| Номер логического кластера для файла $MFT
0x38| 2 x LONG| 0x54FF070000000000| Номер логического кластера для файла $MFTMirr
0x40 |4 байт| 0xF6000000| Число секторов в сегменте файловой записи
0x44| 4 байт | 0x01000000| Число кластеров в индексном блоке
0x48| 2 x LONG| 0x14A51B74C91B741C| Серийный номер тома
0x50| 4 байт| 0x00000000| Контрольная сумма

error: Content is protected !!