Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Виртуальные файловые системы






 

Операционные системы POSIX -совместимые поддерживают еще и несколько типов виртуальных файловых систем, которые располагаются в оперативной памяти и служат для специальных целей.

Первой виртуальной файловой системой была система процессов – procfs, которая представляла протекающие в системе процессы в виде файлов каталога / proc, откуда получали информацию о процессах команды типа ps и top.

В каталоге / proc каждому процессу соответствует подкаталог, именем которого является идентификатор процесса (номер в порядке запуска). Внутри такого подкаталога находится набор файлов, содержимое некоторых из них можно посмотреть. Важная информация содержится в файлах корня / proc. Используя команды просмотра, можно посмотреть следующую информацию: о процессоре (/proc/cpuinfo); о текущей конфигурации ядра системы (/ proc/config.gz); о загруженных его модулях (/proc/modules), об устройствах, подсоединенных к шине PCI (/ proc / pci), сведения о сетевой карте и внутреннем модеме, необходимые для правильной их настройки.

Другой виртуальной файловой системой является файловая система устройств – devfs, которая по умолчанию задействована во FreeBSD 5-й ветки и во многих современных дистрибутивах Linux. Благодаря devfs, файлы устройств стали создаваться автоматически при старте системы. Если в ходе работы недостанет какого-либо устройства, из числа поддерживаемых, то автоматически будет создан файл соответствующий этому устройству. Файловая система devfs сделала очень легким подключение устройств типа карт PCMCIA, USB -накопителей, цифровых камер и сканеров. Достаточно воткнуть USB -драйв в соответствующий разъем и в каталоге / dev появится соответствующий ему файл.

В настоящее время в Linux файловая система устройств постепенно заменяется системой поддержки динамического именования устройств – udev. В отличие от devfs, udev – пользовательская программа (входящая в одноименный пакет) и при ее использовании необходимость в поддержке devfs отпадает. Для своего функционирования udev нуждается в виртуальной файловой системе – sysfs, но ее поддержка в ядрах серии 3.6.X осуществляется автоматически (а сама эта файловая система монтируется по умолчанию в каталог / sys). Udev присваивает имена всем устройствам, в том числе и при их подключении.

Любой POSIX -системе имена файлов конкретных устройств более или менее безразличны, так как оперирует она не с ними, а с их идентификаторами. Ранее в качестве таковых выступали старший и младший номера устройства, определяющие их класс и конкретный его экземпляр. В udev стали использоваться идентификаторы устройств (сериальный номер винчестера, его положение на канале IDE -шины и т.д.), сочетание которых для каждого диска (раздела) уникально. Программа udev извлекает эти сведения из файловой системы sysfs и, руководствуясь определенными правилами, ставит им в соответствие имена (например, / dev / hda).

Во FreeBSD и многих дистрибутивах Linux используется также файловая система в оперативной памяти, именуемая mfs в первом случае и tmpfs – во втором случае. Системы реализованы по-разному, но с точки зрения пользователя выглядят одинаково, как дисковые разделы, смонтированные в некоторые каталоги. Они заменяют собой блочные устройства там, где требуется быстрая, но не обязательно долговременная запись. Эти системы целесообразно использовать для промежуточных каталогов при архивации, разархивации, пакетной конвертации графических файлов, компиляции программ.

В отличие от стандартных файловых систем для хранения данных mfs и tmpfs не нуждаются в своем создании. Для их использования достаточно факта поддержки ядром (непосредственно или в виде модуля) и монтирования в какой-либо каталог. Обычно таким каталогом выступает / tmp, содержимое которого не должно сохраняться после рестарта системы. В BSD -системах в некоторых случаях целесообразно монтирование mfs в каталог / usr / obj, предназначенный для промежуточных продуктов компиляции при сборке ядра и базовых компонентов. В Linux одно из штатных мест монтирования tmpfs – каталог / dev / sh.

 






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.