Пейджинг по запросу - Википедия - Demand paging
Эта статья включает список литературы, связанное чтение или внешние ссылки, но его источники остаются неясными, потому что в нем отсутствует встроенные цитаты.Июнь 2009 г.) (Узнайте, как и когда удалить этот шаблон сообщения) ( |
В компьютер операционные системы, пейджинг по запросу (в отличие от упреждающий пейджинг) - это метод виртуальная память управление. В системе, которая использует подкачку по запросу, операционная система копирует диск страница в физическую память, только если сделана попытка получить к ней доступ, и эта страница еще не находится в памяти (т.е., если ошибка страницы происходит). Отсюда следует, что обработать начинает выполнение, и ни одна из его страниц не находится в физической памяти, и будет происходить множество ошибок страниц, пока большая часть процесса не будет рабочий набор страниц находятся в физической памяти. Это пример ленивая загрузка техника.
Основная концепция
Пейджинг по запросу следует, что страницы должны быть занесены в память только в том случае, если они требуются исполняющему процессу. Это часто называют ленивая оценка поскольку только те страницы, которые требуются процессу, заменяются вторичное хранилище к основная память. Сравните это с чистой подкачкой, когда вся память для процесса переключается из вторичного хранилища в основную во время запуска процесса.
Обычно для достижения этого процесса таблица страниц реализация. Карты таблицы страниц логическая память к физическая память. В таблице страниц используется побитовый оператор, чтобы отметить, является ли страница действительной или недействительной. Действительная страница - это та, которая в настоящее время находится в основной памяти. Недопустимая страница - это страница, которая в настоящее время находится во вторичной памяти. Когда процесс пытается получить доступ к странице, обычно выполняются следующие шаги:
- Попытка получить доступ к странице.
- Если страница действительна (в памяти), продолжайте обработку инструкции как обычно.
- Если страница недействительна, тогда ловушка ошибки страницы происходит.
- Проверьте, является ли ссылка на память действительной ссылкой на место во вторичной памяти. Если нет, процесс прекращается (незаконный доступ к памяти). В противном случае мы должны страница в требуемая страница.
- Запланируйте операцию с диском для чтения нужной страницы в основную память.
- Перезапустите инструкцию, которая была прервана прерыванием операционной системы.
Преимущества
Требовать разбиение на страницы вместо немедленной загрузки всех страниц:
- Загружает только те страницы, которые требуются исполняющему процессу.
- Поскольку в основной памяти больше места, можно загружать больше процессов, уменьшая переключение контекста время, которое требует больших затрат ресурсов.
- При запуске программы возникает меньшая задержка загрузки, так как меньше информации получает доступ из вторичного хранилища и меньше информации переносится в основную память.
- Поскольку основная память стоит дороже по сравнению с вторичной памятью, этот метод помогает значительно снизить стоимость материалов (BOM), например, в смартфонах. В ОС Symbian была эта функция.
Недостатки
- Отдельные программы сталкиваются с дополнительной задержкой при первом обращении к странице.
- Недорогой, маломощный встроенные системы может не иметь блок управления памятью который поддерживает замену страниц.
- Управление памятью с помощью алгоритмы замены страниц становится немного сложнее.
- Возможные риски безопасности, включая уязвимость время атаки; увидеть Персиваль, Колин (13 мая 2005 г.). «Кэш отсутствует для развлечения и наживы» (PDF). BSDCan 2005. (в частности, атака виртуальной памяти в разделе 2).
- Взбучка что может произойти из-за повторяющихся ошибок страниц.
Смотрите также
использованная литература
- Таненбаум, Эндрю С. Операционные системы: разработка и реализация (второе издание). Нью-Джерси: Прентис-Холл 1997.