7.1 Структура данных на магнитном диске

В вычислительной технике любая информация представляется в виде числового кода, который называется двоичным. Наименьшая единица представления информации – бит. Обрабатывается информация группами по 8 бит – байтами.

Байтами кодируется и текст, и музыка, и рисунок. Компьютер должен уметь отличать один вид информации от другого. Для этого перед группой байтов ставится специальный заголовок, который объясняет, что эти байты обозначают. А чтобы компьютер мог определить, где кончаются байты заголовка и начинаются байты данных, заголовок и данные должны иметь строго определенный формат. Для разных видов информации используются разные форматы. Например, если это черно-белый рисунок, то каждый байт после заголовка определяет яркость каждой следующей точки, а если это цветной рисунок, то цвет одной точки может определять не один байт, а несколько байтов.

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

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

Данные в виде файлов хранятся на магнитных дисках – жестких или гибких. Каждый файл на диске имеет свой адрес. При открытии файла головка дисковода перемещается на нужное место диска и считывает заданный файл в оперативную память. Для однозначного определения местоположения любого файла диски должны иметь четкую физическую и логическую структуру. Эта структура создается в процессе форматирования диска.

Форматирование разделяется на низкоуровневое форматирование (физическое) и форматирование верхнего уровня (логическое).

При низкоуровневом форматировании диск разбивается на дорожки – концентрические окружности, пронумерованные от края к центру. Внешняя дорожка (нулевая) содержит служебную информацию.

Жесткие диски для увеличения объема хранящейся информации состоят из нескольких магнитных дисков, поверхности которых обслуживаются отдельными головками. Но условно считают, что это все же один диск, у которого не 2 стороны, а 8 или 16. Каждый из таких дисков тоже разбивается на дорожки. Дорожки с одинаковыми номерами называются цилиндром. Запись информации на диск идет по цилиндрам – от края (нулевого) к центру.

Дорожки, в свою очередь, разбиваются на секторы. Сектор и является минимальным блоком информации, который может быть записан на диск или считан с него. В начале каждого сектора имеется служебная область, за которой следует поле данных и поле контрольного кода. В заголовке указываются номер цилиндра, головки и собственно сектора. Тут же может содержаться и пометка о дефектности сектора, служащая указанием на невозможность его использования для хранения данных. Достоверность этих показаний проверяется с помощью контрольного кода. Заголовки секторов записываются во время операции низкоуровневого форматирования сразу для всей дорожки. Стандартный размер поля данных сектора – 512 байт.

При форматировании верхнего уровня производятся следующие действия:

  1. Размечается область данных с помощью электромагнитного поля, создаваемого записывающей головкой дисковода. Разметка используется для записи и чтения информации, коррекции скорости вращения дисковода. Область данных диска разбивается на кластеры – группы смежных секторов. Кластер – это минимальный размер адресуемого пространства. Каждый кластер имеет свой номер. Размер кластера (число секторов) выбирается кратным степени числа 2, в зависимости от объема диска и размера FAT. Файлу на диске выделяется целое число секторов, но не меньше одного. Если файл занимает более одного кластера, то все кластеры, занимаемые файлом, организуются в цепочку кластеров.
  2. Записывается загрузочный сектор. Он содержит таблицу, описывающую все параметры диска, а также короткую программу, используемую в процедуре начальной загрузки ОС. Если диск готовится как системный, то там будет программа загрузки ОС. Если нет – там будет программа, которая при попытке загрузки с этого диска ОС выведет сообщение, что данный диск не является системным.
  3. Записывается FAT – таблица размещения файлов, в которой компьютер запоминает адреса записанных файлов. Если надо считать какой-либо файл, то компьютер по его имени находит в этой таблице его адрес и переводит в нужное место магнитную головку дисковода для его считывания. Если таблица размещения файлов будет повреждена, то информация, имевшаяся на диске, будет утрачена. Физически она там, конечно, останется, но к ней нельзя будет обратиться. Поэтому FAT для надежности дублируется. При любых повреждениях компьютер по копии сам восстанавливает эту таблицу. Благодаря этому можно годами работать с компьютером и не терять информацию. ОС MS DOS и Windows используют файловые системы FAT16 и FAT32. Адрес файла в FAT16 записывается двухбайтным числом (16 бит), т.е. всего имеется 216 разных адресов. Значит, максимальное число файлов на диске – 65536. Современные жесткие диски имеют очень большие объемы, и им не хватает такого количества адресов. Если объем диска, например, равен 2 Гигабайт, то размер кластера будет равен 32 Кб (2Гб/65536). Это намного больше размера сектора (512 б). Каким бы маленьким не был файл, он все равно займет целый кластер, и все неиспользуемые сектора в нем просто пропадут. В FAT32 адрес записывается четырехбайтным числом. Понятно, что адресов в этом случае больше, а размеры кластеров – меньше. Нерациональные потери уменьшаются.
  4. Создается пустой корневой каталог, в котором впоследствии будет регистрироваться вся записываемая информация. При регистрации файла в каком-либо каталоге, в нем записывается номер стартового кластера этого файла. Для считывания данного файла по этому номеру в FAT будет указание, в каком кластере находится продолжение файла (или его конец).

Форматирование осуществляет утилита FORMAT. При форматировании дисков под управлением ОС MS DOS используют команду

FORMAT имя диска (параметры)

В ОС Windows эта утилита находится в файле C:\Windows\Command\format.com. При форматировании дисков удобно пользоваться окном папки Мой компьютер. В контекстном меню каждого из дисков имеется команда Форматировать. В открывающемся диалоговом окне Форматирование можно задать желаемую емкость диска и другие параметры форматирования.