Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Презентации лекций в одном файле

.pdf
Скачиваний:
15
Добавлен:
27.05.2024
Размер:
10.25 Mб
Скачать

Замещение (выталкивание) страниц.

1. Принцип оптимальности.

Надо выталкивать ту страницу, к которой дольше всего не будет обращений. Как это можно определить? Никак!

Стратегия не реализуется.

2. Выталкивание случайной страницы.

Достоинство: быстрое решение с маленькими накладными расходами.

Недостатки: может возрасти частота прерываний (выталкиваем нужную страницу).

Используется крайне редко.

3. Принцип FIFO. Красивое решение, обоснования нет.

Достоинство: достаточно быстрое решение. Недостатки: возможна т.н. аномалия FIFO.

Используется достаточно часто.

4. Выталкивание дольше всего не использовавшейся страницы.

LRU (Least Recently Used)

Достоинство: временной анализ.

Недостатки: - накладные расходы на поддержку временных меток

- смотрит назад, а не вперед. Используется достаточно редко.

5. Выталкивание реже всего использовавшейся страницы.

LFU (Least Frequently Used)

Будем считать число обращений к странице на заданном интервале.

Достоинство: временной анализ.

Недостатки: - накладные расходы на поддержку временных меток;

-можно вытолкнуть «свежую» страницу;

-трудно вытолкнуть «заслуженного ветерана», страницу которая

сразу набрала много обращений Используется достаточно редко.

5. Выталкивание не использовавшейся в последнее время страницы.

NUR (Not Used Recently)

Будем периодически обновлять счетчик обращений.

Достоинство: устраняем недостаток LFU. Недостатки:- можно вытолкнуть «свежую» страницу; - Используется достаточно редко.

Концепция локальности.

Частота

прерываний

детство

взрослый

старость

время

 

Если процесс перешел в фазу «взрослый», в памяти надо держать страницы относящиеся к его «рабочему множеству».

Локальность (по Деннингу) бывает:

Временная – процесс может вернуться к текущей ячейке, т.к. в программе присутствуют циклы.

Пространственная – процесс переходит к следующей ячейке благодаря своей последовательной структуре.

Fint

Out of mem

1,0

Равновероятное обращение к страницам

Процесс с локализованными обращениями

0,5

Доля страниц процесса в ОЗУ

0,5

1,0

Как найти рабочее множество? Только мониторинг!

Некоторые выводы:

1.Чем меньше размер страницы, тем больше объем Page Table

2.Чем больше объем страницы, тем больше доля «лишней» информации

3.Чем больше объем страницы, тем быстрее пройдет загрузка программы

4.Чем меньше объем страницы, тем легче составить «правильное» рабочее множество.

Оптимальны страницы относительно небольшого объема – 1 килобайт

Управление процессорами

Планирование загрузки процессоров – это распределение процессоров (или процессорного времени) между процессами.

Уровни планирования

Задания, ожидающие входа в систему

Ввод

Задания, ожидающие запуска

Запуск

Приостановленные процессы

Активизация Приостановка

Активные процессы

Пуск

Через t

или блокировка

 

Выполняющиеся процессы (ЦП) Завершение

Завершенные задания

Верхний уровень Задание становится процессом и

претендует на ресурсы

Промежуточное Решение стратегических задач

системы

Нижний уровень - диспетчирование Диспетчер всегда в ОЗУ

Дисциплина планирования должна преследовать следующие цели:

Быть справедливой ко всем процессам

Повышать производительность системы (число процессов/время)

Уменьшать время реакции системы для пользователей

Быть предсказуемой (время решения задания не должно зависеть от нагрузки)

Минимизировать потери ресурсов

Загружать простаивающие ресурсы

Исключать бесконечное откладывание

Учитывать приоритеты

Выделять процессы, занимающие ключевые ресурсы (не прерывать)

Создавать хорошие условия для «правильных» процессов

Балансировать между min(время реакции) – max(загрузка ресурсов)

Иметь плавную зависимость параметров от нагрузки

Дисциплина планирования должна учитывать: (критерии планирования)

Лимитируется ли процесс I/O операциями

Освобождает ли процесс ЦП до окончания кванта времени

Режим работы процесса – пакетный или интерактивный

Необходимость «немедленной» реакции на события (real time)

Приоритет процесса

Частоту прерываний из-за отсутствия страниц в памяти (раб. множество)

Частоту прерываний из-за низкого приоритета

Выделенное время

Время ожидания в очереди

Время, необходимое для завершения процесса

И многое другое

Дисциплины планирования делятся на:

ДИСЦИПЛИНЫ БЕЗ ПЕРЕКЛЮЧЕНИЯ После выделения процессу ЦП его нельзя отобрать до завершения

ДИСЦИПЛИНЫ С ПЕРЕКЛЮЧЕНИЕМ У процесса можно отобрать ЦП

используя таймер или с приходом другого процесса

Приоритеты бывают:

СТАТИЧЕСКИЕ – не меняются при работе процесса Жесткий алгоритм управления, низкая эффективность

ДИНАМИЧЕСКИЕ – могут учитывать показания системных «сенсоров» Гибкое управление, высокие издержки на обслуживание

ПОКУПНЫЕ – изменяется (повышается) по инициативе пользователя Экзотика.