ОС2/Фебруар 2022
1. задатак
Поставка
Да ли се код алгоритма распоређивања Мулти-левел Феедбацк Qуеуе Сцхедулинг процесу који је дошао у ред спремних из стања суспензије по правилу смањује или повећава приоритет? Зашто?
Решење
- Ставља се у виши(приоритетнији) ред.
- Зато што смо прошлом проценом преценили дужину његовог налета или смо потценили његову интерактивност. Зато стављамо процес у ред у којем ће краће чекати следећи налет, али ће имати и мање време налета
2. задатак
Поставка
На програмском језику Јава реализовати монитор са две операције, оп1 и оп2, при чему монитор одржава следећу инваријанту: укупан број извршавања операције оп1 је увек не мањи од броја извршавања операције оп2. Занемарити прекорачење ограниченог опсега целобројних бројача.
Решење
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. задатак
Поставка
У коју категорију међупроцесне комуникације по питању именовања спада концепт цевовода (пипе)? Образложити. Шта је основна мотивација за овакав концепт?
Решење
- Индиректно, не морамо знати тачну индетификацију процеса којем шаљемо/узимамо податке, већ само име цевовода
- Мотивација је распрезање кода што омогућава лакше одржавање и независно мењање кода
4. задатак
Поставка
Навести и прецизно објаснити бар два начина спречавања мртве блокаде укидањем услова „држање и чекање“ (холд анд wаит).
Решење
- Процеси не смеју тражити нови ресурс уколико већ имају/треже неки други. За холд&wаит су потребна бар 2 ресурса што овај приступ онемогућава.
- Процеси све своје ресурсе морају тражити истовремено, уколико не добију све све које заузели ослобађају па после неког времена покушавају поново све док не добију све тражене ресурсе. За холд&wаит морамо држати неки ресурс док тражимо други, а овим приступом се то онемогућава јер се сви ресурси заузимају истовремено
5. задатак
Поставка
Дати систем примењује избегавање мртве блокаде. Три процеса, П1, П2 и П3, најавила су коришћење оба ресурса Р1 и Р2. Нацртати граф заузећа ресурса након следеће секвенце: П1 тражи Р1, П3 тражи Р2, П2 тражи Р1, П1 ослобађа Р1. Ако више процеса чека на исти ресурс, добиће га најпре онај који га је најраније тражио
Скица решења
- П1 најављује коришћење свих ресурса
- П2 тражи Р1, најављује корићење Р2
- П3 користи Р2, најављује коришћење Р1
6. задатак
Поставка
Код ЛРУ алгоритма замене страница коришћењем додатних бита референцирања, навести шта тачно ради оперативни систем у следеће две ситуације:
- периодично ажурирање евиденције:
- избор жртве за избацивање:
Решење
- Шифтује додатне бите референцирања и у њих убацује бит референцирања који угађа хардвер који потом ресетује на 0
- Путује по кружној листи и понавља корак под а док не наиђе на страницу којој сви бити референцирања 0
7. задатак
Поставка
Неки систем примењује систем парњака (буддy) за алокацију меморије. Стање система у датом тренутку приказано је на следећој слици:
- X__XX__X_X__X___
Свако поље представља један елементарни блок (најмању јединицу алокације), а блокови означени са X су заузети. Приказати стање након захтева за алокацију сегмента величине два блока:
Решење
- X__XX__X_XXXX___ или X__XX__X_X__X_XX
8. задатак
Поставка
Која РАИД конфигурација има већи ефективни простор за податке, РАИД0 или РАИД1, и колики је ефективни простор за 2Н једнаких дискова? А која има већу поузданост?
Решење
- Већу поузданост има РАИД0,а већи ефективни простор има РАИД1
- У овом примеру РАИД0 има 2Н, а РАИД1 има Н ефективног простора
9. задатак
Поставка
Укратко објаснити концепт модула језгра у систему Линуx, укључујући и мотивацију за увођење тог коцнепта.
Решење
- Језгро линукса "довлачи" потребне делове кода тек када му затребају, нпр драјвери, иначе их не садржи у свом коду.
- Мотивација је жеља да линукс може радити и на хардверски лошим рачунарима
10. задатак
Поставка
Који начин алокације фајлова примењује Линуx еxт фајл систем? Укратко га објаснити.
Решење
- Индексни, са највише 3 нивоа индирекције.
- Налик је алокацији страница за процесе коришћењем ПЦБа.