Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Mashechkin_I_V_-_Operatsionnye_sistemy_lektsii.doc
Скачиваний:
30
Добавлен:
06.11.2018
Размер:
2.33 Mб
Скачать

Планирование свопинга в ос Unix

При принятии нового процесса на обработку необходимо освободить ресурсы. Какой - то процесс скидывается в область своппинга.

Область свопинга - специально выделенное системой пространство внешней памяти

P_TIME – счетчик, находящийся в контексте процесса. Суммирует время нахождения процесса в состоянии мультипрограммной обработки или в области свопинга. При переходе из одного состояния в другое счетчик обнуляется. Для загрузки процесса в память из области свопинга выбирается процесс с максимальным значением P_TIME. Если для загрузки этого процесса нет свободного пространства оперативной памяти, то система ищет среди процессов в оперативной памяти процесс, ожидающий ввода/вывода (сравнительно медленных операций, процессы у которых приоритет выше значения P_ZERO) и имеющий максимальное значение P_TIME (т.е. тот, который находился в оперативной памяти дольше всех). Если такого процесса нет, то выбирается просто процесс с максимальным значением P_TIME.

Лекция 12. Управление оперативной памятью

Основные задачи:

1.Контроль состояния каждой единицы памяти (система должна отслеживать, какая единица свободна/распределена, обеспечение аппаратурой компьютера и ОС - таблицы).

2.Стратегия распределения памяти (выбор правил, по которым принимаются решения, кому, когда и сколько памяти должно быть выделено).

3.Выделение памяти (принятие решения: выбор конкретной области, которая должна быть выделена).

4.Стратегия освобождения памяти (процесс освобождает, ОС “забирает” окончательно или временно. Здесь же выбор стратегии).

Рассмотрим стратегии управления по следующему плану

1.Основные концепции.

2.Необходимые аппаратные средства.

3.Основные алгоритмы.

4.Достоинства, недостатки.

1.Одиночное непрерывное распределение.

Необходимые аппаратные средства:

•Регистр границ + режим ОС / режим пользователя.

•Если ЦП в режиме пользователя попытается обратиться в область ОС, то возникает прерывание.

Алгоритмы: очевидны.

Достоинства: простота.

Недостатки:

1.Часть памяти не используется.

2.Процессом/заданием память занимается все время выполнения.

3.Ограничение на размеры задания.

2.Распределение разделами.

Необходимые аппаратные средства:

1.Два регистра границ.

Недостатки:

а. перегрузка регистра границ при каждой смене контекста;

б. сложности при использовании каналов/процессоров ввода/вывода.

2.Ключи защиты (PSW).

Алгоритмы: Модель статического определения разделов

А. Сортировка входной очереди процессов по отдельным очередям к разделам. Процесс размещается в разделе минимального размера, достаточного для размещения данного процесса. В случае отсутствия процессов в каких-то под очередях – неэффективность использования памяти.

Алгоритмы: Модель статического определения разделов

Б. Одна входная очередь процессов.

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

2. Освобождение раздела, поиск процесса максимального размера, не превосходящего размер раздела.

Проблема: дискриминация “маленьких” процессов.

  1. Оптимизация варианта 2. Каждый процесс имеет счетчик дискриминации. Если значение счетчика процесса ³ K, то обход его в очереди невозможен.

Достоинства:

1.Простое средство организации мультипрограммирования.

2.Простые средства аппаратной поддержки.

3.Простые алгоритмы.

Недостатки:

1.Фрагментация.

2.Ограничение размерами физической памяти.

3.Весь процесс размещается в памяти – возможно неэффективное использование.