ОС2/Фебруар 2022

Извор: SI Wiki
< ОС2
Датум измене: 23. фебруар 2022. у 12:40; аутор: IvnSvc (разговор | доприноси) (Нова страница: {{tocright}} [http://os.etf.rs/OS2/rokovi/2021/avgust/OS2%20avgust%202021.pdf Zadaci na stranici predmeta.] == 1. zadatak == === Postavka === Da li se kod algoritma ra…)
(разл) ← Старија измена | Тренутна верзија (разл) | Новија измена → (разл)
Пређи на навигацију Пређи на претрагу

Zadaci na stranici predmeta.

1. zadatak

Postavka

Da li se kod algoritma raspoređivanja Multi-level Feedback Queue Scheduling procesu koji je došao u red spremnih iz stanja suspenzije po pravilu smanjuje ili povećava prioritet? Zašto?

Rešenje

  • Ставља се у виши(приоритетнији) ред.
  • Зато што смо прошлом проценом преценили дужину његовог налета или смо потценили његову интерактивност. Зато стављамо процес у ред у којем ће краће чекати следећи налет, али ће имати и мање време налета

2. zadatak

Postavka

Na programskom jeziku Java realizovati monitor sa dve operacije, op1 i op2, pri čemu monitor održava sledeću invarijantu: ukupan broj izvršavanja operacije op1 je uvek ne manji od broja izvršavanja operacije op2. Zanemariti prekoračenje ograničenog opsega celobrojnih brojača.

Rešenje

public class MyMonitor{
   private int count;
   
   public synchronized void op1(){
      this.count+=1;
      if(this.count == 1) notifyAll()
   }
   public synchronized void op2(){
      while(--this.count <0)wait()
   }
}

3. zadatak

Postavka

U koju kategoriju međuprocesne komunikacije po pitanju imenovanja spada koncept cevovoda (pipe)? Obrazložiti. Šta je osnovna motivacija za ovakav koncept?

Rešenje

  • Индиректно, не морамо знати тачну индетификацију процеса којем шаљемо/узимамо податке, већ само име цевовода
  • Мотивација је распрезање кода што омогућава лакше одржавање и независно мењање кода

4. zadatak

Postavka

Navesti i precizno objasniti bar dva načina sprečavanja mrtve blokade ukidanjem uslova „držanje i čekanje“ (hold and wait).

Rešenje

  • Процеси не смеју тражити нови ресурс уколико већ имају/треже неки други. За hold&wait су потребна бар 2 ресурса што овај приступ онемогућава.
  • Процеси све своје ресурсе морају тражити истовремено, уколико не добију све све које заузели ослобађају па после неког времена покушавају поново све док не добију све тражене ресурсе. За hold&wait морамо држати неки ресурс док тражимо други, а овим приступом се то онемогућава јер се сви ресурси заузимају истовремено

5. zadatak

Postavka

Dati sistem primenjuje izbegavanje mrtve blokade. Tri procesa, P1, P2 i P3, najavila su korišćenje oba resursa R1 i R2. Nacrtati graf zauzeća resursa nakon sledeće sekvence: P1 traži R1, P3 traži R2, P2 traži R1, P1 oslobađa R1. Ako više procesa čeka na isti resurs, dobiće ga najpre onaj koji ga je najranije tražio

Skica rešenja

  • П1 најављује коришћење свих ресурса
  • П2 тражи Р1, најављује корићење Р2
  • П3 користи Р2, најављује коришћење Р1

6. zadatak

Postavka

Kod LRU algoritma zamene stranica korišćenjem dodatnih bita referenciranja, navesti šta tačno radi operativni sistem u sledeće dve situacije:

  • periodično ažuriranje evidencije:
  • izbor žrtve za izbacivanje:

Rešenje

  • Шифтује додатне бите референцирања и у њих убацује бит референцирања који угађа хардвер који потом ресетује на 0
  • Путује по кружној листи и понавља корак под а док не наиђе на страницу којој сви бити референцирања 0

7. zadatak

Postavka

Neki sistem primenjuje sistem parnjaka (buddy) za alokaciju memorije. Stanje sistema u datom trenutku prikazano je na sledećoj slici:

  • X__XX__X_X__X___

Svako polje predstavlja jedan elementarni blok (najmanju jedinicu alokacije), a blokovi označeni sa X su zauzeti. Prikazati stanje nakon zahteva za alokaciju segmenta veličine dva bloka:

Rešenje

  • X__XX__X_XXXX___ или X__XX__X_X__X_XX

8. zadatak

Postavka

Koja RAID konfiguracija ima veći efektivni prostor za podatke, RAID0 ili RAID1, i koliki je efektivni prostor za 2N jednakih diskova? A koja ima veću pouzdanost?

Rešenje

  • Већу поузданост има RAID0,а већи ефективни простор има RAID1
  • У овом примеру RAID0 има 2N, a RAID1 има N ефективног простора

9. zadatak

Postavka

Ukratko objasniti koncept modula jezgra u sistemu Linux, uključujući i motivaciju za uvođenje tog kocnepta.

Rešenje

  • Језгро линукса "довлачи" потребне делове кода тек када му затребају, нпр драјвери, иначе их не садржи у свом коду.
  • Мотивација је жеља да линукс може радити и на хардверски лошим рачунарима

10. zadatak

Postavka

Koji način alokacije fajlova primenjuje Linux ext fajl sistem? Ukratko ga objasniti.

Rešenje

  • Индексни, са највише 3 нивоа индирекције.
  • Налик је алокацији страница за процесе коришћењем PCBa.