Введення
Планування і диспетчеризація процесора - одна з найважливіших функцій ОС.
- Основні поняття диспетчеризації процесів
- Критерії диспетчеризації
- Алгоритми диспетчеризації
- Диспетчеризація декількох процесорів
- Диспетчеризація в реальному часі
- Багаторівневі черги.
Диспетчеризація процесора - розподіл його часу між процесами в системі. Мета диспетчеризації - максимальне завантаження процесора, що досягається за допомогою мультипрограмування.
Виконання будь-якого процесу можна розглядати як цикл CPU/IO - чергування періодів використання процесора і очікування введення-виведення. Розподіл періодів активності процесора ( bursts ) і введення-виведення зображено на малюнку 1.
Послідовність активних фаз процесора і фаз вводу-виводу.
В
Рисунок 1
На малюнку 2 зображено приблизна гістограма періодів активності процесора, заснована на аналізі реальної поведінки процесів в операційних системах (ОС).
Гістограма періодів активності процесора
В
Малюнок 2
Зі схеми видно, що чим коротше період активності, тим вище частота таких періодів, і навпаки, тобто частота періодів активності обернено пропорційна їх тривалості.
1. Планувальник процесора
Планувальник - компонента ОС, яка вибирає один з декількох процесів, завантажених в пам'ять і готових до виконання, і виділяє процесор для одного з них . Рішення з диспетчеризації можуть бути прийняті у випадках, якщо процес:
. Перемикається з стану виконання в стан очікування. p align="justify">. Перемикається з стану виконання в стан готовності до виконання. p align="justify">. Перемикається зі стану очікування в стан готовності. p align="justify">. Завершується.
Диспетчеризація типів 1 і 4 позначається терміном диспетчеризація без переривання процесу (non-preemptive).
Диспетчеризація типів 2 і 3 позначається терміном диспетчеризація з перериванням процесу (preemptive).
1.1 Диспетчер процесора
Диспетче...