- •Файловая система. Принципы построения файловых систем
- •1 Общая модель файловой системы
- •2 Логическая организация файловой системы
- •2.1 Типы файлов
- •2.2 Иерархическая структура файловой системы
- •2.3 Имена файлов
- •4. Современные архитектуры файловых систем
- •3 Физическая организация файловой системы
- •3.1 Структура файловой системы
- •3.2 Дисковые квоты
2 Логическая организация файловой системы
2.1 Типы файлов
Файловые системы поддерживают несколько функционально различных типов файлов, в число которых, как правило, входят обычные файлы, файлы-каталоги, специальные файлы, именованные конвейеры, отображаемые в память файлы и др.
Обычные файлы (или просто файлы), содержат информацию произвольного характера, которую заносит в них пользователь или которая образуется в результате работы системных пользовательских программ. Большинство современных операционных систем никак не ограничивает и не контролирует содержимое и структуру обычного файла. Содержание обычного файла определяется приложением, которое с ним работает. Например, текстовый редактор создает текстовые файлы; исполняемый код программы и архивный файл – это файлы в двоичном формате. Все операционные системы должны уметь распознавать хотя бы один тип файлов – их собственные исполняемые файлы.
Каталоги – это особый тип файлов, которые содержат системную справочную информацию о наборе файлов, сгруппированных пользователями по какому-либо неформальному признаку. Во многих операционных системах в каталог могут входить файлы различных типов, в том числе другие каталоги, за счет чего образуется древовидная структура, удобная для поиска. Каталоги устанавливают соответствие между именами файлов и их характеристиками, используемыми файловой системой для управления файлами. В число таких характеристик входит, в частности, информация (или указатель на структуру, содержащую эти данные) о типе файла и расположении его на диске, о правах доступа к файлу, датах его создания и модификации. Во всех остальных отношениях каталоги рассматриваются файловой системой как обычные файлы.
Специальные файлы – это фиктивные файлы, ассоциированные с устройствами ввода/вывода, которые используются для унификации механизма доступа к файлам и внешним устройствам. Специальные файлы позволяют пользователю выполнять операции ввод/вывода посредством обычных команд записи в файл или чтения из файла. Эти команды обрабатываются сначала программами файловой системы, а затем на некотором этапе выполнения запроса преобразуются операционной системой в команды управления соответствующими устройствами.
2.2 Иерархическая структура файловой системы
Большинство файловых систем имеет иерархическую структуру, в которой уровни создаются за счет того, что каталог более низкого уровня может входить в каталог более высокого уровня.
Граф, описывающий иерархию каталогов, может быть деревом или сетью.
К
аталоги
образуют дерево, если файлу разрешено
входить только в один каталог
(например, MS-DOS, Windows),
и сеть – если файл может входить сразу
в несколько каталогов (Unix).
В древовидной структуре каждый файл является листом. Каталог самого верхнего уровня называется корневым каталогом или корнем (root).
Иерархическая структура удобна для многопользовательской работы: каждый пользователь со своими файлами локализуется в своем каталоге или поддереве каталогов, и вместе с тем все файлы в системе логически связаны.
