Table of Contents
Algoritmele de proiectare sunt esentiale in sistemele de operare pentru a gestiona eficient executia procesului. Ei stabilesc ordinea in care procesele sunt alocate timp procesor, impactand performanta sistemului si responsivitate. Acest articol compara trei algoritmi comuni: Primul-vin, Primul-Servit (FSFS), cel mai scurt job First (SJF) si Round Robin, cu calcule pentru a ilustra diferentele lor.
Primul venit, primul servit (FFCS)
FCFS programează procesele în ordinea în care ajung. Este simplu, dar poate duce la perioade lungi de așteptare pentru procese mai scurte, cunoscut sub numele de "efectul de convoy."
Exemplu: Procesele cu explozie ori 5, 3 și 8 sosesc secvențial. Graficul Gantt arată ordinea de execuție și calcule pentru orele de așteptare și de întoarcere.
Calcule:
- Procesul 1: Timpul de așteptare = 0, timpul de întoarcere = 5
- Procesul 2: Timpul de așteptare = 5, timpul de schimbare = 8
- Procesul 3: Timpul de așteptare = 8, Timpul de schimbare = 16
Cea mai scurtă sarcină în primul rând (SJF)
SJF selectează procesul cu cel mai mic timp de spargere următoare. Acesta minimizează timpul mediu de așteptare, dar necesită cunoștințe de durate de proces înainte.
Folosind aceleași procese, SJF le programează ca 3, 5, apoi 8 unități, ceea ce duce la momente de așteptare diferite.
Calcule:
- Procesul 2: Timpul de așteptare = 0, timpul de întoarcere = 3
- Procesul 1: Timpul de așteptare = 3, timpul de schimbare = 8
- Procesul 3: Timpul de așteptare = 8, Timpul de schimbare = 16
Rotund Robin Scheduling
Rotund Robin atribuie fiecare proces o felie de timp fix sau cuantic. Procesele sunt cicluate până la finalizare, promovând echitatea și receptivitatea.
Presupunând un cuantic de 2 unități, procesele sunt programate în cicluri, iar calculele se bazează pe timpul total de execuție și pe perioadele de așteptare.
Calculele de exemplu pentru timpul de finalizare a procesului și timpul de așteptare sunt următoarele:
- Procesul 1: Timpul de așteptare = 4, timpul de schimbare = 9
- Procesul 2: Timpul de așteptare = 2, Timpul de schimbare = 5
- Procesul 3: Timpul de așteptare = 8, Timpul de schimbare = 16