Читайте также: |
|
ОС unix поддерживает несколько десятков файловых систем. Это происходит благодаря наличию виртуальной файловой системы, которая занимается интегрированием всех поддерживаемых файловых систем. Файл в системе linux – это последовательность байтов, содержащая произвольную информацию. Не делается различия между текстовыми файлами, двоичными файлами и любыми другими типами файлов. Имена файлов ограничены 255 символами. По соглашению многие программы ожидают, что имена файлов будут состоять из основного имени и расширения, разделенных точкой. Для удобства файлы могут группироваться в каталоги. Каталоги хранятся на диске в виде файлов и в значительной степени с ними можно работать как с файлами. Каталоги могут содержать подкаталоги, что приводит к иерархической файловой системе. Символ / - это корневой каталог, все остальные каталоги так же обозначаются через косую черту. Существует два способа задания имени файла в системе linux. Первый способ заключается в использовании абсолютного пути (absolute path). В данном случае указывается, как найти файл относительно корневого каталога. Данный способ является крайне неудобным, т.к. каждый раз приходится указывать полный путь к данному файлу, поэтому в системе liniux есть возможность назначать рабочий каталог. Имена путей к файлу могут указываться относительно данного рабочего каталога. Случаются ситуации, когда пользователю необходимо обращаться к файлу, с которым работает другой пользователь, т.е. который находится в другом дереве каталогов. При классическом подходе пользователю каждый раз нужно указывать абсолютный путь, однако, при использовании ссылок можно создать специальный файл, к которому обращаются так же, как и при использовании абсолютного пути. Кроме обычных файлов linux так же поддерживает символьные специальные файлы и блочные специальные файлы. Рассмотрим пример системы, в которой существуют несколько видов носителей информации. Пусть имеется 2 жестких диска и дисковод для оптических дисков. У каждого из них может быть своя файловая система. Следует отметить так же, что данные носители могут быть расположены не в одной системе. Одним из подходов в управлении является создание отдел управления ими по отдельности. Такой подходо реализован в системе windows. В системе linux применяется иное решение, которое заключается в монтировании одного диска в дерево файлов другого диска. Рассмотрим содержание некоторых каталогов:
/bin – в данном каталоге содержатся двоичные программы
/dev – специальные файлы для устройств ввода-вывода
/etc – различные системные файлы.
/lib – библиотеки
/usr – файлы и каталоги пользователя
2*. Виртуальная файловая система linux.
Vfs определяет набор основных абстракций файловой системы и разрешенные с этими абстракциями операции. Существует 4 основные структуры файловой системы, поддерживаемые vfs:
-суперблок (конкретная файловая система). Суперблок содержит критичную информацию о компоновке файловой системы. Разрушение суперблока делает файловую систему нечитаемой.
-i-узел – конкретный файл.
Следует обратить внимание на то, что и каталоги и устройства также представлены в виде i-узлов
-Элемент каталога – данный элемент содержит компонент пути
- Файл – это открытый и связанный с каким-либо процессом файл. Данная структура создается при помощи системного вызова open.ьной файловой системы для каждого из носителей и
Дата добавления: 2014-12-19; просмотров: 127 | Поможем написать вашу работу | Нарушение авторских прав |