Алгоритм циклічного планування з прикладом

Що таке кругове планування?

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

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

Характеристики кругового планування

Ось важливі характеристики кругового планування:

  • Круговий алгоритм — це випереджаючий алгоритм
  • ЦП перемикається до наступного процесу після фіксованого інтервалу часу, який називається квантом часу/зрізом часу.
  • Процес, який виймається, додається в кінець черги.
  • 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.
  • Круговий алгоритм — це випереджаючий алгоритм
  • Найбільша перевага методу циклічного планування полягає в тому, що якщо ви знаєте загальну кількість процесів у черзі виконання, ви також можете припустити найгірший час відповіді для того самого процесу.
  • Цей метод витрачає більше часу на перемикання контексту
  • Найгірша затримка – це термін, який використовується для позначення максимального часу, необхідного для виконання всіх завдань.

Підсумуйте цей пост за допомогою: