You are on page 1of 7

1.

Navedite uobičajene događaje (i primjere) koji dovode do stvaranja procesa, te objasnite razliku
u stvaranju procesa u UNIXu/Linuxu i Windowsima.

Događaji koji dovode do stvaranja procesa:


1.Inicijalizacija sustava( kod boota stvaraju se prednji i pozadinski-deamons procesi)
2. Postojeći proces izvodi sustavski poziv za stvaranje procesa dijete
3. Zahtjev korisnika za stvaranje procesa(enter ili 2*klik)
4.Iniciranje nakupine poslova(batch job)- korisnik stvara listu poslova, a OS ih pokreće
stvaranjem novih procesa
- Unix: parent forkom stvara child koji je identičan parentu, a child izvodi execove koji
mijenja sliku u memoriji i pokreće novi program
- Windows: CreateProcess kreira proces i učitava u njega program
2. Ukratko opisati i usporediti tri sučelja koja omogućavaju pokretanje aplikacijskog programa na
računalnom sklopovlju: ISA, ABI te API.

ISA (Instruction Set Architecture) opisuje skup instrukcija koje procesor može izvršavati i način na koji
se te instrukcije izvršavaju. To je sučelje između hardvera i softvera, koje omogućava programerima
pisanje koda koji će se izvršavati na procesoru.

ABI (Application Binary Interface) je sučelje između dvije programske komponente, često između
operativnog sustava i aplikacije, koje definira način na koji se podaci i funkcije prenose između njih.
ABI osigurava kompatibilnost između komponenti koje se izvode na različitim sustavima.

API (Application Programming Interface) je skup definiranih protokola, postupaka i alata koji
omogućavaju različitim aplikacijama i programima da međusobno komuniciraju i razmjenjuju
podatke. API olakšava razvoj novih aplikacija povezivanjem s drugim aplikacijama, servisima i
platformama.

Uspoređujući ova tri sučelja, ISA i ABI su više usmjereni prema hardverskoj razini, dok je API više
usmjeren prema programskoj razini. ISA se fokusira na način na koji se izvršavaju instrukcije
procesora, dok ABI definira način na koji se prenose podaci i funkcije između dviju komponenti. API
se fokusira na način na koji aplikacije međusobno komuniciraju i razmjenjuju podatke.

3. Ukratko objasnite sljedeće pojmove i način njihovog međusobnog korištenja: semafor, muteks,
futeks, monitor.

Semafor : rješava problem istovremenog spajanja proizvođača i potrošača uvođenjem varijable koja
prati broj buđenja koji pokazuje je li resurs slobodan ili zauzet

Muteks: ima dva stanja 0 – otključano i 1 – zaključano. Muteks omogućuje da samo jedna nit može
dohvatiti određeni resurs u bilo kojem trenutku, što znači da sve druge niti moraju čekati da resurs
postane slobodan.

Futeks: je implementacija muteksa izvan jezgra operacijskog sustava. Futeks se često koristi za
implementaciju muteksa u bibliotekama, a ne u jezgru operacijskog sustava.

Monitor: paket procedura, varijabli i struktura sklopljenih u sinkronizirani mehanizam, samo jedan
proces može biti u monitoru

4. Objasnite pojam prividne(virtualne) memorije te straničenje na zahtjev.

Virtualna memorija je sposobnost OS-a da koristi hardver i softver u svrhu kompenzacije nedostatka
fizičke memorije privremeno premještajući podatke iz glavne memorije na disk.
Straničenje na zahtjev omogućava upravljanje radnom memorijom te se postiže tako da se
programski kod i podaci ne učitavaju u radnu memoriju pri pokretanju procesa već se učitava samo
onda kada su stvarno potrebni, tako da se memorija dijeli na male jedinice koje se nazivaju stranice i
kada neki program pokuša pristupiti stranici koja trenutno nije u radnoj memoriji dolazi do page
fault-a te u tom trenutku OS uzima iz spremnika odgovarajuću stranicu te se program izvršava.

6.Kako je izveden i na čemu je zasnovan: a. programirani U/I b. prekidima pokretani U/I c. DMA
zasnovan U/I

a) Programirani U/I zasniva se na stalnom prozivanju uređaja na spremnost. Korisnički proces


sustavskim pozivom
otvara pisač ako je slobodan ili čeka. Zatim kopira sadržaj spremnika u jezgru i ispituje je li pisač
slobodan. Čim je
slobodan, kopira znak u spremnik pisača, znak se ispisuje i čeka se idući. Proces se ponavlja za svaki
znak.
b) Prekidima pokretan U/I zasniva se na prekidima kojima se CPU iskorištava u vremenu dok nije
okupiran (npr. između
spremanja znakova u spremnik pisača). U tom vremenu CPU obavlja neki drugi posao (npr. poziva
raspoređivač i
pokreće neki drugi proces). Pisač ne pamti znakove, ali ispisuje sve koji dođu.
c) DMA zasnovan U/I zasniva se na DMA koji uzima jedan po jedan znak pisaču, bez CPU. Smanjuje se
broj prekida s prekid-po-znaku na prekid-po-spremniku. Sporiji je od CPU pa se rabi samo kada je CPU
zauzet ili kad se može koristiti puna brzina uređaja.
Razlika: matrica zaštite je konceptualni model koji prikazuje prava pristupa subjekata nad objektom,
dok je ACL praktičan mehanizam gdje se prava pristupa definiraju na razini pojedinačnih objekata i
povezuju se s odgovarajućim subjektima.

8. Navedite i ukratko opišite svaki od koncepata (načela) rada OS-a.

• Procesi (program u izvođenju, rezervira adresni prostor)

• Zastoji (zajednički rad procesa nekada ima neizbježne situacije)

• Rukovanje memorijom (štiti glavnu memoriju i osigurava memoriju za procese)

• I/O podataka (podsustav koji brine o različitim I/O uređajima)

• Datotečni sustav (hijerarhijski organiziran u obliku stabla, organizira i upravlja podacima na


vanjskim medijima za pohranu podataka)

• Sigurnost (tajni podaci, određeni imaju pristup njima, datoteke u UNIXU su zaštićene 9-bitnim
binarnim kodom, 3-bitno polje za vlasnika, grupu i ostale, bitovi su r-w-x)

• Ljuska (operacijski sustav je u suštini kod koji izvodi sustavske pozive, u UNIX ljuska je interpreter
naredbi)

• Recikliranje koncepata – korištenje iznova iste koncepte na različitim mjestima

10. U koracima navesti događaje koji se odvijaju nakon pokretanja računala.


11. Objasnite na čemu se zasnivaju Dekkerov i Petersonov algoritmi međusobnog isključivanja.
Navedite razlike između dva algoritma.

12. Skicirajte ili ukratko objasnite tri načina implementacije datotečnog sustava na disk.
3 načina implementiranja su kontinuirana alokacija, lančana alokacija i indeksna alokacija.
Kontinuirana alokacija koristi uzastopne blokove na disku, lančana alokacija koristi lanac blokova s
adresama sljedećih blokova, indeksna alokacija koristi indeksni blok koji bilježi adrese blokova
datoteke.

13. Objasnite ulogu i osnove načina rada mehanizma Registry u Windows OS-u.
Služi za pohranu i upravljanje konfiguracijom podacima, sve konfiguracijske podatke sprema u
registry baze, ključevi i vrijednosti su hijerarhijski organizirani i baza kreće rootkeyem svaki ključ
predstavlja kontejner koji sprema podatke određenog dijela sustava. 5 orijenskih ključeva: HKCR,
HKCU, HKCC, HKLM, HKU.

14. Što je sustavski poziv? Nabrojite ili skicirajte korake nastanka sustavskog poziva. Pokažite na
nekom primjeru izvođenje sustavskog poziva (npr. printf() – write()).

Sustavski poziv je sučelje između operacijskog sustava i korisničkih programa definirano skupnom
sustavskih poziva koje omogućuje operacijski sustav. Sustavski pozivi ovise o stroju.

Pozivajući program stavlja parametre na stog, poziva se bibliotečna procedura, bibliotečna procedura
stavlja broj sustavskog poziva u registar, operacijski sustav izvodi TRAP instrukciju za prijelaz u jezgrin
način rada, jezgrin kod utvrđuje broj poziva i proslijeđuje ga handleru, pokreće se handler, nakon
posla kojeg handler obavi nadzor se vraća bibliotečnoj proceduri, nakon toga se na razinu korisničkog
programa te se briše stog.
15.Navedite moguća stanja procesa, te skicirajte i objasnite dijagram prijelaza između 6 stanja
procesa.

Navedite moguća stanja procesa, te skicirajte i objasnite dijagram prijelaza između 5 stanja procesa.

16. Objasnite razliku niti na korisničkoj razini te niti na razini jezgre.


Niti na korisničkoj razini su implementirane u korisničkom programu i koristi se za paralelizaciju
izvršavanja u samom programu, upravljane su od strane korisničkog programa, a ne od strane OS-a
Niti na razini jezgre su implementirane u jezgri OS-a i upravljane su od strane OS-a i vidljive su i
dostupne svakom programu na računalu, a OS upravlja rasporedom njihovog izvršavanja
Razlika niti na korisničkoj razini su brže i lakše za upravljanje, niti na razini jezgre omogućuju bolje
iskorištavanje resursa i bolju kontrolu.
17. Objasnite razliku između eksterne i interne fragmentacije te navedite razloge zbog kojih dolazi
do ovakvih fenomena.
Eksterna fragmentacija se javlja kada se memorija dijeli na male segmente i neki od njih se
oslobađaju, ostavljajući prazne prostore koji nisu dovoljno veliki za alokaciju većih segmenata, dok se
interna fragmentacija javlja kada se alocira više memorije nego što je potrebno zbog fiksne veličine
blokova. Razlozi za ove probleme uključuju dijeljenje memorije, dinamičku alokaciju memorije i
različite veličine blokova. Upravljanje ovim fragmentacijama važno je za učinkovito upravljanje
memorijom, a operativni sustavi imaju različite tehnike za smanjenje tih problema, poput upotrebe
paginga i segmentacije.
21. Ukratko objasnite što je upravljački sklop U/I uređaja te što je pogonski program, navesti
razliku.
Upravljački sklop U/I uređaja je fizički sklop koji omogućuje komunikaciju između računalnog sustava
i vanjskog uređaja. Pogonski program je softverski model koji omogućuje OS-u pravilno upravljanje i
komunikaciju s tim uređajem.
Razlika: pogonski program pruža sučelje između OS-a i uređaja, a upravljački sklop obavlja fizičku
kontrolu i prijenos podataka.

22. Objasni što uključuje sigurnosna okolina te navedite najčešće prijetnje računalnom sustavu.
Ukratko objasnite pojam Reference Monitor.
Uključuje sigurnost i zaštitne mehanizme, najčešće prijetnje su izlaganje podataka, neovlaštena
izmjena, premještanje, dodavanje podataka te sabotiranje sustava.
Reference Monitor je računalna osnova koja implementira sigurnost pri početku posla.

23. Opisati postupak učitavanja programa (procesa) u radnu memoriju računala te skicirajte
memorijsku sliku programa unutar operacijskog sustava Linux.

24.Objasnite kako dolazi do povezivanja instrukcija i podataka s memorijom te što je relociranje.


Do povezivanja dolazi za vrijeme: prevođenja, učitavanja i izvođenja.
Operacijski sustav mora osigurati biblioteke za dinamičku pohranu memorije, dinamičko povezivanje
tijekom izvođenja se naziva dijeljenje biblioteke.
Relokacija nastaje u multiprogramskom režimu kada nekoliko procesa treba biti istovremeno u
memoriji, proces ne zna gdje će alocirati memoriju te se ne koristi apsolutna memorijska adresa.

You might also like