Читайте также:
|
|
Пусть некоторый каталог содержит дескриптор файла (обозначим его А.txt), в которой содержится ссылка на начальный кластер (кластер № 12) из цепочки кластеров, выделенных этому файлу.
На рисунке 6 обычным шрифтом обозначены номера элементов FAT (номера элементов FAT соответствуют номерам кластеров), а жирным шрифтом обозначены числовые значения, записанные в этих элементах.
Рисунок 6 Пример цепочки кластеров для файла A.txt
|
Из приведенного на рисунке 6 фрагмента FAT следует:
Файл занимает цепочку из девяти кластеров: 12–13–14–17–18–20–21–22–23. Каждый элемент указывает на следующий элемент цепочки (содержит номер следующего кластера) - значение элемента № 13 равно 14, значение элемента 14 равно 17 и т.д. Последний элемент содержит специальный код EOF (FF8h) - конец файла.
Еще одна цепочка из двух кластеров начинается с кластера № 15 и кончается кластером № 16. Чтобы узнать, какому файлу (или каталогу) распределены эти кластеры, нужно отыскать в каком-либо каталоге диска дескриптор файла, содержащий ссылку на начальный кластер № 15.
Кластер № 19 помечен, как «плохой» (BAD - FF7) и не входит ни в одну из цепочек. При поиске свободных кластеров для записи нового файла этот кластер будет игнорироваться.
Кластеры № 10, 11, 24, 25, 26 пусты (точнее - объявлены таковыми). Они доступны для распределения под вновь записываемые файлы.
Каждая цепочка кластеров, выделенных системой для одного файла (подкаталога), упорядочена в порядке возрастания их номеров.
Форматы таблицы FAT(FAT12, FAT16, FAT32)
Каждый элемент таблицы FAT занимает на диске определенное место, т.е. под него выделяется определенное количество бит. Используются 12-ти, 16 32-битовые элементы FAT. Соответственно файловая система носит название FAT12, FAT16 или FAT32.
Длина элемента FAT определяет разрядность хранимого в нем двоичного числа, а значит и максимальный номер кластера, информация о котором находиться в этом элементе. Поэтому длина элемента FAT ограничивает максимальное количество кластеров, которые могут быть сформированы в рабочей области тома (для FAT12: 212 = 4096; для FAT-16: 216 = 65535; для FAT-32: 232 = 4294967296).
12-битовый формат годиться только для гибких дисков (дискет) с небольшим количеством секторов при этом вся таблица FAT помещается в одном секторе диска.
16-ти и 32-битовые версии FAT были разработаны для жестких дисков. В настоящее время используется в основном FAT32, FAT16 может использоваться только с дисками небольшого объема, которые в настоящий момент уже не применяются. Разберем почему. Пусть нам необходимо организовать файловую систему на диске объемом 4Гбайта (очевидно, что речь идет о Flash-диске). Если мы используем FAT16, количество используемых кластеров на диске может достигать 216. Вычислим размер одного кластера, размер всего диска 4*230 делим на количество кластеров:
Размер кластера = 4*230 / 216 = 216 = 64КБайта
Это значит, что даже для хранения файла размером один байт будет использовано 64 КБайта дисковой памяти, т.е. дисковое пространство используется крайне нерационально. Неиспользованная часть кластера называется потерянным местом (slack). В небольших файлах почти весь кластер может быть потерянным местом, а в среднем потери составляют половину размера кластера.
При применении FAT32 это ограничение на количество кластеров (а значит и на его размер) снимается, эта система намного эффективнее расходует дисковое пространство, так как использует кластеры меньшего размера. Размеры кластера задаются системой при форматировании диска (См. таблицу 9).
Таблица 9 Зависимость размера кластера от емкости диска
Емкость диска, Гбайт | Размер кластера, Кбайт |
Менее 8 | |
Менее 16 | |
Менее 32 | |
32 и более |
У системы FAT16 есть одно преимущество, так как она является небольшой файловой системой, ее FAT-таблица при работе целиком помещается в память. У файловой системы FAT32 кластеры небольшие, зато она сама большая и поэтому ее таблица FAT полностью в памяти не помещается. Поэтому быстродействие файловой системы FAT16 гораздо выше, чем у FAT32.
Дата добавления: 2015-08-09; просмотров: 100 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Структура каталога и дескриптора файла | | | Потерянные кластеры |