ОС2/Септембар 2015 — разлика између измена

Извор: SI Wiki
Пређи на навигацију Пређи на претрагу
Нема описа измене
м (rešenje 5. zadatka)
 
(Нису приказане 2 међуизмене другог корисника)
Ред 1: Ред 1:
{{tocright}}
{{tocright}}
{{rešenja}}
[http://os.etf.rs/OS2/rokovi/2015/sep/Sep%202015.pdf Zadaci na stranici predmeta.]
[http://os.etf.rs/OS2/rokovi/2015/sep/Sep%202015.pdf Zadaci na stranici predmeta.]


Ред 35: Ред 36:
begin
begin
     locked := 1;
     locked := 1;
     signal(condition;)
     signal(condition);
end;
end;


Ред 46: Ред 47:
Dati i kratko objasniti primer konstrukta za slanje i prijem poruke indirektnim imenovanjem.
Dati i kratko objasniti primer konstrukta za slanje i prijem poruke indirektnim imenovanjem.
=== Rešenje ===
=== 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 ==
== 4. zadatak ==
Ред 51: Ред 56:
Koja od sledećih transformacija poruke se obavlja na strani primaoca poruke kod međuprocesne komunikacije: ''marshalling'' ili ''unmarshalling''?
Koja od sledećih transformacija poruke se obavlja na strani primaoca poruke kod međuprocesne komunikacije: ''marshalling'' ili ''unmarshalling''?
=== Rešenje ===
=== Rešenje ===
''Unmarshalling''.
<div class="abc-list" data-solution="single">
# marshalling
# <span class="solution">unmarshalling</span>
</div>


== 5. zadatak ==
== 5. zadatak ==
Ред 61: Ред 69:
</div>
</div>
=== Rešenje ===
=== Rešenje ===
[[Датотека:OS2 septembar 2015 zadatak 5 rešenje_graf zauzeća.svg|thumb|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 <code>P1->R2->P3->R1->P1</code>.


== 6. zadatak ==
== 6. zadatak ==
Ред 68: Ред 81:
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?
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 ===
=== Rešenje ===
Odgovor: <span class="spoiler" data-solution="text">9</span>


== 7. zadatak ==
== 7. zadatak ==
Ред 79: Ред 93:
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?
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 ===
=== Rešenje ===
67 % 16 = 3
Odgovor: <span class="spoiler" data-solution="text">3</span>


== 9. zadatak ==
== 9. zadatak ==

Тренутна верзија на датум 5. јул 2023. у 00:49

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

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