Файлы файловая система

Автор работы: Пользователь скрыл имя, 14 Июня 2012 в 22:01, реферат

Описание работы

В большинстве файловых систем имя файла используется для указания к какому именно файлу производится обращение. В различных файловых системах ограничения на имя файла сильно различаются:
В FAT16 и FAT12 размер имени файла ограничен 8 символами (плюс 1 (точка) плюс 3 символа расширения).
В VFAT ограничение 255 байт.
В FAT32, HPFS имя файла ограниченно 255 символами
В NTFS имя ограничено в некоторых ОС 255 символами

Файлы: 1 файл

1готовая курсовая.docx

— 135.83 Кб (Скачать файл)

     Длинное имя файла в VFAT представлено следующим образом.

     Первые 11 байт элемента каталога DOS используются для хранения имени файла. Такое имя состоит из двух частей: в первых восьми байтах хранятся символы собственно имени, а в последних трех – символы расширения имени файла. Если имя состоит менее чем из восьми символов, то в элементе каталога оно дополняется символами пробела, для того чтобы полностью заполнить все восемь байтов. При работе с именем файла необходимость в отображении точки, которая используется для отделения имени файла от расширения, отпадает. В 12-ом байте элемента каталога хранятся атрибуты файла:

  1. А – архив. Показывает, что файл был открыт программой имеющей возможность изменить его содержимое.
  2. D – каталог. Показывает, что данный элемент указывает на подкаталог (папку), а не на файл.
  3. V – том (volume). Применяется только к одному элементу каталога в корневом каталоге. В нем собственно и хранится имя дискового тома.
  4. S – системный. Показывает, что файл является частью операционной системы или специально помечен подобным образом.
  5. H – скрытый. К скрытым файлам относятся также системные файлы.
  6. R – только для чтения. Указывает, что данный файл не следует изменять. Этот атрибут используется для примитивной защиты от ошибок пользователя.

     На  дисках с FAT 12 или FAT 16 следующие 10 байт не используются. На диске с FAT 32 они содержат различную информацию о файле. Тринадцатый байт зарезервирован для Windows NT и в подсистеме DOS не используется.

     Для длинного имени файла используется несколько элементов каталога. Таким  образом, применение длинных имен приводит к уменьшению количества файлов, находящихся  в корневом каталоге. Длинное имя  может содержать до 256 символов и  всего один файл с полным длинным  именем займет до 25 элементов таблицы  FAT. При этом на диске с файловой системой FAT 16 максимальное число файлов в корневом каталоге сократится до 21. Поэтому необходимо избегать длинных имен файлов в корневом каталоге. Длинна полной спецификации файла, включающая в себя путь к файлу и его имя, также ограничена. В файловой системе FAT 32 успешно решена проблема длинных имен в корневом каталоге, но проблема с ограничением длинны полной файловой спецификации остается. Поэтому рекомендуется ограничивать длинные имена 75-80 символами, для того чтобы оставить достаточно места для пути к файлу.

 

     4. Файловая система  HPFS

 

     Файловая  система HPFS (высокопроизводительная файловая система) впервые появилась в операционной системе OS/2. HPFS является файловой системой для многозадачного режима работы, поддерживает длинные имена файлов, и обеспечивает высокую производительность при работе с дисками большого объема. Она, как и FAT, имеет древовидную структуру каталогов, но в ней еще предусмотрены автоматическая сортировка каталогов и специальные расширенные атрибуты, упрощающие обеспечение безопасности на файловом уровне и создание множественных имен. Расширенные атрибуты позволяют хранить дополнительную информацию о файле. Например, каждому файлу может быть сопоставлено его индивидуальное графическое изображение (значок).

     По  сравнению с FAT HPFS обладает более высокой производительностью, надежностью, и эффективнее использует дисковое пространство. Еще одна особенность заключается в том, что пространство, освобожденное стертым файлом, обычно используется не сразу и файл можно восстановить.

     Для достижения более этого в HPFS применяется:

     - размещение каталогов в середине  дискового пространства;

     - используется метод бинарных  сбалансированных деревьев, для  ускорения поиска информации  о файле;

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

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

     Все эти преимущества обусловлены структурой диска с файловой системой HPFS.

     В начале диска расположено несколько  управляющих блоков. Все остальное  дисковое пространство разбито на множество  областей из смежных секторов, или  полос. В каждой области располагаются  сами файлы и служебная информация о свободных и занятых секторах в этой области. Каждая полоса занимает на диске 8 Мб и имеет собственную  битовую карту распределения  секторов. Эти битовые карты показывают, какие секторы данной полосы заняты, а какие свободны. Каждому сектору  полосы данных соответствует один бит  в её битовой карте. Битовые карты  двух полос располагаются на диске  рядом, как и сами полосы (рис. 3). Такое  расположение полос и битовых  карт позволяет непрерывно разместить на диске файл размером до 16 Мб, без  отдаления от самого файла информацию об его местонахождении. Если бы на весь логический диск была бы только одна адресная структура данных (как в  FAT), то для работы с ней приходилось бы перемещать головки чтения/записи в среднем через половину диска. Именно для исключения таких потерь диск в HPFS разделен на полосы.

     Дисковое  пространство в HPFS выделяется не кластерами, а блоками. Размещение файлов в таких небольших блоках позволяет экономить дисковое пространство. Так потери составляют в среднем всего 256 байт на файл.

 
Загрузочный блок Дополнительный  блок Резервный блок Полоса 1 Битовая карта 1 Битовая карта 2 Полоса 2 Полоса 3 Битовая карта 3 Битовая карта 4 Полоса 4

     Рис. 3 Структура раздела HPFS

 

     Кроме полос с записями файлов и битовых  карт на томе (логическом диске) HPFS имеются еще загрузочный блок, дополнительный блок и резервный блок. Загрузочный блок содержит имя тома, его серийный номер, блок параметров BIOS и программу начальной загрузки. Блок параметров BIOS содержит информацию о жестком диске – количестве цилиндров и головок диска, числе секторов на дорожке. Эта информация используется программными модулями HPFS для поиска нужного сектора.

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

     Резервный блок содержит указатель на карту  аварийного замещения, указатель на список свободных запасных блоков каталогов, используемых для операций на почти  переполненном диске, и ряд системных  флагов и дескрипторов. Резервный  блок обеспечивает высокую отказоустойчивость файловой системы HPFS, позволяя восстанавливать поврежденные данные.

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

     Файловый  узел содержит размер файла и первые 15 символов имени файла, специальную  служебную информацию, статистику доступа  к файлу, расширенные атрибуты файла  и список управления доступом.

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

     Файловая  система HPFS при записи файла на диск стремится избежать фрагментации. Если файл непрерывен то, его размещение описывается двумя 32-разрядными числами. Первое число представляет собой указатель на первый блок файла, а второе – длину экстента, то есть число следующих друг за другом блоков, принадлежащих файлу. Из этого следует, что максимальный объем диска в HPFS составляет 2 Тб. Если файл фрагментирован, то размещение его экстентов описывается дополнительными парами 32-разрядных чисел. Фрагментация происходит, когда на диске нет непрерывного свободного участка, достаточного для размещения файла целиком. В этом случае файл делится на несколько частей и располагается в разных местах диска. Файловая система HPFS старается поместить части фрагментированного файла как можно ближе друг к другу, для того чтобы сократить время позиционирования головок чтения/записи при чтении файла с жесткого диска. Также файловая система старается резервировать минимум 4 Кб места в конце файлов подлежащих изменению.

     Пользовательская  программа может указать размер файла при его создании. В этом случае система сразу попытается выделить место под файл так, чтобы  он занимал как можно меньше экстентов. Если программа не сообщила размера  файла, используется значение по умолчанию. Фактически, HPFS размещает место, под  файл, начиная выделение с наибольшего  непрерывного участка свободного пространства. В результате фрагментированными оказываются  только файлы, длина которых увеличивалась  многократно или же те, которые  создавались при почти заполненном  диске. При нормальной работе файл редко  занимает больше 3—4 экстентов.

     В файловом узле можно поместить информацию о 8 экстентах файла. Если их больше, то в файловый узел этого файла  записывается указатель на блок размещения, который может содержать до 40 указателей на экстенты или другие блоки размещения.

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

     При переименовании файлов может возникнуть перебалансировка дерева. Попытка переименования может закончиться неудачей из-за недостатка дискового пространства, даже если файл в размере не увеличится. Для предотвращения этого HPFS имеет маленький пул свободных блоков, используемых при недостатке места. Указатель на этот пул хранится в резервном блоке.

     Файловая  система HPFS для исправления ошибок, возникающих при записи файлов на диск, использует механизм аварийного замещения. Информация, предназначенная для записи в сектор, оказавшийся дефектным, сохраняется в одном из запасных секторов, заранее зарезервированных на этот случай. Их список хранится в резервном блоке файловой системы. Затем происходит обновление карты аварийного замещения. Она представляет собой пары 32-разрядных чисел. Первое число такой пары указывает на дефектный сектор, а второе на сектор его замещающий. Очистка карты аварийного замещения выполняется программой CHKDISK при проверке тома HPFS. Для каждого замещенного блока (сектора) выделяется новый сектор в наиболее подходящем месте. Затем данные записываются в этот сектор, и обновляется информация о положении файла. После этого программа вносит поврежденный сектор в список дефектных блоков, и возвращает освобожденный сектор в список свободных запасных секторов резервного блока. После этого происходит удаление записей из карты аварийного замещения.

     Существует  еще одна реализация HPFS для работы на серверах – HPFS386.IFS. Ее отличие в том, что она позволяет посредством более полного использования расширенных атрибутов, организовать ограничение доступа к файлам, с помощью списков управления доступом. Также в этой системе нет ограничения на объем памяти, выделяемой для кэширования файловых записей. В HPFS этот объем не может превышать 2 Мб.

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

 

     5. Файловая система  NTFS

 

     Файловая  система NTFS (файловая система новой технологии), как и многие другие файловые системы, делит дисковое пространство тома на кластеры размером от 512 байт до 64 Кб. На практике размер кластера обычно не превышает 4Кб. Все дисковое пространство в NTFS делится на две неравные части (рис.4). Первые 12% диска отводятся под зону MFT – главной таблицы файлов. Эта таблица представляет собой специальный файл, содержащий информацию о размещении всех остальных файлов. Остальные 88% тома представляют собой обычное пространство для записи файлов.

Информация о работе Файлы файловая система