Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
шпоры ЭКЗАМЕН.docx
Скачиваний:
1
Добавлен:
01.03.2025
Размер:
2.72 Mб
Скачать
  1. Защита файлов

Информация в компьютерной системе должна быть защищена как от физического разрушения (reliability), так и от несанкционированного доступа (protection).

Здесь мы коснемся отдельных аспектов защиты, связанных сконтролем доступа к файлам.

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

Списки прав доступа. Наиболее общий подход к защите файлов от несанкционированного использования – сделать доступ зависящим от идентификатора пользователя, т. е. связать с каждым файлом или директорией список прав доступа (access control list), где перечислены имена пользователей и типы разрешенных для них способов доступа к файлу. Любой запрос на выполнение операции сверяется с таким списком. Основная проблема реализации данного способа – список может быть длинным. Чтобы разрешить всем пользователям читать файл, необходимо всех их внести в список. У такой техники есть два нежелательных следствия:

  • конструирование подобного списка может оказаться сложной задачей, особенно если мы не знаем заранее пользователей системы;

  • запись в директории должна иметь переменный размер (включать список потенциальных пользователей).

Для решения этих проблем создают классификации пользователей, например, в ОС Unix все пользователи разделены на три группы:

  • владелец (owner);

  • группа (group). Набор пользователей, разделяющих файл и нуждающихся в типовом способе доступа к нему;

  • остальные (univers).

  1. Реализация файловой системы. Общая структура файловой системы. Блок-схема файловой системы

Реализация файловой системы связана с такими вопросами, как поддержка понятия логического блока диска, связывания имени файла и блоков его данных, проблемами разделения файлов и управления дисковым пространством.

Система хранения данных на дисках может быть структурирована следующим образом (Рис 22).

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

Привилегированный режим, режим операционной системы, режим ядра (kernel mode) – режим работы процессора, в котором разрешены привилегированные команды. В этом режиме исполняется код ядра ОС. При этом процесс имеет доступ и к системной памяти, и к аппаратуре.

Привилегированная команда – команда процессора, которая может быть вызвана к исполнению только ядром ОС и некоторыми системными программами. К таким командам относятся, например, команды управления памятью.

В структурной схеме нижний уровень – оборудование. Это в первую очередь магнитные диски с подвижными головками – основные устройства внешней памяти, представляющие собой пакеты магнитных пластин, между которыми на одном рычаге двигается пакет магнитных головок. Шаг движения пакета головок является дискретным, и каждому положению пакета головок логически соответствует цилиндр магнитного диска. Цилиндры делятся на дорожки (треки), а каждая дорожка размечается на одно и то же количество блоков (секторов) таким образом, что в каждый блок можно записать по максимуму одно и то же число байтов. Следовательно, для обмена с магнитным диском на уровне аппаратуры нужно указать номер цилиндра, номер поверхности, номер блока на соответствующей дорожке и число байтов, которое нужно записать или прочитать от начала этого блока. Таким образом, диски могут быть разбиты на блоки фиксированного размера и можно непосредственно получить доступ к любому блоку.

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

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

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

Стандартный запрос на открытие или создание файла поступает от прикладной программы к логической подсистеме. Логическая подсистема, используя структуру директорий, проверяет права доступа и вызывает базовую подсистему для получения доступа к блокам файла. После этого файл считается открытым, он содержится в таблице открытых файлов, и прикладная программа получает в свое распоряжение дескриптор (handle в системах Microsoft) этого файла. Дескриптор файла является ссылкой на файл в таблице открытых файлов и используется в запросах прикладной программы на чтение-запись из этого файла. Запись в таблице открытых файлов указывает через систему выделения блоков диска на блоки данного файла. Если к моменту открытия файл уже используется другим процессом, т. е. содержится в таблице открытых файлов, то после проверки прав доступа к файлу может быть организован совместный доступ. При этом новому процессу также возвращается дескриптор – ссылка на файл в таблице открытых файлов.

Рис 22. Блок-схема файловой системы

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]