Реферат: Файловые системы 2
Рис.1 Структура файловой системы FAT
В таблице FAT кластеры, принадлежащие файлу или каталогу, связываются в цепочки. В 16-разрядной FAT можно иметь до 65536 кластеров. В операционных системах WindowsNT/2000/XP разделы FAT могут иметь до 4097 Мб. В этом случае кластер занимает 128 секторов диска.
Логическое объединение секторов в кластеры позволяет уменьшить размер таблицы FAT и ускорить доступ к файлу. Однако слишком большой размер кластера приводит к неэффективному использованию области данных, особенно при большом количестве маленьких файлов. Например, при размере кластера в 32 сектора (16 Кб) средняя величина потерь на файл составляет 8 Кб. Поэтому в современных файловых системах размер кластера не превышает 4 Кб.
Поскольку файлы на диске подвержены изменению (удаляются, перемещаются, увеличиваются или уменьшаются), то выделение первого свободного кластера для новой порции данных приводит к фрагментации файлов. Данные одного файла могут располагаться не в смежных кластерах, а в удаленных друг от друга.
Таблица FAT является основой данной файловой системы, поэтому она хранится на диске в двух экземплярах. Обновляются копии FAT одновременно, а для работы используется только первый экземпляр. Если он окажется поврежденным, то произойдет обращение ко второму экземпляру. Утилиты проверки и восстановления файловой системы при обнаружении несоответствия первичной и резервной таблицы FAT осуществляет восстановление основной таблицы, используя данные из её копии.
В файловой системе FAT дисковое пространство логического диска делится на системную область и область данных. Системная область создается и инициализируется при форматировании диска, а в последующем обновляется при работе. Область данных содержит файлы и каталоги, которые образуют на диске иерархическое дерево каталогов, с единственной директорией не входящей в другие – корневым каталогом. Область данных доступна через пользовательский интерфейс операционной системы. Системная область содержит загрузочную запись, зарезервированные сектора, таблицу размещения файлов и корневой каталог. Для каждого файла и каталога в файловой системе хранится справочная информация. Каждый элемент такого справочника занимает 32 байта и содержит: имя файла или каталога, расширение имени файла, атрибуты файла – системный, архивный, только для чтения и др., дату и время создания и последнего изменения файла, номер начального кластера, размер файла.
Система FAT очень проста и имеет одно серьезное достоинство: устойчивость к сбоям. В то же время у нее есть и ряд серьезных недостатков. Первый недостаток состоит в том, что при каждой операции над файлами система должна обращаться к FAT. Это приводит к частым перемещениям головок дисковода и в результате к резкому снижению производительности. Действительно, исполнение программы на одной и той же машине под MS DOS и под DOS-эмулятором систем UNIX или OS/2 различается по скорости почти в 1,5 раза. Особенно это заметно при архивировании больших каталогов.
Файловая система FAT 16 может иметь не более 65535 кластеров на логический диск, и это приводит к ограничению размера логического диска. С увеличением размера диска приходится увеличивать размер кластеров, что приводит к крайне неэффективному и бесполезному расходу дискового пространства.
3. Файловая система FAT32
FAT32 – последняя версия файловой системы FAT и улучшение предыдущей версии. Она была создана, чтобы преодолеть ограничения на размер тома в FAT16, позволяя при этом использовать старый код программ MS-DOS и сохранив формат. FAT32 использует 32-разрядную адресацию кластеров. FAT32 появилась вместе с Windows 95 OSR2.
FAT32 намного эффективнее расходует дисковое пространство. Кластеры в этой файловой системе меньше, чем кластеры в предыдущих версиях FAT. Следовательно, для дисков размером до 8 Гб FAT 32 может использовать кластеры размером 4 Кб. Таблица размещения файлов в FAT 32 может содержать до кластеров (в 32-разрядном коде, используемом для представления номера кластера, фактически используются только 28 разрядов). Система FAT 32 также может перемещать корневой каталог и использовать резервную копию FAT вместо стандартной. Расширенная загрузочная запись позволяет создавать копии важных структур данных. Это повышает устойчивость файловой системы к нарушениям структуры таблицы размещения данных. Корневой каталог представлен в виде обычной цепочки кластеров и может находиться в произвольном месте диска. Файловая система FAT 32 имеет ряд усовершенствований структуры корневого каталога. Для представления длинных имен используются элементы корневого каталога.
Для этого число файлов в нем увеличено с 512 до 2048. Кроме того, для того чтобы снизить расход элементов каталога на описание файлов с длинными именами, рекомендуется не давать файлам слишком длинные имена.
Длинное имя файла в VFAT представлено следующим образом.
Первые 11 байт элемента каталога DOS используются для хранения имени файла. Такое имя состоит из двух частей: в первых восьми байтах хранятся символы собственно имени, а в последних трех – символы расширения имени файла. Если имя состоит менее чем из восьми символов, то в элементе каталога оно дополняется символами пробела, для того чтобы полностью заполнить все восемь байтов. При работе с именем файла необходимость в отображении точки, которая используется для отделения имени файла от расширения, отпадает. В 12-ом байте элемента каталога хранятся атрибуты файла:
1) А – архив. Показывает, что файл был открыт программой имеющей возможность изменить его содержимое.
2) D – каталог. Показывает, что данный элемент указывает на подкаталог (папку), а не на файл.
3) V – том (volume). Применяется только к одному элементу каталога в корневом каталоге. В нем собственно и хранится имя дискового тома.
4) S – системный. Показывает, что файл является частью операционной системы или специально помечен подобным образом.
5) H – скрытый. К скрытым файлам относятся также системные файлы.
6) R – только для чтения. Указывает, что данный файл не следует изменять. Этот атрибут используется для примитивной защиты от ошибок пользователя.
На дисках с FAT12 или FAT16 следующие 10 байт не используются. На диске с FAT 32 они содержат различную информацию о файле. Тринадцатый байт зарезервирован для WindowsNT и в подсистеме DOS не используется.
Для длинного имени файла используется несколько элементов каталога. Таким образом, применение длинных имен приводит к уменьшению количества файлов, находящихся в корневом каталоге. Длинное имя может содержать до 256 символов и всего один файл с полным длинным именем займет до 25 элементов таблицы FAT. При этом на диске с файловой системой FAT16 максимальное число файлов в корневом каталоге сократится до 21. Поэтому необходимо избегать длинных имен файлов в корневом каталоге. Длина полной спецификации файла, включающая в себя путь к файлу и его имя, также ограничена. В файловой системе FAT32 успешно решена проблема длинных имен в корневом каталоге, но проблема с ограничением длинны полной файловой спецификации остается. Поэтому рекомендуется ограничивать длинные имена 75-80 символами, для того чтобы оставить достаточно места для пути к файлу.
4. Файловая система HPFS
Файловая система HPFS (высокопроизводительная файловая система) впервые появилась в операционной системе OS/2. HPFS является файловой системой для многозадачного режима работы, поддерживает длинные имена файлов, и обеспечивает высокую производительность при работе с дисками большого объема. Она, как и FAT, имеет древовидную структуру каталогов, но в ней еще предусмотрены автоматическая сортировка каталогов и специальные расширенные атрибуты, упрощающие обеспечение безопасности на файловом уровне и создание множественных имен. Расширенные атрибуты позволяют хранить дополнительную информацию о файле. Например, каждому файлу может быть сопоставлено его индивидуальное графическое изображение (значок).
По сравнению с FATHPFS обладает более высокой производительностью, надежностью, и эффективнее использует дисковое пространство. Еще одна особенность заключается в том, что пространство, освобожденное стертым файлом, обычно используется не сразу и файл можно восстановить.
Для достижения более этого в HPFS применяется:
· размещение каталогов в середине дискового пространства;
· используется метод бинарных сбалансированных деревьев, для ускорения поиска информации о файле;
· информация о местоположении файловых записей рассредоточена по всему диску, при размещении самого файла (по возможности) в смежных секторах и вблизи от данных об их местоположении.