ОС2/Септембар 2015

Извор: SI Wiki
Пређи на навигацију Пређи на претрагу
  • За питања са више одговора, тачни одговори су подебљани и уоквирени
  • За питања за које се одговори уносе, тачни одговори су подвучени и сакривени, тако да се прикажу када изаберете тај текст (пример: овако)
  • Притисните лево дугме испод за сакривање и откривање свих одговора, или десно дугме за укључивање и искључивање интерактивног режима:

Zadaci na stranici predmeta.

1. zadatak

Postavka

Navesti i objasniti obrazac po kom se predviđa dužina narednog izvršavanja procesa na procesoru tehnikom eksponencijalnog usrednjavanja kod SJF raspoređivanja procesa.

Rešenje

  • Formula: , gde
    • je koeficijent koji određuje koliko je istorija trajanja od značaja u aproksimaciji.
    • je nova aproksimacija
    • je pravo vreme naleta
    • je prethodna aproksimacija naleta

2. zadatak

Postavka

Korišćenjem klasičnih uslovnih promenljivih, napisati kod za monitor koji realizuje binarni semafor (događaj).

Rešenje

monitor BinarySemaphore;
export wait, signal;
var
    locked : int;
    condition : cond;
    
procedure wait();
begin
    while locked = 0 do
    begin
        wait(condition);
    end;
    locked := 0;
end;

procedure signal();
begin
    locked := 1;
    signal(condition);
end;

begin
    locked := 0;
end;

3. zadatak

Postavka

Dati i kratko objasniti primer konstrukta za slanje i prijem poruke indirektnim imenovanjem.

Rešenje

  • Primer su priključnice (sockets).
  • Imaju asinhrono slanje i sinhroni prijem.
  • Server neprestano osluškuje za zahteve klijenta preko TCP.
  • Server može da prihvati vezu, komunicira sa klijentom i raskine vezu.

4. zadatak

Postavka

Koja od sledećih transformacija poruke se obavlja na strani primaoca poruke kod međuprocesne komunikacije: marshalling ili unmarshalling?

Rešenje

  1. marshalling
  2. unmarshalling

5. zadatak

Postavka

U nekom sistemu primenjuje se mehanizam izbegavanja mrtve blokade (deadlock) zasnovan na grafu alokacije. Na početku, procesi P1 i P3 su najavili korišćenje resursa R2, a P1, P2 i P3 korišćenje resursa R1. Trenutno stanje sistema je sledeće: P1 je zauzeo R1, a P2 čeka na R1.

  1. Nacrtati graf alokacije resursa u ovom stanju.
  2. Ukoliko i P1 i P3 sada zatraže resurs R2, da li i kome od ovih procesa treba dodeliti taj resurs?

Rešenje

Graf zauzeća iz rešenja 5. zadatka.

U slučaju da P1 zatraži resurs R2 sistem može da mu dozvoli, jer ne dolazi do petlje u grafu odnosno ne postoji opasnost od mrtve blokade. Sa druge strane, sistem ne sme predati resurs R2 procesu P3 jer dolazi do petlje u grafu P1->R2->P3->R1->P1.

6. zadatak

Postavka

Data je sledeća sekvenca referenciranja stranica od strane nekog procesa: 3, 2, 6, 8, 5, 6, 9, 8, 2, 6, 4, 9, 3, 6, 7, 9, 8, 6, 7, 8 Procesu su dodeljena 4 okvira, zamena se vrši lokalno, samo u skupu stranica dodeljenih tom procesu, a inicijalno nije učitana nijedna stranica ovog procesa. Koliko puta ovaj proces generiše straničnu grešku (page fault) ako je algoritam zamene stranica OPT?

Rešenje

Odgovor: 9

7. zadatak

Postavka

Šta je Beladijeva (Belady) anomalija?

Rešenje

Beladijeva anomalija je problem u algoritmima zamene stranica gde za neke sekvence i neki broj okvira, broj straničnih grešaka se povećava sa porastom broja okvira. Pristuan je u FIFO algoritmu.

8. zadatak

Postavka

Na kom disku 0 do 15 se nalazi logički blok broj 67 (blokovi su numerisani počev od 0) kod strukture block-striping RAID0?

Rešenje

Odgovor: 3

9. zadatak

Postavka

Ukratko objasniti principe mikrokernel arhitekture operativnih sistema.

Rešenje

  • Mikrokernel arhitektura izbacuje nepotrebne delove iz samog kernela i pretvara ih u sistemske programe.
  • Svrha je učiniti kernel što manjim, tako da ima samo minimalne funkcionalnosti (promenu konteksta, raspoređivanje, sinhronizaciju).
  • Prednost je fleksibilnost, mana su lošije performanse.

10. zadatak

Postavka

Šta je inode, a šta vnode u sistemu Linux?

Rešenje

  • inode je deskriptor fajla koji sadrži informacije o fajlu specifične za fajl sistem (fizička pozicija na disku i sl.)
  • vnode je deskriptor fajla koji je nezavisan od fajl sistema (virtual node) i sadrži skup operacija nad fajlom
  • vnode ostvaruje polimorfizam u virtuelnom fajl sistemu, koji je nezavisan od konkretnog fajl sistema i njegovih inode-ova