Сторінкова віртуальна пам’ять
Если все фрагменты программы имеют одинаковый размер и длину, кратную степени
двойки, чтобы операции сложения можно было заменить операциями конкатенации –
эти части называют страницами и говорят, что память разбивается на физические
страницы, а программа – на виртуальные страницы. Часть виртуальных страниц
задачи размещается в ОП, а часть - во внешней. Место во внешней памяти называют
файлом подкачки или страничным файлом swap-файлом.
Для отображения виртуального адресного пространства задачи на физическую память,
необходимо иметь таблицу страниц. Для каждой страницы заводится де¬скриптор.
Защита страничной памяти, основана на контроле уровня доступа к каждой странице.
Если страница отсутствует в оперативной памяти, возникает прерывание и
управление передается диспетче¬ру памяти, который должен найти свободное место.
Если свободной физической страницы нет, то диспетчер памяти опр-т страницу,
подлежащую расформированию или сохранению во внешней памяти.
При малых объемах физической памяти небольшой возникает «про¬буксовка» - это
ситуация, при которой загрузка нужной нам страницы вызывает перемещение во
внешнюю память той страни¬цы, с которой мы тоже активно работаем. Чтобы его не
допускать подобного явления, желательно увеличить объем ОП либо уменьшить
количество параллель¬но выполняемых задач.
Стра¬ничный механизм без специальных аппаратных средств он будет существенно
замедлять работу вычислительной системы. Поэтому обычно используется кэширование
страничных дескрипторов.
Основным достоинством страничного способа распределения памяти явля¬ется
минимально возможная фрагментация. Однако этот подход требует суще¬ственных
накладных расходов. Кроме того,программы разбиваются на страницы случайно, без
учета логических взаимосвя¬зей.