Šta su to procesi i čemu oni služe?

Proces je program u statusu izvršavanja, zajedno sa svim resursima koji su potrebni za rad programa. A program je niz instrukcija koje ostvaruje neki algoritam. Procesi predstavljaju jedan od najvažnijih koncepata operativnog sistema. Procesi se mogu nalaziti u jednom od sledećih stanja:

▪︎proces se izvršava – procesor upravo izvrsava kod ovog procesa.

▪︎proces je spreman ali se ne izvršava – proces je dobio sve potrebne resurse, spreman za izvršavanje, čeka procesor.

▪︎proces je blokiran, čeka na nešto – za dalji rad procesa potrebnu su neki resursi koji trenutno nisu na raspolaganju.

SUSPENDOVANI PROCESI:

Kod suspendovanih procesa dobijamo još dva stanja:

  1. Proces je suspendovan i spreman.
  2. Proces je suspendovan i blokiran.

Proces koji je suspendovan prestaje da se takmiči za resurse, oslobađaju se resursi koje je zauzeo, ali ostaje i dalje proces. Neki od razloga zasto procesi mogu biti suspendovani:

▪︎ prevelik broj spremljenih procesa – procesi se suspenduju kao zaštita od preopterećenja sistema.

▪︎eksplicitno suspendovanje procesa od strane korisnika.

▪︎izbjegavanje zaglavljivanja – do zaglavljivanja dolazi kada procesi blokiraju jedan drugog u izvršavanju. Ovi procesi su se zaglavili jer nijedan od njih ne moze nastaviti sa radom i u ovom slucaju jedan od procesa se suspenduje.

KONKURENTNI PROCESI:

Upravljanje konkurentnim procesima uslovljava operativne sisteme. Metod za dijeljenje vremena mora da bude implementiran tako da omogući svakom od kreiranih procesa da dobije pristup sistemu. Ovaj metod uključuje mogućnost prekidanja onih procesa koji je ustupaju procesor dovoljno.

Nit je entitet koji se izvršava koristeći program i druge resurse od pridruženog procesa. Svaka nit je pridružena nekom procesu. Jednom procesu se može pridružiti više niti. Rad sa više niti se odnosi na mogućnost operativnog sistema da podrži izvršavanje više niti u okviru jednog procesa. Većina savremenih operativnih sistena podržava niti, kao što su Windows, Solaris, Ada, Java…

Konkurentne niti su niti koje se izvršavaju u isto vrijeme. Konkurentne niti mogu da se takmiče za ekskluzivno korištenje resursa. Niti mogu da postavljaju istovremene zahtjeve za istim resursom ili istim servisom. Operativni sistem mora da obezbijedi interakciju između konkurentnih niti. Kritična sekcija je segment koda čije instrukcije mogu da utiču na druge niti. Kada jedna nit izvršava kritičnu sekciju ni jedna druga ne smije da izvršava tu istu kritičnu sekciju.

Nadam se da ste iz ovog članka uspjeli izvući nešto korisno i da ste nešto novo naučili.

Komentariši

Vaša email adresa neće biti objavljivana. Neophodna polja su označena sa *