Алгоритм - Учебный центр

Версия сайта для слабовидящих
Заполните форму ниже! Мы вам перезвоним!

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


Иерархия файловой системы extX.

Иерархия файловой системы extX.

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

QIP Shot - Image: 2018-02-20 17:08:59 

Рис. 1. Иерархия файловой системы extX построенная в виде дерева.

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

Каталоги - это папки, в которых хранятся файлы, сгруппированные по какому-нибудь произвольному признаку (например, выполнимые программы, текстовые документы, библиотеки и библиотечные модули, исходные тексты программ и т. д.). Группы каталогов, в свою очередь, могут образовать логический том с главным корневым каталогом, на который может быть смонтирована та или иная файловая система. Каталоги содержат информацию о файлах: имена, длины, размеры, методы доступа, режимы и типы. Каталоги содержат важную информацию о файлах, поэтому они защищены механизмами операционной системы. Для записи и чтения информации из файла-каталога требуются системные привилегии (в отличие от обычного файла). Во всех других отношениях каталог, с точки зрения ОС, это такой же обычный файл.

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

Например, для выборки файла «client.c» (рис. 1), находящегося в каталоге «с», который находится в каталоге «tcp», который, в свою очередь, находится в каталоге «usr» и соответственно в каталоге «root» (рис. 1), служит следующая символьная строка: /usr/tcp/c/client.c. Если символьная строка начинается со знака (/), то поиск начинается с корневого каталога всей файловой системы. Имя маршрута, которое не начинается со знака (/), заставляет ОС начать поиск с текущего каталога.

Система всегда связывает каждого пользователя с определенным каталогом. Когда вы логически включаетесь в систему по команде login, вы автоматически оказываетесь в каталоге (директории) с именем home. Этот каталог назначается администратором системы при регистрации вас как пользователя. Если ваше username, к примеру, inter, то после команды login inter и введения пароля в ответ на запрос password, вы войдете в систему и автоматически перейдете в каталог /home/inter. Разумеется, после этого вы можете по команде cd (Change Directory) сменить ваш текущий каталог на какой угодно.

В системе ввода/вывода все внешние устройства рассматриваются как файлы, над которыми допускается производить обычные файловые операции. Конечно, существуют и драйверы устройств, но интерфейс с ними оформлен для пользователя как обращение к специальному файлу. Специальные файлы являются средством унификации системы ввода/вывода.

Каждому подключенному устройству (терминалу, дискам, принтеру, и т. д.), соответствует как минимум один специальный файл. Большая часть этих специальных файлов хранится в каталоге /dev (рис. 1):

$ cd /dev

$ ls -l

console пульт управления системы

dsk порции на диске

fd0 флоппи-диск 1

mem память

lр принтер

lр0 параллельный порт 0

• • •

root порция на диске для корневой файловой системы

swap своп-порция

syscon альтернативное имя пульта

systty еще одно имя для системной консоли

term директория для терминалов

ttyS0 серийный порт 0 (COM1)

• • •

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

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


Лицензия