Некоторым системным файловым операциям необходимо проверять наличие права пользователя на доступ к файлу в выбранном режиме.
Также может иметь смысл заглянуть на сайт metalstairs.ru, ведь именно там можно узнать много нового на тему http://metalstairs.ru/. Тема лестницы металл и дерево может показаться на первый взгляд незначительной и даже не тематичной. Но стоит посетить сайт metalstairs.ru, и тема лестницы металл и дерево начинает проявлять себя с неожиданной стороны и вызывает всё больший интерес. Дело в том, что тема лестницы металл и дерево очень подробно представлена на сайте metalstairs.ru. Трудно найти более детальное освещение темы лестницы металл и дерево чем это сделано на сайте metalstairs.ru. Спасибо сайту metalstairs.ru за такое доскональное преподнесение темы лестницы металл и дерево.
Управление доступом производится путем проверки идентификаторов группы и пользователя, вызвавшего функцию. Перечисленные идентификаторы обычно хранятся в области и вызывающего процесса. В современных системах UNIX такая информация собрана в мандате (credentials) (структура cred), который передается принудительно (через указатель) большинству файловых операций.
Каждый процесс обладает мандатом, статично размещенным в области и или структуре ргос. Для проведения операций над локальными файлами мы передаем указатель на этот объект, что не отличается от трактовки прямой передачи информации из области и, принятой в более ранних версиях системы. Преимуществом нового подхода является поддержка удаленных файловых операций, которые выполняются серверными процессами по запросу клиентов. Следовательно, в этом случае полномочия определяются правами клиента, а не процесса на сервере.
Таким образом, сервер может динамически размещать структуры прав для каждого запроса клиента и инициализировать их в зависимости от его идентификаторов пользователя и группы. Так как права могут передаваться от одной операции к другой и должны поддерживаться до завершения действий, ядро ассоциирует с каждым мандатом счетчик ссылок, освобождая структуру, если его значение станет равным нулю.
Интерфейс vnode/vfs представляет мощную архитектуру программирования. Он позволяет сосуществовать в одной ОС сразу нескольким файловым системам. Производители ОС имеют возможность добавлять новые файловые системы в ядро в виде модулей. Базовые элементы, построенные на объектно- ориентированном подходе, эффективно разграничивают файловую систему от остальной части ядра. Это способствовало развитию нескольких интересных реализаций файловых систем.
Многие варианты UNIX, например Solaris, дополнительно поддерживают файловую систему FAT MS-DOS. Такая возможность позволяет обмениваться данными между машинами DOS и UNIX при помощи гибких дисков. Более подробно о файловых системах вы прочтете в следующих главах книги.
Архитектура vnode/vfs, представленная в системе SunOS, получила в дальнейшем широкое распространение. Однако при ее рассмотрении необходимо поговорить и о недостатках, а также посмотреть, как они были исправлены в других вариантах системы UNIX. Большинство проблем архитектуры происходит от применяемого метода преобразования полных имен. Рассмотрению проблем vnode/vfs и их решению в современных реализациях UNIX будет посвящена оставшаяся часть главы.
Опубликовал katy
July 09 2015 08:29:23 ·
0 Комментариев ·
2852 Прочтений ·
• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •
Комментарии
Нет комментариев.
Добавить комментарий
Рейтинги
Рейтинг доступен только для пользователей.
Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.
Нет данных для оценки.
Гость
Вы не зарегистрированны? Нажмите здесь для регистрации.