Sinhronizacija Procesa-Algoritam

You might also like

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 3

RAČUNARI IV

LABORATORIJSKE VEŽBE

SINHRONIZACIJA PROCESA-UPOTREBA SEMAFORA

1.U igri sličnoj „Ne ljuti se čoveče“-tri igrača bacaju kocku, jedan za drugim počev od prvog.
Izuzetak je slučaj kada igrač dobije broj 6 kada baca kocku sve dok dobija broj 6. Predstaviti
bacanje algoritmom za tri procesa: „Prvi“, „Drugi“ i „Treći“. Rezultat svakog procesa je ispis na
monitoru poruke tipa: „broj igrača:dobijen broj“. Procese sinhronizovati sa tri binarna
semafora.
Napomena: Semaforska promenljiva je jedinstvena. Pre bacanja igrač proverava da li je njemu
dozvoljeno bacanje (vrednost semafora postavljena na njegov broj (1, 2 ili 3). Posle bacanja
igrač postavlja vrednost te promenljive nna broj sledećeg igrača, tako da on može da baca.

Primer ispisa:
Prvi:3
Drugi:5
Treći:6,6,1
Prvi:5
Drugi:3
....

Pocetak

S1=1
Ne F IF S1=1

Igrač 1 je na potezu

Igrač 1 izvlači broj n

Da

F IF n==6

S2=1

Ne
F IF S2=1

Igrač 2 je na potezu

Igrač 2 izvlači broj m


F IF m==6

S3=1

F IF S3=1

Igrač 3 je na potezu

Igrač 3 izvlači broj x

F IF x==6

You might also like