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

36Вытеснение редко используемых страниц (lfu)

Замещается страница, частота обращений к которой является наименьшей. Оправданием такой стратегии является тот факт, что страницы программы проявляют тенденцию к делению на две категории: часто используемые страницы (содержащие циклы) и редко используемые страницы (операторы инициализации программы или редко требуемые данные).

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

37Оптимальный алгоритм (opt)

Алгоритм строится по следующему принципу: замещается та страница, которая наиболее долго не потребуется. Алгоритм предложен Биледи в 1966 г. Его оптимальность доказана Меттсоном в 1970 г. При использовании этого алгоритма отношение числа страничных отказов к числу ссылок минимально.

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

    1. Аномалии в алгоритмах страничной реализации

38«Толкотня» в памяти

Когда замена страниц в ОП или рабочем пространстве задачи ведется чересчур интенсивно, усилившееся движение страниц может привести к опасному вырождению деятельности системы. (Более 90% времени процесса тратится на ожидание ввиду страничного отказа). Такое явление называется «толкотней» в памяти, пробуксовыванием или трэшингом (thrashing). Трэшинг характеризуется, с одной стороны, интенсивным страничным обменом, а с другой стороны, очень низкими показателями использования (utilization) и пропускной способности (throughput) центрального процессора.

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

Вообще виртуальная память дает хорошие результаты, если около 1/3 активного процесса размещается в ОП. Поэтому настоящую оперативную память заменить невозможно. Большим программам в любых системах требуется много ОП.

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

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

Точка А характеризует критический уровень мультипрограммирования, за которым начинается трэшинг.

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