Размещаемая на дисках накопителя инфомация делится на собственно информацию пользователя (ради которой накопитель и существует) и служебную, предназначенную для обеспечения возможности хранить информацию пользователя. Служебная информация делится на:
Служебная информация HDD в свою очередь делится на три уровня:
Операционная система создает на HDD свою структуру служебных данных для обеспечения возможности манипуляций с хранящийся информацией по правилам, принятым в данной ОС. С точки зрения ОС накопитель представляет собой просто совокупность произвольно адресуемых блоков (секторов), вне зависимости от внутренней конструкции устройства.
Средствами ОС создаются таблицы логических разделов (программой fdisk), таблицы параметров раздела и расположения файлов (программой format), записываются программы загрузки ОС. Логическоге форматирование заключается именно в записи этих таблиц и программ, а также проверке доступности секторов данных, входящих в логический раздел. Если при проверке обнаруживаются недоступные сектора (сектора, при выполнении для которых команды верификации возвращается код ошибки), они помечаются в FAT как плохие. К идентификаторам секторов и вообще низкоуровневому формату эта процедура никакого отношения не имеет. Запись производится только в сектора, отведенные под загрузчик ОС, FAT и корневой каталог.
В стандарте ATA (AT attachment) имеется команда 50h (Format Track), оставшаяся «по наследству» от ST506/412. В настоящее время данная команда поддерживается частью изготовителей HDD «для совместимости», реальное же действие накопителя при получении ее варьируется от простого игнорирования до записи нулей в указанные сектора. Реальное низкоуровневое форматирование в пользовательском режиме работы HDD невозможно хотя бы из-за того, что внутренняя программа транслятора контроллера HDD скрывает истинную адресацию секторов. Результатом выполнения «низкоуровневого форматирования» из BIOS может быть:
В то же время команда форматирования трека предоставляет и весьма полезные возможности. Сама команда выглядит следующим образом (AT Attachment Interface for Disk Drives, Revision 4c, 1994):
Затем заполняется буфер сектора (100h слов) блоком данных, в котором каждое 16-битное слово является дескриптором сектора и содержит в старшем байте номер сектора, а в младшем дескриптор, который может принимать значения:
«Хвост» буфера заполняется нулями. По заполнении буфера команда выполняется.
Таким образом, с помощью команды Format Track можно производить замену (assign) дефектных секторов на резервные. Такая возможность поддерживается большинством современных IDE HDD. К сожалению, процедуры LLF BIOS (по крайней мере большинства из них) эту процедуру не реализуют. Поэтому для скрытия дефектов лучше использовать программы, для этого предназначенные: mhdd, Victoria (обе работают под MS-DOS), HDDScan (Windows 2000/XP).
И последнее замечание: LLF из BIOS может привести и к положительному результату, как, например, в случае с ошибочной контрольной суммой поля данных сектора. При чтении такого сектора будет возникать ошибка «Uncorrectable by ECC» до тех пор, пока новая запись в него не скорректирует байты ECC. Это может сделать и BIOS LLF (если только винчестер его не проигнорирует).
Что касается актуальных в настоящее время накопителей (с емкостью выше 1-2 Гб на пластину), то они имеют отличия в формате сектора, заключающиеся в отсутствии поля идентификации. Такой формат, называемый id-less или no-id, при котором идентификация сектора производится не по записи в его заголовке, а по расположению сектора относительно серворазметки, позволил увеличить полезную емкость диска и одновременно вовсе лишил смысла операцию форматирования. Если ранее при записи сектора оставалась необновляемая часть дескриптор, то теперь обычная операция записи переписывает весь «физический» сектор, как поле данных, так и поле ECC.
Таким образом, отдельная функция «низкоуровневого форматирования» стала вовсе ненужной, и она была исключена из новых редакций ATA стандарта. Распространяемые изготовителями HDD сервисные утилиты по традиции могут содержать пункт меню «Low Lewel format», но за ним скрывается та же самая посекторная запись нулей.
Изменения коснулись также и системы дефект-менеджмента (системы скрытия дефектов поверхности). В любом современном HDD эта система включает в себя механизм автоматической замены дефектных секторов при операциях записи и чтения, поэтому нет необходимости в каких-то специальных командах для того, чтобы эту замену инициировать.
Таким образом, процедуру HDD Low Level Format, реализованную в BIOS многих системных плат, можно признать в большинстве случаев безвредной (для самого винчестера, но не для информации на нем), но и практически бесполезной. То есть ее использование может принести только ту пользу, которую способна принести простая запись нулей во все сектора логического дискового пространства. А это проще и быстрее делать с помощью приведенных выше программ или, например, утилит с сайтов изготовителей HDD.