Exam text content

OHJ-4010 Rinnakkaisuus - 15.05.2012

Exam text content

The text is generated with Optical Image Recognition from the original exam file and it can therefore contain erroneus or incomplete information. For example, mathematical symbols cannot be rendered correctly. The text is mainly used for generating search results.

Original exam
OHJ-4010 Rinnakkaisuus Tentti 15.5.2012

Tentissä ei saa käyttää ylimääräistä kirjallista materiaalia, laskimia, tietokoneita tai muita lunttausvälineitä.

Tentin tarkistaa Johannes Koskinen.

 

 

1. Tehtävä
Selitä lyhyesti seuraavat käsitteet (1 p/kohta):

a) poissulkeminen (mutual exclusion)

b) synkronointi (synchronization)

c) jakamaton eli atominen operaatio (indivisible or atomic operation)
d) nälkiintyminen (starvation)

e) monitori (monitor)

£) lukkiutuminen (deadlocking)

2. Tehtävä

Mikä on kriittinen alue? Miksi se muodostaa ongelman? Miten sen aiheuttama ongelma voidaan ratkaista? Esitä vas-
tauksesi esimerkkiä apuna käyttäen. (6 p)

3. Tehtävä

Mitä tarkoittaa lukkiutuminen? Mitkä ovat lukkiutumisen ehdot? Lukkiutumisen käsittelyyn on olemassa kolme lähes-
tymistapaa: estäminen (prevention), välttäminen (avoidance) ja laukaiseminen (recovery). Kuvaa lyhyesti kukin termi ja
anna lyhyt kuvaus kunkin tavan käyttämisestä. (8 p)

 

 

4. Tehtävä
Ohessa on yksi lukitusrutiiniehdokas.
lock variable : integer := 0;
| Lukitusrutiini | Vapautustrutiini
procedure Lock (my number : integer) is procedure Unlock is
|begin [begin
| loop | lock variable := 0;
| while lock variable = 1 loop end Unlock;
| null; -- tyhjä silmukka
end loop;
| for jin 0 .. 10000 loop
| null; -- odotetaan hetki muita
| end loop;
lock variable := my number;

 

exit when lock variable = my number;
end loop;
|end Lock; |

| -- poistutaan, jos meidän vuoro
|

 

 

Vastaa lyhyesti seuraaviin kysymyksiin:

a) Voidaanko algoritmia käyttää sellaisenaan monisuoritinkoneen suorittimien välisenä poissulkemisrutiinina? Jos voi,
onko käytöllä joitain rajoituksia? Jos ei voi, tee algoritmista käyttökelpoinen, jos se on mahdollista pienellä korjauk-
sella. (2 p)

b) Voidaanko algoritmia käyttää sellaisenaan yksisuoritinkoneessa prosessien tai säikeiden välisenä poissulkemisrutiini-

na? Jos voi, onko käytöllä joitain rajoituksia? Jos ei voi, tee algoritmista käyttökelpoinen, jos se on mahdollista pie-
nellä korjauksella. (2 p)


We use cookies

This website uses cookies, including third-party cookies, only for necessary purposes such as saving settings on the user's device, keeping track of user sessions and for providing the services included on the website. This website also collects other data, such as the IP address of the user and the type of web browser used. This information is collected to ensure the operation and security of the website. The collected information can also be used by third parties to enable the ordinary operation of the website.

FI / EN