Round Robin Algoritam rasporeda s primjerom
โก Pametni saลพetak
Kruลพno rasporeฤivanje (Round-Robin Scheduling) je najstariji i najjednostavniji preemptivni CPU algoritam, gdje se svaki spremni proces izvrลกava fiksni vremenski interval u cikliฤkom redu ฤekanja, osiguravajuฤi pravedno izvrลกavanje viลกe zadataka bez gladovanja.

ล to je Round-Robin raspored?
Naziv ovog algoritma dolazi od kruลพnog principa, gdje svaka osoba dobiva jednaki udio neฤega naizmjeniฤno. To je najstariji, najjednostavniji algoritam za rasporeฤivanje, koji se uglavnom koristi za multitasking.
U kruลพnom rasporeฤivanju, svaki spreman zadatak izvrลกava se redom samo u cikliฤkom redu ฤekanja tijekom ograniฤenog vremenskog intervala. Ovaj algoritam takoฤer nudi izvrลกavanje procesa bez gladovanja.
Karakteristike Round-Robin rasporeda
Evo vaลพnih karakteristika Round-Robin rasporeda:
- Kruลพni rad je preemptivni algoritam.
- CPU se prebacuje na sljedeฤi proces nakon fiksnog vremenskog intervala, koji se naziva vremenski kvant/vremenski odsjeฤak.
- Proces koji ima prednost dodaje se na kraj reda ฤekanja.
- Kruลพni sistem je hibridni model koji se pokreฤe satnim rasporedom.
- Vremenski isjeฤak trebao bi biti minimalan, ลกto je dodijeljeno za odreฤeni zadatak koji treba obraditi. Meฤutim, moลพe se razlikovati od operativnog sustava do operativnog sustava.
- To je algoritam u stvarnom vremenu koji reagira na dogaฤaj unutar odreฤenog vremenskog ograniฤenja.
- Kruลพni rad je jedan od najstarijih, najpravednijih i najlakลกih algoritama.
- To je ลกiroko koriลกtena metoda rasporeฤivanja u tradicionalnim OS-ima.
Primjer Round-robin rasporeda
Razmotrite sljedeฤa tri procesa:
| Proces ฤekanja | Vrijeme praska |
|---|---|
| P1 | 4 |
| P2 | 3 |
| P3 | 5 |
Korak 1) Izvrลกenje poฤinje s procesom P1, koji ima vrijeme praska 4. Ovdje se svaki proces izvrลกava 2 sekunde. P2 i P3 su joลก uvijek u redu ฤekanja.
Korak 2) U trenutku = 2, P1 se dodaje na kraj reda ฤekanja i P2 poฤinje s izvrลกavanjem.
Korak 3) U trenutku = 4, P2 se preemptira i dodaje na kraj reda. P3 poฤinje s izvrลกavanjem.
Korak 4) U trenutku = 6, P3 se preemptira i dodaje na kraj reda. P1 poฤinje s izvrลกavanjem.
Korak 5) U vremenu = 8, P1 ima vrijeme neprekidnog niza od 4. Izvrลกenje je zavrลกeno. P2 zapoฤinje izvrลกavanje.
Korak 6) P2 ima vrijeme izvrลกavanja od 3. Veฤ se izvrลกavao u 2 intervala. U vremenu = 9, P2 zavrลกava izvrลกavanje. Zatim, P3 zapoฤinje izvrลกavanje dok se ne zavrลกi.
Korak 7) Izraฤunajmo prosjeฤno vrijeme ฤekanja za gornji primjer.
Wait time P1 = 0 + 4 = 4 P2 = 2 + 4 = 6 P3 = 4 + 3 = 7
Prednosti kruลพnog rasporeฤivanja
Evo prednosti/koristi metode kruลพnog rasporeฤivanja:
- Ne suoฤava se s problemima gladi ili efekta konvoja.
- Svi poslovi dobivaju poลกtenu raspodjelu CPU-a.
- Bavi se svim procesima bez ikakvog prioriteta.
- Ako znate ukupan broj procesa u redu ฤekanja, tada takoฤer moลพete pretpostaviti najgore moguฤe vrijeme odgovora za isti proces.
- Ova metoda rasporeฤivanja ne ovisi o vremenu rafala. Zato se lako implementira u sustav.
- Nakon ลกto se proces izvrลกi za odreฤeni skup razdoblja, proces se iskljuฤuje, a drugi se proces izvrลกava za to odreฤeno vremensko razdoblje.
- Omoguฤuje OS-u koriลกtenje metode promjene konteksta za spremanje stanja preemptiranih procesa.
- Daje najbolje performanse u smislu prosjeฤnog vremena odziva.
Nedostaci Round-robin rasporeda
Evo nedostataka/nedostataka koriลกtenja kruลพnog rasporeฤivanja:
- Ako je vrijeme rezanja OS-a nisko, izlaz procesora ฤe se smanjiti.
- Ova metoda troลกi viลกe vremena na promjenu konteksta.
- Njegova izvedba uvelike ovisi o kvantumu vremena.
- Prioriteti se ne mogu postaviti za procese.
- Kruลพno rasporeฤivanje ne daje poseban prioritet vaลพnijim zadacima.
- Smanjuje razumijevanje.
- Niลพi vremenski kvant rezultira veฤim optereฤenjem promjene konteksta u sustavu.
- Pronalaลพenje ispravnog vremenskog kvanta priliฤno je teลพak zadatak u ovom sustavu.
Latencija u najgorem sluฤaju
Ovaj izraz se koristi za maksimalno vrijeme potrebno za izvrลกenje svih zadataka.
- dt = Oznaฤava vrijeme detekcije kada je zadatak dodan na popis
- st = Oznaฤava vrijeme prebacivanja s jednog zadatka na drugi
- et = Oznaฤava vrijeme izvrลกavanja zadatka
formula:
Tworst = {(dti+ sti + eti ), + (dti+ sti + eti )2 +...+ (dti+ sti + eti )N., + (dti+ sti + eti + eti) N} + tISR
tISR = sum of all execution times







