Файловая система FAT
Эта файловая система получила свое название благодаря простой таблице, в которой указываются:
· непосредственно адресуемые участки логического диска, отведенные для размещения в них файлов или их фрагментов;
· свободные области дискового пространства;
· дефектные области диска (эти области содержат дефектные участки и не гарантируют чтение и запись данных без ошибок).
В файловой системе FAT дисковое пространство любого логического диска делится на две части: системную область и область данных.
Рис. 5.1. Структура логического диска в FAT
Системная область логического диска создается и инициализируется при форматировании, а в последующем обновляется при работе с файловой структурой. Область данных логического диска содержит обычные файлы и файлы-каталоги, эти объекты образуют иерархию, починенную корневому каталогу. Элемент каталога описывает файловый объект, который может быть либо обычным файлом, либо файлом-каталогом. Область данных, в отличие от системной области, доступна через пользовательский интерфейс операционной системы. Системная область состоит из следующих компонентов (расположенных в логическом адресном пространстве друг за другом):
· загрузочной записи (Boot Record, BR);
· зарезервированных секторов (Reserved Sectors, ResSec);
· таблицы размещения файлов (File Allocation Table, FAT);
· корневого каталога (Root Directory, RDir).
Таблица размещения файлов является очень важной информационной структурой. Можно сказать, что она представляет собой адресную карту области данных, в которой описывается и состояние каждого участка области данных, и принадлежность его к тому или иному файловому объекту.
Всю область данных разбивают на так называемые кластеры. Кластер представляет собой один или несколько смежных секторов в логическом дисковом адресном пространстве (точнее – только в области данных). Кластер – это минимальная адресуемая единица дисковой памяти, выделяемая файлу (или некорневому каталогу). Кластеры введены для того, чтобы уменьшить количество адресуемых единиц в области данных логического диска.
Каждый файл занимает целое число кластеров. Последний кластер при этом может быть задействован не полностью, что при большом размере кластера может приводить к заметной потере дискового пространства. На дискетах кластер занимает один или два сектора, а на жестких дисках его размер его размер зависит от объема раздела. В таблице FAT кластеры, принадлежащие одному файлу (или файлу-каталогу), связываются в цепочки. Для указания номера кластера в файловой системе FAT16 используется 16-ти разрядное слово, следовательно, можно иметь до кластеров (с номерами от 0 до 65 535).
В Windows NT/2000/XP разделы файловой системы FAT могут иметь размер до 4097 Мбайт. В этом случае кластер будет объединять уже 128 секторов.
Логическое разбиение области данных на кластеры как совокупности секторов взамен использования одиночных секторов имеет следующий смысл:
· прежде всего, уменьшается размер самой таблицы FAT;
· уменьшается возможная фрагментация файлов;
· ускоряется доступ к файлу, так как в несколько раз сокращается длина цепочек фрагментов дискового пространства, выделенных для него.
Однако слишком большой размер кластера ведет к неэффективному использованию области данных, особенно в случае большого количества маленьких файлов.
При выделении нового кластера для записи файла берется первый свободный кластер. Поскольку файлы на диске изменяются, то это приводит к фрагментации файлов, при которой данные одного файла могут размещаться не в смежных кластерах, а порой в очень удаленных друг от друга, образуя сложные цепочки. Это приводит к существенному замедлению при работе с файлами.
В связи с тем, что таблица FAT используется при доступе к диску очень интенсивно, она обычно загружается в оперативную память (в буферы ввода-вывода или в кэш) и остается там настолько долго, насколько это возможно. Если таблица большая, а файловый кэш, напротив, относительно небольшой, в памяти размещаются только фрагменты этой таблицы, к которым обращались последнее время.
В связи с чрезвычайной важностью таблицы FAT она обычно хранится в двух идентичных экземплярах, второй из которых непосредственно следует за первым. Обновляются копии FAT одновременно, используется же только первый экземпляр. Если он по каким-либо причинам окажется разрушенным, то произойдет обращение ко второму экземпляру.
Дата добавления: 2014-12-13; просмотров: 1466;