Exam text content

OHJ-4010 Rinnakkaisuus - 21.05.2013

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 21.5.2013

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

Tentin tarkistaa Johannes Koskinen.

 

1. Tehtävä
Selitä Jyhyesti 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)

£) = kriittinen alue (critical section)

2. Tehtävä

Toteuta tuottaja-kuluttajaongelma käyttäen Adan tehtäviä ja Adan kohtaamismekanismia (semaforit eivät siis ole sallit-
tuja). Tee siis tehtävien Tuottaja, Kuluttaja ja Puskuri määrittely- ja runko-osat. (6p)

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ä

Erään järjestelmän huoltaminen onnistuu vain siinä vaiheessa, kun järjestelmä on kytketty pois päältä. Oheisessa ohjel -
massa yhteinen muuttuja tila kuvaa laiteen käyttömoodia. Huoltoon siirtävässä säikeessä poissulkeminen on kuiten-
kin hoidettu väärin. Miten? Hahmottele suoritusketju, jossa väärä toiminta tulee näkyville. Miten koodia tulisi korjata?
(4)
lukitus : SEMAPHORE (1);
tila : TYPE OF ( päällä, pois, huollossa );
PROCEDURE huoltoon() =
IF( tila = pois ) THEN
lukitus.P;
tila := huollossa;
lukitus.V;
END IF;


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