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

Извор: SI Wiki
< ОС2
Датум измене: 5. јул 2023. у 00:32; аутор: Fedja (разговор | доприноси) (rešenje 5. zadatka)
(разл) ← Старија измена | Тренутна верзија (разл) | Новија измена → (разл)
Пређи на навигацију Пређи на претрагу

Задаци на страници предмета.

1. задатак

Поставка

Код Мултилевел Феедбацк Qуеуе распоређивања, прецизно навести у којој ситуацији (на који догађај у систему) распоређивач „деградира“ процес (смешта га у ред спремних процеса нижег приоритета од оног у ком је раније био), а када га „промовише“ (смешта у ред вишег приоритета од оног у ком је био)?

Решење

  • Процес се деградира када му истекне временски квант.
  • Процес се промовише кад је дуго чекао.

2. задатак

Поставка

На језику Јава написати код серверског процеса који прихвата клијентски захтев преко прикључнице (соцкет) на порту 6060 и одмах раскида конекцију.

Решење

import java.io.IOException;
import java.net.ServerSocket;
import java.net.Socket;

public class Server {
	public static void main(String[] args) {

		try {
			ServerSocket sock = new ServerSocket(6060);
			Socket client = sock.accept();
			sock.close();
		} catch (IOException e) {
			// ...
		}
	}
}

3. задатак

Поставка

Шта је СОАП, а шта WСДЛ?

Решење

  • СОАП је протокол за размену порука између апликација.
  • WСДЛ је језик за описивање wеб сервиса, заснован на XМЛ.

4. задатак

Поставка

Шта је техника „старења“ (енгл. агинг) и за шта се она употребљава?

Решење

Техника старења је техника у алгоритмима распоређивања заснованим на приоритету која спречава изгладњивање. Што дуже неки процес чека, повећава му се приоритет, и тако долази на ред.

5. задатак

Поставка

Три упоредна процеса, А, Б и C заузимају и ослобаˇају три недељива ресурса X, Y и З по следећем редоследу:

A: request(X), release(X), request(Y), release(Y)
B: request(Y), release(Y), request(X), release(X)
C: request(Y), request(Z), release(Z), release(Y)

Да ли ова три процеса могу да уђу у стање мртве блокаде (деадлоцк)? Ако могу, дати сценарио по коме долазе у ово стање и нацртати граф заузећа ресурса у том стању. Ако не могу, прецизно објаснити (доказати) зашто не могу.

Решење

Ова три процеса могу да уђу у стање мртве блокаде, ако процес А заузме X а процес Б заузме Y ресурс. На графу заузећа се види петља A->Y->B->X->A

Граф заузећа из решења 5. задатка.

6. задатак

Поставка

Неки систем примењује алгоритам часовника (давања нове шансе, цлоцк, сецонд-цханце) за избор странице за избацивање. У доњој табели дате су различите ситуације у којима треба одабрати страницу за замену. Дате су вредности бита референцирања за све странице које учествују у избору и позиција „казаљке“. Казаљка се помера у смеру према вишим бројевима страница. За сваку од датих ситуација навести која страница ће бити замењена.

Ситуација 1 Ситуација 2 Ситуација 3
Страница Бит реф. Казаљка Бит реф. Казаљка Бит реф. Казаљка
0 1 1 1
1 1 1 1
2 0 X 0 1 X
3 0 0 1
4 1 0 1
5 0 1 X 1
6 1 1 1
7 1 1 1

Решење

Ситуација Страница
1 2
2 2
3 2

7. задатак

Поставка

Код слаб алокатора, да ли једна структура звана цацхе садржи алоциране структуре кернела истог или различитих типова?

Решење

Цацхе садржи плоче које у себи садрже алоциране стукуре једног типа, тако да један цацхе служи за један тип.

8. задатак

Поставка

Да ли структура РАИД0 повећава отпорност на отказе? Образложити како/зашто.

Решење

Не, јер не постоји никаква редунданса. Отпорност се смањује јер се отказом једног диска трајно губе подаци целог система, па се РАИД 0 користи тамо где поузданост није битна.

9. задатак

Поставка

Шта је јоурналинг у фајл систему

Решење

Бележење или јоурналинг је функционалност фајл система где се све модификације фајл система моделују као трансакције и не врше се синхроно, већ се записују у "записник" (јоурнал) и извршавају асинхроно. У случају пада система, неизвршене трансакције се могу извршити или поништити тако да систем остане у конзистентном стању.

10. задатак

Поставка

На ком језику су написане библиотеке попут ОпенГЛ и СQЛите које су саставни део Андроид система?

Решење

Написане су на C/Ц++.