Файловая система
Категория: Файловая система | Автор: admin | 30-09-2009, 04:32

Ответьте, не раздумывая, на вопрос: что из нижеперечисленного можно встретить в файловой системе?

  • Процессы

  • Последовательные порты

  • Каналы межзадачного взаимодействия

  • Совместно используемые сегменты памяти

Если речь идет о UNIX, ответом будет "все вышеперечисленное". Ну и, конечно, в файловую систему входят собственно файлы.

Хотя основным предназначением файловой системы является организация хранимых ресурсов системы (т.е. файлов), программистам не хотелось каждый раз заново изобретать колесо при управлении объектами других типов. Очень часто оказывалось удобным представлять такие объекты в виде элементов файловой системы. Подобный унифицированный подход имеет как преимущества (единый программный интерфейс, легкий доступ из командного интерпретатора), так и недостатки (реализация файловых систем по методу доктора Франкенштейна). Но независимо от того, нравится он вам или нет, именно такой подход применяется в UNIX.

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

  • пространство имен — методы именования объектов и организации их в виде иерархий;

  • API — набор системных вызовов, предназначенных для перемещения между узлами системы и управления ими;

  • модель безопасности — схема защиты, укрывания и совместного использования объектов;

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

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

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

Другим усложняющим фактором является то, что современные версии UNIX поддерживают несколько типов файловых систем. Помимо базового варианта — 4.3BSD, распознаваемого большинством ОС, существуют файловые системы, обладающие повышенной надежностью или упрощенными средствами восстановления после сбоев (например, VXFS в HP-UX), системы, поддерживающие иную семантику (например, расширения, связанные со списками прав доступа в Solaris и HP-UX), и системы, построенные на других типах носителей (в частности, жесткие диски DOS или компакт-диски формата ISO-9660). Все они могут отличаться от стандартной файловой системы UNIX, описываемой в настоящей главе.


Просмотров: 3074 | | Комментариев: 0


 
Логин
Пароль
 

 
Locations of visitors to this page