Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
OTVET__ShPOR.docx
Скачиваний:
13
Добавлен:
27.04.2019
Размер:
583.96 Кб
Скачать
  1. Способы защиты оперативной памяти. Защита по ключам:

  • по граничным адресам,

  • по ключам защиты,

  • по битам управления

Защита по ключам используется при страничной организации памяти.

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

Исключение: ядро системы (программа Super Visor) имеет ключ защиты равный 0 , имеет доступ к любой странице оперативной памяти.

КЗЗ - ключ защиты задачи

КЗС – ключ защиты страницы оперативной памяти.

  1. Способы защиты оперативной памяти. Защита по битам управления: Существуют 3 основных способа защиты процессов в оперативной памяти:

  • по граничным адресам,

  • по ключам защиты,

  • по битам управления.

Способ защиты по битам управления.

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

Бит чтения БЧ

Бит записи (модификации) БЗ

Бит выполнения БВ

БЧ

БЗ

БВ

исходные данные

1

0

0

изменяемые данные

1

1

0

код программы

1

0

1

«вирус»

1

1

1

1 – режим доступен, 0 – недоступен.

Этот способ подходит для любой организации памяти.

  1. Понятие колец защиты и уровня привилегий. Защита памяти на основе этих понятий: В микропроцессоре Intel используется метод распределения привилегий с помощью колец защиты. Чем меньше номер кольца, тем выше уровень привилегий.

Установлены правила:

1. при обращение к сегментам данных кольца с номером N процесс должен обладать уровнем привилегий К ≤ N

2. при обращение к сегментам кода процесс с уровнем привилегий N может обращаться к сегментам, когда этого же кольца или внутренних колец. При обращении к сегментам, когда внутренних колец используется механизм шлюзов.

Шлюз представляет собой специализированный дескриптор, служащий для выравнивания уровней привилегий.

Max(СPL, RPL) ≤ DPL

  1. П онятие шлюза. Использование шлюзов при передаче управления в ЭВМ типа IBM PC: Вызов процедуры может быть реализован несколькими способами:

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

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

  • косвенный вызов через шлюз.

Косвенный вызов через шлюз.

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

Передача через шлюз основана на использовании специальных дескрипторов типа «шлюз». Структура дескриптора типа «шлюз» отличается от структуры обычного дескриптора сегмента.

Обычный дескриптор

база

размер

С

DPL

«Шлюз»

селектор

Размер

Р

DPL

смещение

байт доступа

счетчик слов

селектор сегмента назначения

Смещение

Байт доступа

P

DPL

0

1

1

0

0

Вызываемый код может иметь любой уровень привилегий.

П ри использовании «шлюзов» учитываются следующие правила:

    1. значение DPL шлюза должно быть больше или равно значения текущего уровня привилегий CPL,

    2. значение DPL шлюза должно быть больше или равно значения RPL селектора шлюза,

    3. значение DPL шлюза должно быть больше или равно значения DPL целевого сегмента кода,

    4. DPL целевого сегмента кода должно быть меньше или равно значения CPL текущего процесса.

  1. Проблема тупика. Алгоритм банкира как один из способов решения проблемы тупика: «Тупик» возникает, когда 2 процесса в противофазе пытаются разделить 2 и более общих ресурса. «Алгоритм банкира» – один из способов предотвращения тупика.

Он состоит из двух проверок:

1. Достаточно ли выделяемого ресурса, чтобы процесс завершился. Если «да», то ресурс процессу выделяется, если «нет», то выполняется вторая проверка.

2. Оставшегося после удовлетворения запроса ресурса, будет достаточно для завершения какого-либо процесса или нет. Если «да» – ресурс выдается, если «нет» – процесс, породивший запрос, блокируется.

ВОПРОСЫ

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