OPERACIJSKI SUSTAVI 3.12.2001.

Zadatak 1 Objasnite pojam signala i napišite program za obradu prekida više razina. Detaljno objasnite kako i zašto zaštititi neke dijelove programa od prekida.

Zadatak 2 Napišite Lamportov postupak za medusobno isključivanje više procesa i objasnite ga.

Zadatak 3 Sustav dretvi se sastoji od 7 dretvi D_{i}, i ∈ {1, 2, 3, 4, 5, 6, 7}. Relacija ”treba se dogoditi prije” definirana je za sljedeće parove dretvi:

D_{1} < D_{j} j ∈ {2, 3, 4, 5, 6, 7}
D_{2} < D_{j} j ∈ {4, 5, 6}
D_{3} < D_{j} j ∈ {4, 7}
D_{4} < D_{j} j ∈ {6}
D_{5} < D_{j} j ∈ {6}

a) Objasnite pojmove ”medusobno zavisni” i ”medusobno nezavisni” zadaci u višedretvenom modelu, i izrecite uvjet medusobne nezavisnosti.

b) Nacrtajte pripadni usmjeravajući graf.

c) Napišite sve parove nezavisnih dretvi.

Zadatak 4 Napišite program koji množi dvije kvadratne matrice reda n u 4 procesa.(Svaki proces računa svoj dio rezultirajuće matrice.) Da li nam za ovaj zadatak treba medusobno isključivanje procesa? Zašto? Objasnite u čemu bi bila razlika da smo zadatak umjesto više procesa rješavali pomoću više dretvi?

Zadatak 5 Na obalu rijeke dolaze proizvoljnim redoslijedom kanibali i misionari. Preko rijeke se prevoze čamcem koji može prevoziti 3 osobe. Čamac vozi samo onda kad su sva mjesta popunjena i vraća se s druge strane prazan. Ne smije se dogoditi da se u čamcu nadu 2 kanibala i 1 misionar. Ostale kombinacije su dozvoljene. Napišite cikličke dretve čamac, kanibal i misionar koje se medusobno sinkroniziraju pomoću binarnih semafora. U dretvama kanibal i misionar koristite instrukcije uci u camac i izaci iz camca, a u dretvi čamac prevesti ih preko rijeke. Obrazložite predloženo rješenje.

Boris Milašinović

Rezultati: srijeda 5.12.2001. u 12:30