Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
лекции)ос)конспект.docx
Скачиваний:
9
Добавлен:
13.11.2019
Размер:
456.55 Кб
Скачать

Стратегії планування процеcу

розглядаються|розглядують| питання, пов'язані з різними рівнями планування|планування| процесів в

операційних системах. Описуються основні цілі і критерії планервання|планування|, а також параметри, на

яких воно грунтується. Приведені різні алгоритми планування|планування|.

Всякий|усякий| раз, коли нам доводиться мати справу|річ| з|із| обмеженою кількістю ресурсів і декількома їх

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

Лише|тільки| при правильному виборі критеріїв і алгоритмів можна уникнути таких питань, як: "Чому я отримую|одержую| вдесятеро|в десять разів| менше, ніж мій шеф|шеф-кухар|?" або "А де моє морозиво?". Справжня|дана| лекція присвячена плануванню|плануванню| виконання процесів в мультипрограмних обчислювальних системах або, інакше кажучи, плануванню|плануванню| процесів.

Основні поняття планування процесів

Планування - забезпечення почергового доступу процесів до одного процесора.

Планувальник - частина операційної системи, що відповідає за це.

Алгоритм планування - використовуваний алгоритм для планування.

Ситуації коли необхідне планування:

1. Коли створюється процес

2. Коли процес завершує роботу

3. Коли процес блокується на операції введення/висновку, семафорі, і т.д.

4. При перериванні введення/висновку.

Алгоритм планування без перемикань (непріоритетний) - не вимагає переривання по апаратному таймеру, процес зупиняється тільки коли блокується або завершує роботу..

Алгоритм планування з перемиканнями (пріоритетний) - вимагає переривання по апаратному таймеру, процес працює тільки відведений період часу, після цього він припиняється по таймеру, щоб передати управління планувальнику.

Необхідність алгоритму планування залежить від завдань, для яких використовуватиметься операційна система.

Основні три системи:

1. Системи пакетної обробки - можуть використовувати непріоритетний і пріоритетний алгоритм (наприклад: для розрахункових програм).

2. Інтерактивні системи - можуть використовувати тільки пріоритетний алгоритм, не можна допустити щоб один процес зайняв надовго процесор (наприклад: сервер загального доступу або персональний комп'ютер).

3. Системи реального часу - можуть використовувати непріоритетний і пріоритетний алгоритм (наприклад: система управління автомобілем).

Завдання алгоритмів планування:

1. Для всіх систем Справедливість - кожному процесу справедливу частку процесорного часу Контроль за виконанням прийнятої політики Баланс - підтримка зайнятості всіх частин системи (наприклад: щоб були зайняті процесор і пристрої введення/висновку)

2. Системи пакетної обробки Пропускна спроможність - кількість завдань в годину Оборотний час - мінімізація часу на очікування обслуговування і обробку завдань. Використання процесу - щоб процесор завжди був зайнятий.

3. Інтерактивні системи Час відгуку - швидка реакція на запити Відповідність - виконання очікувань користувача (наприклад: користувач не готовий до довгого завантаження системи)

4. Системи реального часу Закінчення роботи до терміну - запобігання втраті даних Передбаченість - запобігання деградації якості в мультимедійних системах (наприклад: втрат якості звуку повинно бути менше ніж відео)

Планування в системах пакетної обробки

1 "Перший прийшов - першим обслужений" (FIFO - First In Fist Out)

Процеси ставляться в чергу у міру надходження.

FCFS є найбільш простою стратегією планування процесів і полягає в тім, що процесор передається тому процесу, що раніш всіх інших його запитавши.

Колі процес попадає в чергу готових процесів, process control block приєднується до хвоста черги.

Середній година чекання для стратегії FCFS часто дуже великий і залежіть від порядку надходження процесів у чергу готових процесів.

Переваги

Простата

Справедливість (як в черзі покупців, хто останній прийшов, той опинився в кінці черги)

Недоліки

Процес обмежений можливостями процесора може загальмувати швидші процеси обмежені пристроями введення/висновку.

2 "Найкоротша задача - перша"

Нижня черга збудована з урахуванням цього алгоритму

 Переваги

  • Зменшення оборотного часу

  • Справедливість (як в черзі покупців, хто без здачі проходить в перед)

Недоліки Довгий процес процесор, що зайняв, не пустить новіші короткі процеси, які пришли пізніше.

3 Найменший час, що залишився, виконання

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

4 Трирівневе планування

 

Трирівневе планування

Планувальник доступу вибирає завдання оптимальним чином (наприклад: процеси обмежені процесором і введенням/висновком).

Якщо процесів в пам'яті дуже багато, планувальник пам'яті вивантажує і завантажує деякі процеси на диск. Кількість процесів тих, що знаходяться в пам'яті, називається ступенем багатозадачності.

4.3 Планування в інтерактивних системах

4.3.1 Циклічне планування

Найпростіший алгоритм планування і часто використовуваний.

Кожному процесу надається квант часу процесора. Коли квант закінчується процес переводиться планувальником в кінець черги. При блокуванні процесор випадає з черги.

Приклад циклічного планування

Переваги

  • Простата

  • Справедливість (як в черзі покупців, кожному тільки по кілограму)

Недоліки

  • Якщо часті перемикання (малий квант - 4мс, а час перемикання рівне 1мс), то відбувається зменшення продуктивності.

  • Якщо рідкісні перемикання (малий квант - 100мс), то відбувається збільшення часу відповіді на запит.