До сада смо планирали процесе према времену њиховог доласка (у ФЦФС распореду). Међутим, СЈФ алгоритам распоређивања, распоређује процесе према њиховом времену пуцања.
У СЈФ планирању, следећи ће бити заказан процес са најнижим временом пуцања, међу листом доступних процеса у реду чекања.
Реха филмска глумица
Међутим, веома је тешко предвидети време пражњења потребно за процес, па је овај алгоритам веома тешко имплементирати у систем.
Предности СЈФ-а
- Максимална пропусност
- Минимално просечно време чекања и обрта
Недостаци СЈФ-а
- Може патити од проблема гладовања
- Не може се применити јер се тачно време бурст-а за процес не може унапред знати.
Доступне су различите технике помоћу којих се може одредити ЦПУ бурст време процеса. Касније ћемо их детаљно размотрити.
Пример
У следећем примеру постоји пет послова под називом П1, П2, П3, П4 и П5. Њихово време доласка и време пуцања дато је у табели испод.
ПИД | Време доласка | Бурст Тиме | Време завршетка | Смањено | Време чекања |
---|---|---|---|---|---|
1 | 1 | 7 | 8 | 7 | 0 |
2 | 3 | 3 | 13 | 10 | 7 |
3 | 6 | 2 | 10 | 4 | 2 |
4 | 7 | 10 | 31 | 24 | 14 |
5 | 9 | 8 | двадесет један | 12 | 4 |
Пошто ниједан процес не долази у време 0; биће празан слот у гантов графикон од времена 0 до 1 (време у које стиже први процес).
Према алгоритму, ОС заказује процес који има најкраће време пуцања међу доступним процесима у реду чекања.
До сада, имамо само један процес у реду чекања, па ће планер заказати ово процесору без обзира на време његовог пуцања.
Ово ће бити извршено до 8 јединица времена. До тада имамо још три процеса која су стигла у ред чекања, тако да ће планер изабрати процес са најнижим временом рафала.
претварање стринга у цео број у Јави
Међу процесима наведеним у табели, П3 ће се извршити следећи пошто има најкраће време пуцања међу свим доступним процесима.
Дакле, тако ће тећи процедура најкраћи посао прво (СЈФ) алгоритам распореда.
Просечно време чекања = 27/5