ВУЗ:
Составители:
107
Разбиение всей ОП на страницы одинаковой величины, причем
кратной степени двойки, приводит к тому, что вместо одномерного ад-
ресного пространства памяти можно говорить о двухмерном. Первая ко-
ордината адресного пространства – это номер страницы, вторая коорди-
ната – номер ячейки внутри выбранной страницы (его называют индек-
сом). Таким образом, физический адрес определяется парой (Рp, i), а
виртуальный адрес – парой (Pv, i), где Pv – номер виртуальной страни-
цы, Рр – номер физической страницы, i – индекс ячейки внутри страни-
цы. Количество битов, отводимое под индекс, определяет размер стра-
ницы, а количество битов, отводимое под номер виртуальной страницы,
– объем потенциально доступной для программы виртуальной памяти.
Отображение, осуществляемое системой во время исполнения, сводится
к отображению Pv в Рр и приписыванию к полученному значению битов
адреса, задаваемых величиной i. При этом нет необходимости ограничи-
вать число виртуальных страниц числом физических, то есть не поме-
стившиеся страницы можно размещать во внешней памяти, которая в
данном случае служит расширением оперативной.
Для отображения виртуального адресного пространства задачи на
физическую память, как и в случае сегментного способа организации,
для каждой задачи необходимо иметь таблицу страниц для трансляции
адресных пространств. Для описания каждой страницы диспетчер памя-
ти ОС заводит соответствующий дескриптор, который отличается от де-
скриптора сегмента прежде всего тем, что в нем нет поля длины – ведь
все страницы имеют одинаковый размер. По номеру виртуальной стра-
ницы в таблице дескрипторов страниц текущей задачи находится соот-
ветствующий элемент (дескриптор). Если бит присутствия имеет еди-
ничное значение, значит данная страница размещена в оперативной, а не
во внешней памяти, и в дескрипторе – номер физической страницы, от-
веденной под данную виртуальную. Если же бит присутствия равен ну-
лю, то в дескрипторе – адрес виртуальной страницы, расположенной во
внешней памяти. Именно таким образом осуществляется трансляция
виртуального адресного пространства на физическую память. Этот ме-
ханизм трансляции иллюстрирует рис. 29.
Защита страничной памяти. Защита страничной памяти, как и в
случае сегментного механизма, основана на контроле уровня доступа к
каждой странице. Как правило, возможны следующие уровни доступа:
только чтение;
чтение и запись;
только выполнение.
Каждая страница снабжается соответствующим кодом уровня до-
ступа. При трансформации логического адреса в физический сравнива-
Страницы
- « первая
- ‹ предыдущая
- …
- 105
- 106
- 107
- 108
- 109
- …
- следующая ›
- последняя »
