581332 Rinnakkaisohjelmointi (4 op / 2 ov) /Liisa Marttinen
HUOM! Andrewsin kirjaan perustuva, syksyllä 2005 luennoitu kurssi
Erilliskoe 2.2.2007
Kirjoita jokaiseen vastauspaperiin nimesi ja nimikirjoituksesi, henkilötunnuksesi tai opintonumerosi sekä kokeen nimi ja päivämäärä.
KARHU,
HUNAJAPURNUKKA JA MEHILÄISET SEMAFORISSA [15 p]
KAIVURI
JA KUORMA-AUTOT MONITORIKUOPASSA[15 p]
Muistin virkistämiseksi =>
prosessi varattu maxtarve
A B C A B C
p1 1 2 2 3 5 3
p2 2 1 0 2 2 1
p3 0 2 1 3 4 2
Prosessi p1 pyytää
saada lisää yhden A-resurssin. Voidaanko se myöntää?
Perustele vastauksesi esittämällä pankkiirin algoritmin suoritusvaiheet.
Mitä tapahtuu, jos prosessille
ei voida myöntää sen tarvitsemia resursseja? ( 6 p)
Kirjoita
koodit karhuprosesille ja mehiläisprosesseille, kun niiden
toimintojen koordinointi hoidetaan
semaforeja käyttäen. (10 p)
Pienellä
hiekkakuopalla on töissä yksi kaivuri ja useita
kuorma-autoja. Kaivuri on hiekkakuopan pohjalla ja mättää
hiekkaa autoihin.Yksi kuorma-auto kerrallaan ajaa kuopan pohjalle,
odottaa kunnes kuorma on täynnä ja sitten poistuu
kuopalta. Kaivuri taas odottaa kunnes hiekkakuopan pohjalla on
kuorma-auto ja täyttää auton lavan hiekalla. Anna
monitoria käyttävä ratkaisu kaivurin ja
kuorma-autojen toiminnan synkronointiin. Esitä myös
monitoria käyttävien kaivuri- ja kuorma-autoprosessien
koodit.
Esitä "nukkuvan
parturin ongelman" ratkaisu käyttäen
sanomanvälitystä. Partureita oletetaan olevan useita.