Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
os4.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
192.51 Кб
Скачать

4.3.2.3. Совместное использование страниц процессами

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

Обычно программы содержат процедуры и данные.

Данные программ чаще имеют характер неразделяемых данных, а доступ к разделяемым данным как раз и организуется рассматриваемым методом.

Неизменяемые процедуры называются реентерабельными или повторновходимыми.

Таким образом, каждая страница должна быть классифицирована как разделяемая или нет.

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

Вопрос (

)Вопрос

4.3.3. Сегментная организация виртуальной памяти

4.3.3.1. Одноуровневая сегментная организация

В отличие от страниц сегменты могут иметь различные размеры. Виртуальный адрес

V = (s, d),

Где s - номер сегмента;

d - смещение внутри сегмента.

Схема отображения остается прежней.

Например, архитектура Intel использует следующую терминологию: виртуальный адрес представляет собой вектор СЕЛЕКТОР:СМЕЩЕНИЕ, таблица отображения - это таблица дескрипторов; строка таблицы - дескриптор сегмента.

Вопрос (

В общем случае дескриптор содержит следующие данные:

p

b

l

t

a

r

e

p - бит присутствия;

b - адрес сегмента в памяти, если загружен;

l - длина сегмента;

t - тип сегмента; (чтение, запись, код, данные)

a - бит доступа;

r - привилегии;

e - адрес во внешней памяти, если не загружен.

)Вопрос

Вопрос (

Следующие четыре вида ошибок могут иметь место при обращении к сегменту:

  1. Если сегмента нет в памяти, то вырабатывается прерывание по отсутствию сегмента.

  2. Если длина сегмента меньше величины смещения в виртуальном адресе, то вырабатывается прерывание по выходу за пределы сегмента.

  3. Если тип операции не соответствует типу сегмента, то вырабатывается прерывание по ошибке.

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

)Вопрос

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

4.3.3.2. Комбинированная сегментно-страничная организация (вместе с таблицей процессов)

Сочетание сегментной и страничной организации представляет собой комбинированную сегментно-страничную систему виртуальной памяти.

Виртуальный адрес в этом случае состоит из трех компонентов:

V = (s, p, d),

Где s - смещение в таблице сегментов процесса, указывающее на адрес таблицы страниц сегмента;

p - смещение в таблице страниц сегмента, указывающее на адрес страницы в памяти;

d - смещение от начала страницы.

Схема комбинированной сегментно-страничной организации практически совпадает со схемой двухуровневой страничной организации виртуальной памяти.

Вопрос (

)Вопрос

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