Operativni sistemi
Operativni sistemi
1. Uvod
1. Koje poslove obavlja operativni sistem?
Operativni sistem je program koji objedinjuje u celinu raznorodne delove
računara i sakriva od korisnika detalje funkcionisanja koji nisu bitni za korišćenje
računara. Pretvara mašinu koja rukuje bitima, bajtima i blokovima u mašinu koja rukuje
datotekama i procesima.
2. Šta obuhvata pojam datoteke?
Pojam datoteke obuhvata sadržaj i atribute datoteke. Sadržaj su korisnički
podaci, a atributi su osobine poput veličine datoteke i vremena nastanka.
3. Šta se nalazi u deskriptoru datoteke?
U deskriptoru datoteke se čuvaju atributi datoteke.
4. Šta omogućuju datoteke?
Datoteke su namenjene za trajno čuvanje podata.
5. Šta obavezno prethodi čitanju i pisanju datoteke?
Čitanju i pisanju sadržaja datoteke obavezno prethodi njeno otvaranje (radi
prebacivanja deskriptora datoteke iz masovne u radnu memoriju).
6. Šta sledi iza čitanja i pisanja datoteke?
Iza čitanja i pisanja sadržaja datoteke obavezno sledi njeno zatvaranje (radi
prebacivanja podataka i deskriptora datoteke iz radne u masovnu memoriju).
7. Šta obuhvata pojam procesa?
Pojam procesa obuhvata aktivnost, sliku i atribute procesa. (Aktivnost odgovara
angažovanju procesora na izvršavanju korisničkog programa. Slika obuhvata adresni
prostor procesa sa naredbama, stekom i podacima koji se obrađuju. Atributi su stanje
procesa i njegov prioritet.)
8. Šta se nalazi u deskriptoru procesa?
U deskriptoru procesa se čuvaju atributi procesa.
9. Koja stanja procesa postoje?
Stanja procesa su: aktivan, čeka i spreman.
10. Kada je proces aktivan?
Proces je aktivan kada procesor izvršava program.
11. Šta je kvantum?
Kvantum je vremenski interval između dva prekida generisana satom. To je
vreme dodeljeno procesu tokom koga ga procesor izvršava.
12. Šta se dešava nakon isticanja kvantuma?
Nakon isticanja kvantuma, odnosno nakon obrade prekida sata, proces koji je bio
aktivan, prelazi u spreman, a procesor se preključuje na spreman proces istog prioriteta
koji prelazi u aktivan.
13. Po kom kriterijumu se uvek bira aktivan proces?
Bira se po kriterijumu najvišeg prioriteta, i uzima se proces koji je najduže u stanju
spreman.
14. Koji prelazi su mogući između stanja procesa?
Čeka > Spreman
Spreman > Aktivan
Aktivan > Čeka
Aktivan > Spreman
15. Koji prelazi nisu mogući između stanja procesa?
Čeka > Aktivan
Spreman > Čeka
16. Šta omogućuju procesi?
Procesi omogućuju bolje iskorišćenje računara (procesora) i njegovu bržu
reakciju na dešavanja vanjskih događaja. (Multiprocessing omogućava i višekorisnički
režim rada.)
17. Šta karakteriše sekvencijalni proces?
Proces je sekvencijalan ako je njegov trag (redosled izvršavanja naredbi)
određen u vreme programiranja, odnosno imaju jednu istovremeno postojeću nit. Mana
sekvencijalnih procesa je da su neosetljivi na vanjske događaje.

27. Koje operacije poziva modul za rukovanje datotekama?
Modul za rukovanje datotekama poziva operacije ulaza i izlaza koje se nalaze u
modulu za rukovanje kontrolerima i operaciju zauzimanja koja se nalazi u modulu za
rukovanje radnom memorijom.
28. Šta omogućuje multiprocesing i multithreading?
Multiprocesing omogućuje da istovremeno postoji više procesa, a multithreading
omogućuje da istovremeno postoji više niti. Takođe omogućavaju: bolje iskorišćenje
procesora, istovremenu podršku većeg broja korisnika i bržu reakciju računara na
vanjske događaje.
29. Koje operacije uvodi modul za rukovanje procesima?
Modul za rukovanje procesima uvodi operacije stvaranja i uništavanja.
30. Koje operacije poziva modul za rukovanje procesima?
Modul za rukovanje procesima poziva operaciju čitanja koja se nalazi u modulu
za rukovanje datotekama i operacije zauzimanja i oslobađanja koje se nalaze u modulu
za rukovanje radnom memorijom.
31. Koje module sadrži slojeviti operativni sistem?
Slojeviti operativni sistem sadrži: Modul za rukovanje procesima, modul za
rukovanje datotekama, modul za rukovanje radnom memorijom, modul za rukovanje
kontrolerima i modul za rukovanje procesorom.
32. Šta omogućuju sistemski pozivi?
Sistemski pozivi omogućuju prelazak iz korisničkog prostora u sistemski prostor
radi poziva operacija operativnog sistema.
33. Koje adresne prostore podržava operativni sistem?
Operativni sistem podržava korisnički i sistemski prostor.
34. Šta karakteriše interpreter komandnog jezika?
Interpreter komandog jezika je proces iz korisničkog sloja zadužen za
preuzimanje i interpretiranje komandi komandnog jezika. Posreduje između korisnika i
operativnog sistema. Koristi operativni sistem na programskom nivou, jer u toku svog
rada poziva sistemske operacije.
35. Koji nivoi korišćenja operativnog sistema postoje?
Nivoi korišćenja operativnog sistema su programski i interaktivni.
2. Konkurentno programiranje
1. Šta je preplitanje?
Preplitanje je mešanje izvršavanja naredbi raznih niti, odnosno niti i obrađivača
prekida.
2. Da li preplitanje ima slučajan karakter?
Preplitanje ima slučajan karakter, jer se ne zna u kom trenutku će se desiti
prekid.
3. Šta izaziva pojavu preplitanja?
Pojavu preplitanja mogu da izazovu prekidi programa ili prekidi sata.
4. Da li preplitanje može uticati na rezultate izvršavanja programa?
Pod uticajem preplitanja, rezultati izvršavanja programa mogu da budu
stohastični, odnosno mogu da se menjaju od izvršavanja do izvršavanja.
5. Šta su deljene promenjlive?
Deljene promenljive su promenljive koje dele različite niti, ili niti i obrada prekida.
6. Šta je preduslov očuvanja konzistentnosti deljenih promenjlivih?
Preduslov očuvanja konzistentnosti deljenih promenljivih je da novo izvršavanje
bilo koje od operacija deljene promenjljive može početi tek nakon završetka prethodno
započetog izvšavanja neke od operacija. Zbog toga se uvodi međusobna isključivost.
7. Šta su kritične sekcije?
Kritične sekcije su tela operacija deljenih klasa ili delovi ovih tela, čije izvršavanje
je kritično za konzistentnost deljenih promenljivih.
8. Šta je sinhronizacija?
Sinhronizacija je zadužena za ostvarenje međusobne isključivosti vremenskim
usklađivanjem njihovih izvršavanja.
9. Koje vrste sinhronizacije postoje?
Postoje sinhronizacija (obična) i uslovna sinhronizacija.

19. Koje prednosti ima konkurentna biblioteka u odnosu na konkurentni
programski jezik?
Prednosti konkurentne biblioteke u odnosu na konkurentni programski jezik je u
tome što se izbegavaju aktivnosti vezane za definisanje sintakse i semantike novog
programskog jezika, kao i aktivnosti vezane za zahvate na kompajleru. Njena dodatna
prednost je što omogućuje da se za konkurentno programiranje koristi već postojeći,
poznat programski jezik.
20. Kako se opisuju niti?
Niti se opisuju pomoću funkcija.
pr.
void primer_niti()
{
……..
}
21. Kako se kreiraju niti?
Rukovanje nitima omogućuje klasa thread. Njen konstruktor je zadužen za
kreiranje niti. Kao argument poziva konstruktora navodi se adresa funkcije koja opisuje
nit.
pr.
int main()
{
thread nit(primer_niti);
}
22. Kada se zauzima propusnica deljene promenljive?
Propusnica deljene promenljive se zauzima kada se izvrši operacija lock() iz
klase mutex. Zauzima se pre ulaska u kritičnu sekciju.
23. Kada se oslobađa propusnica deljene promenljive?
Propusnica deljene promenljive se oslobađa kada se izvrši operacija unlock() iz
klase mutex.
24. Kakvu ulogu ima klasa mutex?
Klasa mutex ima ulogu da onemogući štetna preplitanja kod kritičnih sekcija. To
postiže zasnivanjem međusobne isključivosti uvođenjem propusnica. Njen objekat
predstavlja propusnicu.
25. Kakve operacije sadrži klasa mutex?
Klasa mutex sadrži operacije lock() i unlock().
Ovaj materijal je namenjen za učenje i pripremu, ne za predaju.
Slični dokumenti