Восстановление данных
Шрифт:
Установка параметров файловой системы
Несколько упрощая, можно сказать, что файловая система – это часть операционной системы, которая «отвечает» за корректное хранение данных и предоставление доступа к ним пользователю и прикладным программам.
Можно также сказать, что файловая система имеет два лица: одно из них, доброжелательное и несколько простоватое, обращено к человеку. Общаясь с этой стороной файловой системы, пользователь видит только папки и «документы». Причем черты этого «лица» практически одинаковы для всех современных ОС с графическим интерфейсом. Работая
Второе лицо файловой системы, суровое и сосредоточенное, изборожденное задумчивыми складками и даже (иногда) шрамами, обращено к «железу» компьютера и к компонентам системного программного обеспечения. Лишь взглянув на файловую систему с этой стороны, вы можете определить, в состав какой ОС она входит.
Более того: одна и та же ОС может поддерживать работу нескольких разнотипных файловых систем. Скажем, для перезаписываемых компакт-дисков в настоящее время используется пять (!) различных типов файловых систем. Так о чем же пойдет речь в данном разделе?
Вначале мы рассмотрим особенности организации файловых систем, используемых при работе с жесткими дисками в среде ОС Windows 98 и Windows XP. Причем с той стороны, которая обращена к «железу».
Затем мы подойдем к файловой системе с другой стороны, то есть со стороны папок и файлов. И поговорим о тех параметрах, которые призваны защищать пользователя от «глупых», «дурацких» и тому подобных ошибок в работе с данными.
Организация хранения данных на жестком диске
В процессе создания на жестком диске файловой системы определенного типа выполняется логическое форматирование диска. Полученная логическая структура зависит, с одной стороны, от особенностей файловой системы, а с другой – от физической структуры диска.
Физическая структура жесткого диска
Жесткий диск хранит информацию блоками фиксированного размера, которые называются секторами. Сектор (sector) является наименьшей порцией данных, имеющей уникальный адрес на жестком диске. Размер сектора стандартный для всех жестких дисков и составляет 512 байт. Для ускорения доступа к данным поверхность диска разделена на концентрические дорожки (track). Сектор, соответственно, является частью дорожки.
Поскольку каждый жесткий диск – это «слоеный пирог» из нескольких дисков, то совокупность дорожек, одинаково удаленных от центра на всех рабочих поверхностях дисков, образует так называемый цилиндр (cylinder). В свою очередь, каждая рабочая поверхность диска «обслуживается» отдельной магнитной головкой. Поэтому часть дискового пространства, соответствующую одной рабочей поверхности, называют головкой (head) (рис. 3.3).
Рис. 3.3. Физическая структура жесткого диска
Таким образом, общая емкость диска (V) вычисляется как произведение четырех сомножителей: числа цилиндров (С), количества секторов на одной дорожке (S), размера одного сектора (512) и числа головок (H):
V = C х S х 512 х H.
В соответствии с ограничениями BIOS предыдущего поколения и контроллеров жестких дисков для
В результате максимальное адресуемое пространство жесткого диска при использовании трех координат (номер цилиндра, номер головки, номер сектора) ограничено значением 528 Мбайт:
(210 = 1024 цилиндра) х (24 = 16 головок) х (26-1 = 63 сектора) х х 512 байт = 528 Мбайт.
Такой способ адресации получил обозначение CHS (Cylinder, Head, Sector); сейчас он обычно именуется «обычным» режимом адресации – Normal, и под таким именем используется, в частности, в параметрах BIOS.
ПРИМЕЧАНИЕ
Обратите внимание, что первый сектор в адресном пространстве CHS имеет номер 1, то есть CHS-адрес этого сектора – (0, 0, 1).
До появления жестких дисков большой емкости (более 528 Мбайт) проблем с адресацией данных на диске не возникало.
Однако с появлением дисков большего объема система адресации CHS была заменена линейной адресацией – LBA (Logical Block Addressing, адресация логических блоков), в которой используется «сквозная» нумерация секторов (блоков) по всем цилиндрам и головкам:
LBA = (Cylinder х Heads + Head) х Sectors + (Sector – 1).
В приведенной выше формуле использованы следующие обозначения:
Cylinder – номер цилиндра;
Heads – количество головок диска;
Head – номер головки, к которой относится адресуемый блок;
Sectors – количество секторов на дорожке;
Sector – номер адресуемого блока (сектора) на дорожке.
При этом нумерация логических блоков начинается с нуля, то есть логический блок с номером 0 в адресации LBA соответствует первому сектору в адресном пространстве CHS (то есть сектору с адресом (0, 0, 1)).
Таким образом, логический блок – это сектор, пронумерованный в соответствии с адресацией LBA.
ПРИМЕЧАНИЕ
При увеличении номера блока в первую очередь меняется номер сектора, потом номер головки, потом номер цилиндра. Отсюда следует, что цилиндры – это самые большие области смежных блоков данных. По этой причине цилиндры являются границами, по которым выравниваются разделы при их создании «вручную» (точнее, с помощью низкоуровневых редакторов дисков).
Благодаря объединению всех двоичных разрядов адреса в номер логического блока адресация LBA позволила увеличить поддерживаемую емкость дисков до 2 Тбайт, а также более гибко изменять размер кластера в зависимости от размера диска.
Кластер (Cluster) – это минимальный участок памяти на диске, который может быть выделен файловой системой при создании файла. Физически кластер представляет собой несколько смежных секторов, число которых должно быть равно степени 2 (то есть кластер может включать 1, 2, 4, 8, 16, 32 или даже 64 сектора).
ПРИМЕЧАНИЕ ____________________
Кластеры нумеруются в пределах одного логического диска, Первый кластер логического диска имеет номер 0. Для каждого логического диска пользователем может быть задан свой размер кластера. Понятие «логический диск» рассмотрено ниже.