Алгоритм циклічного планування з прикладом
Що таке кругове планування?
Назва цього алгоритму походить від принципу циклічної роботи, коли кожна особа отримує рівну частку чогось по черзі. Це найстаріший і найпростіший алгоритм планування, який в основному використовується для багатозадачності.
У циклічному плануванні кожне готове завдання виконується по черзі лише в циклічній черзі протягом обмеженого проміжку часу. Цей алгоритм також пропонує виконання процесів без голодування.
Характеристики кругового планування
Ось важливі характеристики кругового планування:
- Круговий алгоритм — це випереджаючий алгоритм
- ЦП перемикається до наступного процесу після фіксованого інтервалу часу, який називається квантом часу/зрізом часу.
- Процес, який виймається, додається в кінець черги.
- Round Robin — це гібридна модель із годинниковим приводом
- Відрізок часу має бути мінімальним, який призначається для конкретного завдання, яке необхідно опрацювати. Однак ОС може відрізнятися від ОС.
- Це алгоритм реального часу, який реагує на подію протягом певного ліміту часу.
- Кругова система є одним із найстаріших, найсправедливіших і найпростіших алгоритмів.
- Широко використовуваний метод планування в традиційних ОС.
Приклад кругового планування
Розглянемо наступні три процеси
| Черга процесу | Час вибуху |
|---|---|
| P1 | 4 |
| P2 | 3 |
| P3 | 5 |
Крок 1) Виконання починається з процесу P1, який має час пакету 4. Тут кожен процес виконується протягом 2 секунд. P2 і P3 все ще в черзі.
крок 2) У момент часу =2, P1 додається в кінець черги, і P2 починає виконувати
Крок 3) У час=4 P2 виймається та додається в кінець черги. P3 починає виконуватися.
Крок 4) У час=6 P3 виймається та додається в кінець черги. P1 починає виконуватися.
Крок 5) У момент часу = 8 час пакету P1 становить 4. Він завершив виконання. P2 починає виконання
Крок 6) P2 має час пакету 3. Він уже виконувався протягом 2 інтервалів. У час = 9 P2 завершує виконання. Потім P3 починає виконання до завершення.
Крок 7) Давайте розрахуємо середній час очікування для прикладу вище.
Wait time P1= 0+ 4= 4 P2= 2+4= 6 P3= 4+3= 7
Перевага кругового планування
Ось плюси/переваги методу циклічного планування:
- Він не стикається з проблемами голодування чи ефекту конвою.
- Усі завдання отримують справедливий розподіл ЦП.
- Він стосується всіх процесів без будь-якого пріоритету
- Якщо ви знаєте загальну кількість процесів у черзі виконання, ви також можете припустити найгірший час відповіді для того самого процесу.
- Цей метод планування не залежить від часу пакету. Тому це легко реалізується в системі.
- Після того, як процес виконується протягом певного періоду, процес витісняється, і інший процес виконується протягом цього заданого періоду часу.
- Дозволяє ОС використовувати метод перемикання контексту для збереження станів витіснених процесів.
- Він забезпечує найкращу продуктивність з точки зору середнього часу відгуку.
Недоліки кругового планування
Нижче наведено недоліки/мінуси використання циклічного планування:
- Якщо час нарізки ОС низький, продуктивність процесора буде зменшена.
- Цей метод витрачає більше часу на перемикання контексту
- Його ефективність значною мірою залежить від кількості часу.
- Для процесів неможливо встановити пріоритети.
- Циклічний планування не надає особливого пріоритету важливішим завданням.
- Зменшує розуміння
- Менший квант часу призводить до вищих витрат на перемикання контексту в системі.
- Знайти правильний квант часу є досить складним завданням у цій системі.
Найгірша затримка
Цей термін використовується для максимального часу, необхідного для виконання всіх завдань.
- dt = Позначає час виявлення, коли завдання додається до списку
- st = Позначає час переходу від одного завдання до іншого
- et = Позначає час виконання завдання
формула:
Tworst = {(dti+ sti + eti ), + (dti+ sti + eti )2 +...+ (dti+ sti + eti )N., + (dti+ sti + eti + eti) N} + tISR
t,SR = sum of all execution times
Резюме
- Назва цього алгоритму походить від принципу циклічної роботи, коли кожна особа отримує рівну частку чогось по черзі.
- Кругова система є одним із найстаріших, найсправедливіших і найпростіших алгоритмів і широко використовуваних методів планування в традиційних OS.
- Круговий алгоритм — це випереджаючий алгоритм
- Найбільша перевага методу циклічного планування полягає в тому, що якщо ви знаєте загальну кількість процесів у черзі виконання, ви також можете припустити найгірший час відповіді для того самого процесу.
- Цей метод витрачає більше часу на перемикання контексту
- Найгірша затримка – це термін, який використовується для позначення максимального часу, необхідного для виконання всіх завдань.







