OPERACIJSKI SUSTAVI 1.9.2003.

Studenti koji su slušali kolegij u tekućoj školskoj godini rješavaju zadatak br. 2 te još 3 (tri) zadatka po izboru. Na zadaći obavezno navedite koje godine ste slušali kolegij.

1. Šest poslova A,B,C,D,E,F dolaze u red za izvršavanje u istom trenutku. Procjene njihovih izvršavanja su 13,9,1,3,6 i 5 kvantuma. Za svaki od sljedećih algoritama, pronadite prosječno vrijeme zadržavanja u sustavu. Vrijeme promjene procesa (overhead) je zanemarivo.

a) round-robin sa kvantumom q=1

b) round-robin sa kvantumom q=3

c) first-come first-serve

2. Pretpostavimo da imamo videokonferenciju i profesora koji odgovara na pitanja udaljenih studenata. Potrebno je napisati algoritam koji će riješiti problem sinkronizacije i to zadovoljavajući sljedeće uvjete:

a) ako nema studenata koji žele postaviti pitanje, profesor smije uzeti predah i prošetati se

b) u isto vrijeme samo jedan student može pričati

c) na svako pitanje će biti odgovoreno te nijedan student ne postavlja pitanje dok profesor ne završi sa odgovorom.

Potrebno je napisati sljedeće procedure:

Započni Odgovor(), Odgovor Završen(), Započni Pitanje(), Pitanje Završeno().

Profesorov radni ciklus bi bio: Započni Odgovor(); daj odgovor ;Odgovor Završen() Napomena: Započni Odgovor() ne završava sve dok nema postavljenog pitanja.

Svakog studenta možemo opisati petljom: Započni Pitanje(); pitaj ;Pitanje Završeno() Napomena: Započni Pitanje() ne završava sve dok nije došao studentov red na postavljanje pitanje. Takoder funkcija Pitanje Završeno() ne završava sve dok profesor ne odgovori na to pitanje.

3. Što je to stanje utrke (race condition). Navedite jedan jednostavni primjer.

4. Objasnite u kojem od sljedećih slučajeva se vremenski isplati implementirati rješenje zadatka u više procesa/dretvi te obrazložite vaše tvrdnje.

a) množenje velikih matrica na računalu sa jednim procesorom

b) množenje velikih matrica na višeprocesorskom računalu

c) množenje velikih matrica bez obzira na broj procesora gdje se rezultati moraju poslati na udaljeni stroj. Zbog čega se za male matrice ne isplati dijeliti problem na više procesa/dretvi?

5. Objasnite pojam signala. Što možemo napraviti sa signalom koji je dostavljen nekom procesu? Nabrojite nekoliko najznačajnijih signala.

Boris Milašinović

Rezultati: do petka 5.9.2003. u 12h