Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Права доступа к файлам




 

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

· чтение (rr ead);

· запись (ww rite);

· исполнение (x – e x ecute).

Запись и чтение файла предполагают его поиск и открытие. На первом этапе система должна найти имя файла в явно указанном каталоге либо, если путь к файлу не указан, но содержится в переменной окружения оболочки, попытаться найти его. Если путь к файлу пролегает через несколько каталогов, каждый из них последовательно открывается и в нем производится поиск имени следующего подкаталога или целевого файла [6].

На втором этапе поиска по найденному имени в файловой системе обнаруживается нужный индексный дескриптор файла и считываются его метаданные, включая права доступа к нему. При открытии файла в числе параметров задается цель его открытия: для чтения, для записи, для добавления либо для чтения и записи. Права доступа к существующему файлу проверяются на этапе его открытия. Если цель открытия файла не соответствует правам пользователя, в доступе будет отказано. Следует отметить, что доступ к файлу означает доступ к блокам, где хранятся его данные. Метаданные недоступного файла не закрываются, и нарушитель может узнать адреса блоков данных, где хранится файл. Угрозу это представляет лишь в том случае, если нарушителю доступны операции с блоками дисковой памяти в обход файловой системы.

Если права доступа совпадают с затребованными, открываемому файлу присваивается учетный номер – файловый дескриптор (не путать с индексным дескриптором!), а найденные блоки данных файла копируются с дискового пространства в оперативную память. Информацию об открытых файлах и их связи с пользователями и процессами можно получить с помощью утилиты lsof (list opened file).

Если открываемый файл не существует, он может быть создан с правами доступа, задаваемыми явно или по умолчанию.

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

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

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

Право исполнения имеет смысл только по отношению к программе. Операционная система не распознает типы обычных файлов, но для программ она делает исключение. Бинарные исполняемые файлы формата ELF распознаются по характерной сигнатуре 0x7F454C46 в начале файла.

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

По отношению к текстовой программе – сценарию – одно только право исполнения ничего не дает. Для запуска сценария требуется еще право на его чтение, т. к. оболочка читает строки сценария, производит их лексический анализ и интерпретацию, т. е. преобразование текстовых команд в бинарный код, который оболочка передает центральному процессору.

Текстовую программу (сценарий) можно запустить, имея только право чтения. Для этого в командной строке требуется указать вначале имя командного интерпретатора, а затем имя сценария, например




Поделиться с друзьями:


Дата добавления: 2015-03-31; Просмотров: 462; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.008 сек.