Creeaza.com - informatii profesionale despre


Cunostinta va deschide lumea intelepciunii - Referate profesionale unice




Acasa » referate » informatica
Procese secventiale comunicante. Rendez-vous simetric.

Procese secventiale comunicante. Rendez-vous simetric.




Procese secventiale comunicante. Rendez-vous simetric.

Metoda proceselor secventiale a fost propusa de Hoare, sub forma chiar a unui limbaj. Unul din conceptele de baza al acestor procese secventiale comunicante il reprezinta comenzile cu garda.

Aceste comenzi sunt folosite pentru a exprima comportamentul nedeterministic al proceselor ca reactie, de exemplu, la evenimentele externe ce apar intr-o ordine oarecare, ceea ce este foarte frecvent in practica sistemelor in timp real.

*[garda_1 -> comanda_1

garda_2 -> comanda_2

garda_3 -> comanda_3

.

.

]


O comanda cu garda este formata dintr-o garda (expresie booleana), urmata de o lista de instructiuni ce se poate executa numai daca garda este adevarata. Constructii alternative sau repetitive se pot exprima cu ajutorul unor seturi de comenzi cu garda, astfel:

[garda_1 -> comanda_1

garda_2 -> comanda_2

garda_3 -> comanda_3

.

.

]

unde caracterul special este folosit pentru separarea comenzilor cu garda, caracterul * indica repetitie, garda_n reprezinta o expresie booleana, iar comanda_n este lista de instructiuni asociata comenzii cu garda. De exemplu :



[ x>=y -> max:=x

y>=x -> max y

]

Daca ambele garzi sunt valabile, se vor executa ambele instructiuni. Daca nici una dintre garzi nu este adevarata, programul va fi abortat.

Intr-o constructie repetitiva, lista se executa pana cand garda devine neadevarata.

Daca un proces A emitator doreste sa transmita date unui alt proces B receptor, atunci cele doua procese trebuie sa-si indice reciproc aceasta dorinta de a comunica prin executarea unei comenzi de emisie si respectiv de receptie. Daca se intampla ca procesul A sa intalneasca primul, in timpul executiei, o comanda de emitere mesaj, atunci el va fi suspendat pana cand procesul B va intalni, in timpul executiei, o comanda de receptie mesaj. In mod similar si simetric, daca procesul B va intalni primul o comanda de receptie de mesaj, el va fi suspendat pana ce procesul A va intalni o comanda de emitere mesaj. In momentul cand ambele procese s-au sincronizat, datele (mesajul) sunt transferate imediat dupa care fiecare proces isi va relua executia pe cont propriu, in paralel.

Aceasta metoda de sincronizare poarta denumirea de rendez-vous.

Modelul de rendez-vous propus de Hoare este simetric, in sensul ca ambele procese ce comunica intre ele sunt tratate in mod egal.

task B;

var y:date;

begin

A ? y;

end;

In exemplul care urmeaza, procesul A emitator doreste sa transfere datele x procesului B :

task A;

var x:date;

begin

B ! x;

end;

Comanda “B!x” din procesul A specifica dorinta de transmitere a datelor x (valorilor lui x) catre procesul B, iar comanda corespunzatoare “A?y” din procesul B specifica acceptul de a receptiona datele si a le asocia ca valori ale lui y.

Pentru a realiza acest transfer de date, cele doua procese se asteapta unul pe altul pana ce ambele ajung in sincronism (in dreptul comenzilor de rendez-vous), moment in care are loc transmiterea datelor intre procese, dupa care fiecare proces isi va continua executia in paralel, in mod independent.

Aceasta varianta de rendez-vous propusa de Hoare este simetrica, in sensul ca ambele procese care se sincronizeaza contin explicit numele celuilalt proces, ceea ce din punct de vedere practic reprezinta o dificultate majora, deoarece multe programe - cum sunt, de ex., componentele unei biblioteci de programe - nu pot cunoaste dinainte numele programelor apelante. O solutionare a acestei probleme este prezentata in subcapitolul urmator.







Politica de confidentialitate


.com Copyright © 2021 - Toate drepturile rezervate.
Toate documentele au caracter informativ cu scop educational.


Proiecte

vezi toate proiectele
 SCHITA DE PROIECT DIDACTIC GEOGRAFIE CLASA: a IX-a - Unitatile majore ale reliefului terestru
 PROIECT DIDACTIC 5-7 ani Educatia limbajului - Cate cuvinte am spus?
 Proiect atestat Tehnician Electronist - AMPLIFICATOARE ELECTRONICE
 Proiect - masurarea si controlul marimilor geometrice

Lucrari de diploma

vezi toate lucrarile de diploma
 Lucrare de diploma - eritrodermia psoriazica
 ACTIUNEA DIPLOMATICA A ROMANIEI LA CONFERINTA DE PACE DE LA PARIS (1946-1947)
 LUCRARE DE DIPLOMA MANAGEMENT - MANAGEMENTUL CALITATII APLICAT IN DOMENIUL FABRICARII BERII. STUDIU DE CAZ - FABRICA DE BERE SEBES
 Lucrare de diploma tehnologia confectiilor din piele si inlocuitor - proiectarea constructiv tehnologica a unui produs de incaltaminte tip cizma scurt

Lucrari licenta

vezi toate lucrarile de licenta
 LUCRARE DE LICENTA CONTABILITATE - ANALIZA EFICIENTEI ECONOMICE – CAI DE CRESTERE LA S.C. CONSTRUCTIA S.A TG-JIU
 Lucrare de licenta sport - Jocul de volei
 Lucrare de licenta stiintele naturii siecologie - 'surse de poluare a clisurii dunarii”
 LUCRARE DE LICENTA - Gestiunea stocurilor de materii prime si materiale

Lucrari doctorat

vezi toate lucrarile de doctorat
 Diagnosticul ecografic in unele afectiuni gastroduodenale si hepatobiliare la animalele de companie - TEZA DE DOCTORAT
 Doctorat - Modele dinamice de simulare ale accidentelor rutiere produse intre autovehicul si pieton
 LUCRARE DE DOCTORAT ZOOTEHNIE - AMELIORARE - Estimarea valorii economice a caracterelor din obiectivul ameliorarii intr-o linie materna de porcine

Proiecte de atestat

vezi toate proiectele de atestat
 PROIECT ATESTAT MATEMATICA-INFORMATICA - CALUTUL INTELIGENT
 Proiect atestat Tehnician Electronist - AMPLIFICATOARE ELECTRONICE
 ATESTAT PROFESIONAL LA INFORMATICA - programare FoxPro for Windows
 ATESTAT PROFESIONAL TURISM SI ALIMENTATIE PUBLICA, TEHNICIAN IN TURISM




SISTEME DE OPERARE
CICLUL DE VIATA A SISTEMULUI INFORMATIONAL
Probleme la operarea de virgula flotanta
ARBORI BINARI DE CAUTARE
Sinteza unui dispozitiv secvential de inmultire a numerelor binare reprezentate in semn-marime
Pasii de realizare a site-ului
Algoritmul Dijkstra pentru gasirea celui mai scurt traseu intre doua noduri date ale unui graf
Incarcarea rapida prin motoarele de cautare




Termeni si conditii
Contact
Creeaza si tu