Tehnici de implementare a concurentei în analiza si proiectarea ...
Tehnici de implementare a concurentei în analiza si proiectarea ...
Tehnici de implementare a concurentei în analiza si proiectarea ...
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
(sa, m0^Cr) ? S ? M*,<br />
un<strong>de</strong> sa reprezinta starea activa iar m0 primul mesaj aflat <strong>în</strong> coada C la un moment dat.<br />
Configuratie initiala a unei harti <strong>de</strong> stari este data <strong>de</strong> tuplul (s0, ? ).<br />
Executia unui obiect activ mo<strong>de</strong>lat printr-o harta <strong>de</strong> stari HSS 0 presupune<br />
interpretarea succe<strong>si</strong>va a mesajelor existente <strong>în</strong> coada <strong>de</strong> mesaje. Interpretarea unui<br />
mesaj poate avea ca efect modificarea configuratiei hartii <strong>de</strong> stari sau returnarea<br />
mesajului <strong>în</strong> coada <strong>de</strong> mesaje. Vom <strong>de</strong>fini <strong>în</strong> cele ce urmeaza notiunile <strong>de</strong><br />
interpretare a unei configuratii, respectiv executie a unei harti <strong>de</strong> stari HSS 0 .<br />
functia:<br />
Definitie 3. Se numeste interpretare a configuratiei unei harti <strong>de</strong> stari HSS 0<br />
? 0 : S ? M* ? S? SF ? M*,<br />
? 0 ? ( s',<br />
C'r<br />
), daca ? ( sa<br />
, m0,<br />
s')<br />
? T<br />
?<br />
(sa,m0^Cr) = ? ( sa<br />
, C'r<br />
), daca ? s1,<br />
s2<br />
? S : ( s1,<br />
m0,<br />
s2<br />
) ? T .<br />
? ( sa<br />
, C'r<br />
^m0),<br />
in rest<br />
Coada <strong>de</strong> mesaje C poate suferi modificari <strong>în</strong> paralel cu interpretarea unei<br />
configuratii, astfel ca <strong>în</strong> <strong>de</strong>finitia functiei ? data mai sus este po<strong>si</strong>bil ca Cr ? C’r (<strong>de</strong><br />
obicei C’r = Cr^R, un<strong>de</strong> R ? M* reprezinta o secventa <strong>de</strong> mesaje receptionate <strong>de</strong> catre<br />
obiect <strong>în</strong> timpul interpretarii).<br />
Notiunea <strong>de</strong> interpretare a configuratiei mo<strong>de</strong>leaza functionalitatea<br />
gestionarului <strong>de</strong> interfata din cadrul unui obiect activ. Astfel, un mesaj este acceptat,<br />
iar operatia atasata acestuia este executata, <strong>în</strong> cazul <strong>în</strong> care mesajul eticheteaza o<br />
tranzitie ce pleaca din starea activa sau daca acesta nu apare <strong>în</strong> eticheta nici unei<br />
tranzitii a hartii <strong>de</strong> stari. În caz contrar mesajul este reintrodus <strong>în</strong> coada <strong>de</strong> mesaje. În<br />
cazul <strong>în</strong> care <strong>în</strong> cadrul hartii <strong>de</strong> stari exista mai multe tranzitii etichetate cu acela<strong>si</strong><br />
mesaj <strong>si</strong> a caror stare sursa coinci<strong>de</strong> cu starea activa, alegerea unei tranzitii pentru<br />
interpretare se realizeaza <strong>în</strong>tr-o maniera ne<strong>de</strong>terminista. Pentru eliminarea<br />
ne<strong>de</strong>terminismului se pot atasa tranzitiilor prioritati.<br />
Definitia 4. Se numeste executie a unei harti <strong>de</strong> stari HSS 0 o secventa finita<br />
sau infinita <strong>de</strong> interpretari succe<strong>si</strong>ve a configuratiei hartii <strong>de</strong> stari, pornind <strong>de</strong> la<br />
configuratia initiala a acesteia, <strong>si</strong> o vom nota:<br />
(s0, ? ) ? ? ?<br />
? 0<br />
(s1, m1^Cr1) ? ? ?<br />
? 0<br />
113<br />
... ? ? ?<br />
? 0<br />
(sk, mk^Crk) ? ? ?<br />
? 0<br />
... ,