Osnove OS-a
Osnovni pojmovi, koncepti OS-a
Imamo hardver, operativni sistem i korisničke programe. Videli smo da je jedan od zadataka
OS-a da sakrije hardver od aplikacionih programa, odnosno da obezbedi lakši pristup
hardveru. To se ostvaruje preko niza proširenih instrukcija, koji se zovu
sistemski pozivi
(
system calls
).
Procesi
Procesi predstavljaju jedan od najvažnijih koncepata operativnih sistema.
Program
je
niz instrukcija koji ostvaruje neki algoritam.
Proces
je program u statusu izvršavanja, zajedno
sa svim resursima koji su potrebni za rad programa. Znači: program je fajl na disku. Kada se
taj fajl učita u memoriju i počinje da se izvršava dobijemo proces.
Stanja procesa
Procesi se nalaze u jednom od sledećih stanja:
-
proces se
izvršava
(
RUNNING
) - procesor upravo izvršava kod ovog
procesa
-
proces je
spreman
, ali se ne izvršava (
READY
) - proces je dobio sve
potrebne resurse, spreman je za izvršavanje, čeka procesora
-
proces je
blokiran
, čeka na nešto (npr. čeka štampača da završi sa
štampanjem –
BLOCKED
) - za dalji rad procesa potrebni su neki resursi,
koji trenutno nisu na raspolaganju, čeka IO operaciju, rezultat nekog
drugog procesa itd.
Imamo 4 prelaska između različitih stanja:
1.
proces prelazi iz stanja IZVRŠAVANJA u stanje BLOKIRAN kada su mu
za dalje izvršavanje potrebni neki resursi, koji trenutno nisu dostupni. Ovu
promenu stanja vrši sam proces: predaje zahtev za neki resurs, pa čeka tog
resursa. Npr.: pošalje zahtev skeneru da skenira neku sliku, i čeka rezultat
skeniranja
2.
proces prelazi iz stanja IZVRŠAVANJA u stanje SPREMAN ako mu
istekne dodeljeno procesorsko vreme (
time-sharing
) – tada proces prelazi u
listu procesa koji čekaju na procesor
3.
proces prelazi iz stanja SPREMAN u stanje IZVRŠAVANJA kada se
procesor oslobodi i može da izvršava kod posmatranog procesa (izabere se
iz liste čekanja po nekom kriterijumu i izvršava se)
4.
proces prelazi iz stanja BLOKIRAN u stanje SPREMAN, kada dođe do
potrebnih resursa i spreman je za dalji rad, ali procesor trenutno nije
slobodan, pa prelazi u listu čekanja (npr. skener je završio skeniranje, i sad
proces može nastaviti sa radom (spreman je), ali procesor je trenutno
zauzet izvršavanjem nekog drugog procesa, pa mora da čeka u red…)
Kod nekih operativnih sistemima procesi mogu biti i
suspendovani
(
suspended
). Na taj
način dobijamo još dva stanja:
-
proces je
suspendovan
i
spreman
(ako je došlo do suspendovanja u
stanju spreman)
-
proces je
suspendovan
i
blokiran
(ako je došlo do suspendovanja u stanju
blokiran)
i sledeći dijagram:
Proces koji je
suspendovan
, prestaje da se takmiči za resurse, oslobađaju se resursi
koje je zaouzeo, ali ostaje i dalje proces.
Proces koji je u stanju suspendovan i blokiran prelazi u stanje suspendovan i spreman,
ako postaje spreman, tj. ako može da nastavi sa radom (npr. proces pošalje zahtev skeneru da
skenira sliku, čeka da skener završi sa radom, pa se blokira, u međuvremenu se suspendira, pa

Ovaj materijal je namenjen za učenje i pripremu, ne za predaju.
Slični dokumenti