Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
42
Добавлен:
12.02.2016
Размер:
329.73 Кб
Скачать

Операційні системи та мережі ЕОМ

Operating Systems

and Networking

Лекція 19

Сафонов Володимир Олегович, професор кафедри інформатики, керівник лабораторії Java-технології

НИИММ СПбГУ

Email: v_o_safonov@mail.ru

Алгоритми аппроксимації LRU

Біт посилання

З кожною сторінкою пов’язується біт, початково = 0

При зверненні до сторінки біт встановлюється в 1.

Заміняти сторінку, в котрої біт рівний 0 (якщо така існує).

Другий шанс

Необхідний біт посилання.

Заміщення сторінок на основі показів годинника.

Якщо сторінка, котру необхідно замінити (по показам годинника), має біт посилання = 1, то:

Встановити біт посилання в 0.

Залишити сторінку в пам'яті.

Замістити наступну сторінку (по показам годинника), по тим же правилам.

(C) В.О. Сафонов, 2

2

007

 

Алгоритм другого шансу

(C) В.О. Сафонов, 2

3

007

 

Алгоритми з лічильником

Зберігати лічильники числал звернень до кожної сторінки.

Алгоритм LFU: заміщати сторінки з мінімальним значенням лічильника.

Алгоритм MFU: заснований на твердженні, що сторінка з мінімальним лічильником – можливо лише нещодавно завантажена, та буде активно використовуватись.

(C) В.О. Сафонов, 2

4

007

 

Виділення фреймів

Кожному процесу необхідно мінімальне число сторінок.

Приклад: IBM 370 – 6 сторінок необхідно, щоб обробити команду SS MOVE:

Довжина команди - 6 байтів, може працювати з двома сторінками.

2 сторінки – для обробки джерела.

2 сторінки – для обробки отримувача.

Дві основних схеми виділення.

Фіксоване виділення

Виділення за пріоритетами

(C) В.О. Сафонов, 2

5

007

 

Фіксоване виділення

Рівномірне розподілення – наприклад, якщо є 100 фреймів и 5 процесів, кожному виділяється по 20 сторінок.

Пропорційне розподілення – виділяти фрейми у відповідності з наступним принципом:

si size of process pi

S si

m total number of frames ai allocation for pi sSi m

(C) В.О. Сафонов, 2

6

007

 

Виділення за пріоритетами

Використовувати схему пропорційного розподілення, використовуючи пріоритети, а не розмір.

Якщо процес Pi генерує відмову сторінки, то

Вибрати для заміщення один з його фреймів.

Вибрати для заміщення фрейм з процесу з більш низьким пріоритетом.

(C) В.О. Сафонов, 2

7

007

 

Глобальне и локальне розподілення

Глобальне заміщення – процес обирає фрейм для заміщення серед усіх існуючих фреймів; один процес может взяти фрейм у другого.

Локальне заміщення – кожен процес обирає фрейм тільки з числа виділених йому фреймів.

(C) В.О. Сафонов, 2

8

007

 

Thrashing

(букв. - “кидання, тряска”)

Якщо процесу не виділено достатнє число сторінок, коефіцієнт відмов сторінок дуже високий. Це призводить до:

Низької продуктивності використання процесора.

Прийняттю рішення ОС про збільшення степені мультипрограмування.

Доданню нового процесу до системи (!?).

Thrashing процес зайнятий в основному

вивантаженням і підвантаженням сторінок.

(C) В.О. Сафонов, 2

9

007

 

Thrashing

(C) В.О. Сафонов, 2

10

007

 

Соседние файлы в папке 17-20