Понятие о страничной модели памяти
Это надстройка над сегментной моделью.
ОП делится на блоки фиксированного размера 4 Кб (должно быть число, кратное степени двойки, чтобы операции сложения можно было бы заменить на операции конкатенации).
Каждый такой блок называется страницей.
Их число 1.048.576 Þ 4 Гб адресуемой памяти.
Основное применение этой модели связано с организацией виртуальной памяти.
Для того, чтобы использовать для работы программ пространство памяти большее, чем объем физической памяти используется механизм виртуальной памяти.
Суть его заключается в том, что у микропроцессора существует возможность по обмену страницами памяти с жестким диском. В случае, если программа требует памяти больше, чем объем физической памяти, редко используемые страницы памяти записываются на жесткий диск в специальный файл виртуальной памяти (файл обмена, или страничный файл, или файл подкачки, чаще swap-файлом, подчеркивая, что страницы этого файла замещают друг друга в ОП).
Замечание. В некоторых ОС выгруженные страницы располагаются не в файле, а в специальном разделе диска, например, в ОС UNIX есть специальный раздел, но могут использоваться и файлы, если не достаточно объема раздела.
В настоящее время файл подкачки может динамически изменять свой размер в зависимости от потребностей системы.
Для i486 и Pentium размер возможной виртуальной памяти может достигать 4 Тб (терабайт).
Обратим внимание на то, что программа также разбивается на фрагменты - страницы. Все фрагменты программы одинаковой длины, кроме последней страницы.
Говорят, что память разбивается на физические страницы, а программа - на виртуальные страницы.
Трансляция (отображение) виртуального адресного пространства задачи на физическую память осуществляется с помощью таблицы страниц.
Для каждой текущей задачи создаетсятаблица страниц.
Диспетчер памяти для каждой страницы формирует соответствующий дескриптор. Дескриптор содержит так называемый бит присутствия.
Если он = 1, это означает, что данная страница сейчас размещена в ОП.
Если он = 0, то страница расположена во внешней памяти.
Защита страничной памяти основана на контроле уровня доступа к каждой странице.
Каждая страница снабжается кодом уровня доступа (только чтение; чтение и запись; только выполнение). При работе со страницей сравнивается значение кода разрешенного уровня доступа с фактически требуемым. При несовпадении работа программы прерывается.
! |
Страничная модель памяти поддерживается только в защищенном режиме работы микропроцессора.
Основное достоинство страничного способа распределения памяти -