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

7. Використання динамічних пріоритетів.

При виконанні програм, які реалізують функції контролю чи управління в системах реального часу може виникнути ситуація, коли одна або декілька задач не можуть бути вирішені на протязі довгого проміжку часу через значну завантаженість обчислювальної системи.

В цьому випадку втрати, які пов’язані з невиконанням цих задач можуть бути більшими ніж втрати від невиконання задач з більш високим пріоритетом. Це може бути досягнуто шляхом динамічної зміни пріоритету задачі в процесі її виконання. Це дозволяє реалізувати більш швидку реакцію на запити користувачів і гарантувати виконання будь – яких запитів.

Операційна система може змінити пріоритет задачі в таких випадках:

  1. збільшення пріоритету активної задачі. При завантаженні задачі на виконання її пріоритет автоматично збільшується. Це знижує час реакції цієї активної задачі на дії користувачів в порівнянні з іншими фоновими задачами;

  2. збільшення пріоритету операції вводу/виводу. Після завершення операції вводу/виводу задача отримує найвищий пріоритет в певному класі задач. Це дозволяє більш швидко закінчити всі незавершені операції вводу/виводу;

  3. збільшення пріоритету “забутих” задач. Якщо задача не отримує часу процесора на протязі певного відрізку часу, то диспетчер задач тимчасово присвоює їй більш високий пріоритет, який не перевищує певної заданої межі. Це дозволяє перемикатися на такі забуті задачі більш швидко. Після виконання такої задачі на протязі певного кванту часу її пріоритет знижується до попереднього значення.

Механізм динамічної зміни пріоритету задач в ОС Windows NT та Unix – самостійно!

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