Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


Позиция бита в шестнадцатеричном формате



 

Таблица размещения файлов

 

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

В файловой системе FAT дисковое пространство разбивается не на секторы, а на группы секторов, которые называются кластерами (ячейками размещения). Кластер содержит один или несколько секторов. Размер кластера определяется при делении диска на разделы с помощью программы Fdisk и зависит от размера создаваемого раздела. Наименьший размер диска, который может занимать файл ненулевого размера, — один кластер. Каждый файл использует целое число кластеров. Например, если файл занимает на один байт больше размера кластера, то для его размещения на диске будет выделено два кластера.

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

Каждая ячейка FAT хранит шестнадцатеричное значение длиной 12 или 16 бит. Шестнадцатиразрядные FAT более удобны в работе, так как значительно легче редактировать поля размером в два байта, чем в полтора. Чтобы самостоятельно отредактировать FAT, вы должны выполнить некоторые математические преобразования для получения номера кластера. К счастью, многие программы позволяют отредактировать FAT автоматически. В большинстве этих программ номера кластеров представлены в десятичном виде, наиболее удобном для пользователей. В табл. 26.9 приведены данные о каталоге и FAT (файл не фрагментирован).

 

 

 

В FAT кластеры с ненулевыми значениями используются, а специальное значение указывает дальнейшее расположение файла. В рассматриваемом примере в кластере 1000 указывается кластер 1001, в 1001 — 1002, в 1002— 1003, а в 1003 записано значение FFFFh, т.е. на этом кластере файл заканчивается. Рассмотрим пример с фрагментированным файлом. Пусть файл Usconst. txt записан, начиная с кластера номер 1000. А файл Pledge. txt начинается с кластера 1002. Таким образом, файл Usconst. txt становится фрагментированным. Описанная ситуация иллюстрируется данными в табл. 9

Таблица 9 Записи о фрагментированном каталоге FAT

В данном примере в файл Usconst. txt " внедряется" файл Pledge. txt, что приводит к непоследовательному расположению файлов на диске, т.е. фрагментации. В операционных системах DOS и Windows есть программы дефрагментации, которые перемещают файлы для их последовательного размещения на диске.

Первые две записи FAT зарезервированы и содержат информацию о самой FAT, все остальные указывают на соответствующие кластеры диска. Большинство записей FAT состоит из ссылок на кластеры, в которых содержатся части определенного файла, а некоторые содержат специальные шестнадцатеричные значения:

■ 0000h — кластер не используется;

■ FFF7h — как минимум один сектор в кластере поврежден и не может быть использо ван для хранения данных;

■ FFF8h—FFFFh — кластер содержит конец файла.

Тип используемых FAT определяется программой Fdisk, хотя записываются они в процессе форматирования высокого уровня программой Format. На всех дискетах применяется 12-разрядная FAT, а на жестком диске может использоваться как 12-, так и 16-разрядная FAT, в зависимости от размера логического диска. На дисках размером меньше 16 Мбайт (32 768 секторов) применяется 12-разрядная FAT, на дисках большего размера— 16-разрядная, а на дисках размером более 512 Мбайт при использовании Windows 95 OSR2 и Windows 98 — 32-разрядная FAT.

Программа Fdisk обычно создает на одном диске две копии FAT. Каждая копия занимает несколько последовательных секторов на диске, и вторая копия записывается непосредственно после первой. К сожалению, операционная система использует вторую копию FAT только в том случае, когда невозможно прочитать секторы, содержащие первую копию. Таким образом, если первая копия FAT пропадет (весьма распространенная ситуация), операционная система не будет использовать вторую копию. Даже команда Chkdsk не проверяет вторую копию FAT. Кроме того, каждый раз, когда операционная система обновляет первую копию FAT, большие участки первой копии автоматически копируются во вторую. Если же первая копия повреждена, то и вторая окажется поврежденной: после обновления FAT вторая копия отражает все изменения в первой копии, включая и ошибки. Обе копии FAT редко отличаются одна от другой, по крайней мере в течение продолжительного срока: при обновлении первая копия FAT автоматически копируется во вторую.

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

Кластер (ячейка размещения)

 

Термин кластер в DOS 4.0 был заменен термином ячейка размещения (allocation unit). Новый термин — синоним старого, так как кластер является наименьшей ячейкой на диске, которой может оперировать система при чтении или записи файла на диск. Кластер соответствует одному или (чаще всего) нескольким секторам. Это позволяет уменьшить размер FAT и ускорить работу операционной системы, так как ей приходится оперировать меньшим числом распределяемых ячеек. В то же время с увеличением размера кластера на диске растет и размер неиспользуемого дискового пространства, так как его распределение происходит с дискретностью в один кластер.

В табл. 10 приведены стандартные размеры кластеров для различных форматов дискет.

Довольно странным является то обстоятельство, что некоторые дискеты высокой плотности имеют меньший размер кластера, чем дискеты низкой плотности. Увеличивается размер FAT, увеличивается количество записей, которые должна обрабатывать операционная система, и замедляется работа самой системы. Меньший размер кластера позволяет уменьшить размер неиспользуемого дискового пространства. Все пространство между концом файла и концом последнего занимаемого кластера не используется, и в результате, чем больше размер кластера, тем больше потери дискового пространства. Кроме того, дисководы высокой плотности работают быстрее, чем их " родственники" низкой плотности. Все это позволило IBM и Microsoft пойти на уменьшение размера кластера в дискетах высокой плотности, хотя при этом и увеличивается FAT.


Таблица 10. Стандартные размеры кластеров для дискет

 

Для жестких дисков размер кластера может варьироваться в зависимости от размера раздела диска. В табл. 11 приведены размеры кластеров в зависимости от размера логического диска.

Таблица 11. Стандартные размеры кластеров

Использование кластеров больших размеров ощутимо сказывается на работе системы. Например, на диске емкостью 2 Гбайт, содержащем 5 000 файлов, со средней потерей дискового пространства в полкластера на один файл суммарные потери дискового пространства составят около 78 Мбайт [5000х(0, 5х32)].

Размер кластера и структура FAT определяют максимально возможный размер раздела. Поскольку FAT использует записи размером 16 байт для ссылки на кластер в разделе, максимально возможное число кластеров может равняться 65 536 (216). Максимальный размер кластера — 32 Кбайт, следовательно, максимально возможный размер раздела — 2 047, 6875 Мбайт.

Операционные системы Windows 95 OSR2x и Windows 98 поддерживают 32-разрядную FAT с размером кластера до 64 Кбайт. С одной стороны, использование большего количества маленьких кластеров позволяет уменьшить потери дискового пространства, а с другой — большие кластеры необходимы для больших логических дисков. Так, использование 32-разрядных FAT позволяет превысить существующий на данный момент лимит в 2 Гбайт для одного раздела до 2 Тбайт (2 048 Гбайт). Вообще же, предел в 2 Гбайт существует только для DOS; такие операционные системы, как Windows 9x и Windows NT, давно уже его преодолели.

Область данных

 

Область данных диска — это область, следующая за загрузочным сектором, таблицами размещения файлов и корневым каталогом на любом логическом диске. Эта область контролируется с помощью FAT и корневого каталога и делится на ячейки размещения, называемые кластерами. В этих кластерах и располагаются сохраняемые на диске файлы.


Поделиться:



Последнее изменение этой страницы: 2019-10-03; Просмотров: 187; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.022 с.)
Главная | Случайная страница | Обратная связь