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.
În scopul <strong>de</strong>zvoltarii unui formalism care sa permita realizarea <strong>de</strong> mo<strong>de</strong>le<br />
executabile (care permit translatarea automata <strong>în</strong> cod sursa), am <strong>de</strong>finit <strong>în</strong> sectiunea a<br />
cincea o exten<strong>si</strong>e a hartilor <strong>de</strong> stari <strong>de</strong>finite <strong>în</strong> UML, numita harta <strong>de</strong> stari scalabila.<br />
Definirea semanticilor acestei variante este precedata <strong>de</strong> <strong>de</strong>finirea unui mo<strong>de</strong>l obiect<br />
suficient <strong>de</strong> general, care este caracteristic tuturor limbajelor <strong>de</strong> programare care<br />
implementeaza primitive <strong>de</strong> interactiune <strong>în</strong>tre activitati concurente bazate pe<br />
<strong>în</strong>capsulare.<br />
4.2. Sisteme reactive<br />
În <strong>analiza</strong> <strong>si</strong>stemelor <strong>de</strong> calcul exista o dihotomie fundamentala care<br />
tranziteaza frontierele dintre <strong>si</strong>stemele secventiale sau paralele, centrale sau<br />
distribuite, imperative sau functionale. Aceasta dihotomie este <strong>în</strong>tre <strong>si</strong>stemele<br />
transformationale <strong>si</strong> cele reactive.<br />
Sistemele tranformationale sunt acele <strong>si</strong>steme care pot fi <strong>de</strong>scrise prin<br />
intermediul unei relatii <strong>în</strong>tre valorile <strong>de</strong> intrare <strong>si</strong> <strong>de</strong> ie<strong>si</strong>re ale acestora. Aceste<br />
<strong>si</strong>steme primesc anumite valori sau semnale <strong>de</strong> intrare pe baza carora vor produce, <strong>în</strong><br />
mod <strong>de</strong>terminist sau nu, valori <strong>de</strong> ie<strong>si</strong>re sau reactii, dupa care executia lor ia sfâr<strong>si</strong>t.<br />
Valorile sau semnalele <strong>de</strong> intrare sunt complet cunoscute <strong>de</strong> catre <strong>si</strong>stem <strong>în</strong> momentul<br />
invocarii sale, iar producerea rezultatelor nece<strong>si</strong>ta o anumita perioada <strong>de</strong> calcul.<br />
Sistemele transformationale au o structura liniara, iar <strong>si</strong>ngurele stari care au relevanta<br />
pentru <strong>de</strong>scrierea acestora sunt starile initiale <strong>si</strong> cele finale (figura 4.1).<br />
SISTEM<br />
TRANSFORMATIONAL<br />
intrari (date) ie<strong>si</strong>ri (rezultate)<br />
90<br />
timp<br />
Figura 4.1. Schema <strong>de</strong> functionare a unui <strong>si</strong>stem transformational<br />
Sistemele <strong>de</strong> achizitie a datelor, <strong>si</strong>stemele <strong>de</strong> compre<strong>si</strong>a a vocii sau procedurile<br />
<strong>si</strong>mple <strong>de</strong> calcul a radicalului sau logaritmului unui numar reprezinta exemple <strong>de</strong><br />
<strong>si</strong>steme transformationale.<br />
Spre <strong>de</strong>osebire <strong>de</strong> <strong>si</strong>stemele tranformationale, <strong>si</strong>temele reactive se<br />
caracterizeaza prin faptul ca interactioneaza continuu cu mediul din care fac parte