Tentamenopgave “Cooperating Sequential Processes” op woensdag 21 juni 1967 des middags van 1.30 – 5.30 uur

In ieder van de drie parallelle cyclische processen, genaamd resp. A, B en C, komt eens per cyclus een kritische zone voor.
De drie processen worden alle buiten hun kritische zone gestart en zijn onderling zo gesynchroniseerd dat aan drie voorwaarden voldaan is nl.:

1.   Op elk moment is hoogstens èèn proces in zín kritische zone bezig.

2.  

Op grond van voorwaarde 1 kunnen de uitvoeringen van kritische zones in de volgorde waarin zij worden uitgevoerd, genummerd worden: 0, 1, 2, ... . Zij Pi gelijk aan het proces dat zo’n uitvoering met nummer i voor zijn rekening neemt.
De rij P0, P1, P2, ... is opgebouwd uit een onbepaalde (d.w.z. snelheidsafhankelijke) opeenvolging van de volgende patronen:

A, B, C ”
B, C, A
C, A, B ”.

3.   Wanneer meer dan een proces, wachtend om aan de uitvoering van zín kritische zone te beginnen, op zeker moment kan worden toegestaan dit daadwerkelijk te doen dan heeft het langst wachtende proces voorrang.

Construeer de drie processen en hun omgeving en toon de correctheid van de oplossing aan.

 

N.B. Papier éénzijdig beschrijven !