Analiza vremenskih svojstava Flashcards
Dodijeljivanje dretvi prema prispijeću… dugi i kratki poslovi?
Kada ih pomiješamo kratki poslovi traju jednako, ali dugi sada traju puno više. Najgori slučaj je kad kratki posao dolazi neposredno iza dugog jer mora jako dugo čekati. Tako da prema redu prispijeća nije dobro za kratke.
Kružno posluživanje (posluživanje podjelom vremena)…
Svaki proces dobije kvant vremena i ako se ne završi u tom vremenu, vraća se na kraj reda. Bolje od raspoređivanja po prispijeću, ali troši se vrijeme na zamjenu dretvi i koristi satni mehanizam. Smanjena učinkovitost?
Koje su osnovne strategije raspoređivanja?
Po redu prispijeća (FIFO), prema prioritetu i podjelom vremena (RR).
Vremenski kritične dretve - prioritetno raspoređivanje.
Uvijek je aktivna dretva s najvećim prioritetom, a kada dvije imaju isti, koristi se dodatni kriterij (koji se definira za svaku dretvu zasebno) FIFO ili RR.
Normalne dretve - nekritične.
Raspoređivanje podjelom vremena - tip dretve određuje koji udio vremena će dobiti.
SCHED_FIFO, SCHED_RR, SCHED_OTHER
Raspoređivanje dretvi u Linuxu?
1) raspoređivanje u stvarnom vremenu
- SCHED_FIFO i SCHED_RR s prioritetima 0-99
* ove dretve uvijek imaju prednost
2) raspoređivanje običnih dretvi
- SCHED_OTHER s prioritetima 100-139
- koristi se razina dobrote -20 do 19, manji broj je veća dobrota (prioritet) pa te dobivaju više procesorskog vremena
* pri pokretanju običnog procesa njegova dobrota je 0
- CFS algoritam (potpuno pravedni raspoređivač)
Raspoređivanje dretvi u Windowsu?
Na osnovu prioritetne klase procesora i prioritetne razine dretve.
1) u stvarnom vremenu
- realtime_priority_class alogritam uz RR s prioritetima 16-31 gdje je veći broj veći prioritet
2) obične
- RR uz iznimke (kako bi i manje dretve nešto radile nekad da ne bude izgladnjivanja i radi kvalitete usluge) s prioritetima 0-15