Сделай Сам Свою Работу на 5

Каталоги в файловых системах

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

Введение в файловые системы

Предпосылки к появлению файлов и файловых систем,

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

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

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

Требования к файловым системам

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

  • Должны хранить очень большие объемы информации
  • Информация сохраняется после завершения работы процесса и вычислительной системы в целом
  • Несколько процессов должны иметь возможность получения одновременного доступа к информации

Определение файла, устойчивость файла

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

 

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

Определение файловой системы, состав файловой системы

Файлами управляет операционная система. Их структура , именование, использование защита являются важной частью операционной системы.

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



В понятие "файловая система" входит:

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

Разделы для установки файловых систем

Часто физически накопитель имеет размер много больший, чем тот, с которым может работать файловая система. Кроме этого часто есть необходимость на одном физическом диске иметь несколько файловых систем разного типа. Для реализации этого жесткий диск делится на части, называемые разделами или партициями (partition). Разбивка на разделы выполняется до формирования файловой системы. Файловая система лишь пользуется данными разбивки на разделы.

Имена файлов

Файлы и пользователи.

Файлы – это абстрактный механизм. Они предоставляют способ хранить на диске информацию, но скрывают от пользователя детали механизма хранения. Наиболее важной характеристикой, с точки зрения пользователя, является именование файлов.

Символы имени файла и ограничения, накладываемые на имя операционной системой.

Точные правила именования варьируются в разных операционных системах по-разному. Например, большинство операционные системы поддерживают 8-ми символьные имена, некоторые из них разрешают 32-х или 255-символьные имена. Часто в именах разрешается использование знаков и цифр. Некоторые операционные системы как, например Unix, различают в именах файлов заглавные и строчные символы. Другие считают заглавную и строчную буквы одной и той же в имени.

Кодировка символов для разных операционных систем может также различаться. Так, например, кодировка имен файловой системы NTFS Windows NT использует Unicode, в то время как, также используемая ей файловая система FAT, не использует Unicode.

Структура имени

Системы семейства Windows содержат имена, состоящие из двух частей: собственно 8-ми символьного имени и 3-х символьного расширения (для Windows 9x и более поздних разрешена большая длина имени). Обработка имен файлов идет в соответствии с его именем. Часть расширений имеют стандартную обработку. Так, например, файлы с расширением *.exe являются загружаемыми файлами.

Для Unix семейства расширения являются просто соглашениям, а не руководством к действию для операционной системы. В этих системах файлы могут иметь несколько расширений, показывая пользователю, в какой последовательности и какими программами файл должен быть обработан. Например, файл man.1.bz2 содержит в себе первую страницу руководства, упакованную архиватором bzip2. Если дать команду man 1 man, то система найдет этот файл, распакует его и отформатирует руководство в стандартном формате man-страниц.

Логическая структура файлов

Неструктурированные файлы,

Файлы могут быть структурированы несколькими способами.

Самый простой тип файла по структуре – неструктурированный файл. Этот файл рассматривается операционной системой как простая последовательность байт. Такой подход дает прикладной программе широкие возможности по использованию файла. Операционная система не вмешивается в этот процесс. Так организованы файлы в файловых системах Unix и Windows семействах операционных систем.

Записи фиксированной длины,

Второй подход – структурирование файла, как набора записей фиксированной длины, каждая со своей внутренней структурой. Особенностью таких файлов является то, что за одну операцию чтения/записи происходит работа только с одной записью. Примером такой файловой системы может быть представлена файловая система мэйнфреймов времен пакетных операционных систем. Поскольку одна перфокарта имела 80 колонок (символов), то и файлы представляли собой наборы 80-ти символьных записей. В настоящее время файловых систем такого типа нет.

Деревья записей

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

Типы файлов

Файлы бывают трех типов: регулярные файлы, специальные файлы, файлы-каталоги. Регулярные (или обычные) файлы– это файлы, содержащие данные пользователя. В свою очередь они подразделяются на текстовые и двоичные файлы.

Текстовые файлы состоят из строк символов, представленных в ASCII-коде (или в каком-либо другом коде, представляющем символы). Также файлы могут содержать некоторое количество управляющих символов, таких как, символ перевода строки, возврат каретки и т.д. Это могут быть документы, исходные тексты программ. Текстовые файлы можно прочитать на экране, отредактировать или распечатать на принтере, никак их дополнительно не преобразовывая. Зачастую, текстовые файлы содержат внутри себя информацию, помогающую отформатировать их при использовании определенных программ. Примером таких файлов могут служить файлы rtf -формата, html-файлы.

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

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

Каталоги в файловых системах

Файлы-каталоги

Кроме файлов-устройств ввода/вывода в файловой системе могут присутствовать файлы-каталоги.

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

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



©2015- 2019 stydopedia.ru Все материалы защищены законодательством РФ.