Inregistreaza | Ai uitat parola?

5.6. Realizarea operatiillor multitasking prin intermediul mesajelor si cutiilor postale

Numar pagini 5
Nume 5.6. Realizarea operatiillor multitasking prin intermediul mesajelor si cutiilor postale
Subiect SOLTR
Institutie Universitate
Universitate Facultatea de Automatica, Calculatoare, Electronica
Pret 50 puncte
Evaluarea calitatii 0 / 0 (100%)
Adaugat 18-06-2009
Adaugat de dktf0406
Descarcat 0
Marimea fisierului 0 KB
Formatul fisierului pdf
Cuvinte cheie realizare , operatii , multitasking , intermediul , mesajelor , cutiilor , postale , utilizare , concept , monitor , rendezvous
Format: pdf
Pret: 50 puncte
Descrierea materialului:
Utilizarea conceptului de MONITOR pentru realizarea operatiilor multitasking
Utilizarea conceptului de RENDEZVOUS pentru realizarea operatiilor multitasking
Extras din material:
5.6. Realizarea opera?iillor multitasking prin intermediul mesajelor ßi cutiilor poßtale
Acest mod de realizare a opera?iillor multitasking a fost creat de Hoare ?n anul 1972.
Mesajul reprezint? un anumit volum de informa?ii, de regul? cu structur? fix?, care trebuie
transmis de la un task c?tre alt task ?n procesul interac?iunii lor. Taskul care a transmis un mesaj,
trebuind s?-ßi continue execu?ia, face necesar? memorarea mesajului pän? ce acesta va fi
recep?ionat de cel?lalt task. Zona din memorie unde sunt ?nscrise informa?iile necesare pentru
transmisia ßi recep?ia corect? a mesajelor poart? denumirea de cutie poßtal? (mailbox).
?n cadrul acestui mecanism, mesajele sunt manevrate prin intermediul a dou? directive:
- TRANSMITE(adres? cutie poßtal?, adres? mesaj);
(SEND)
- RECEP?IONEAZ?(adres? cutie poßtal?, interval de timp t).?
(RECEIVE)
Dac? ?n directiva RECEP?IONEAZ?, intervalul de timp t este nul, atunci taskul care?
apeleaz? aceast? directiv? se va bloca pän? la sosirea mesajului la cutia poßtal? specificat?. Dac?
intervalul de timp este nenul ( 0), atunci taskul se va bloca fie pän? la sosirea mesajului, fie?t ?
pän? la expirarea intervalului de timp t. O alt? particularitate a mecanismului const? ?n aceea c??
mesajele transmise de un task nu se ?nscriu unele peste celelalte, ci formeaz? o coad? de mesaje.
De asemenea, dac? mai multe taskuri solicit? un mesaj de la o cutie poßtal? la care mesajul ?nc?
nu a sosit, taskurile formeaz? ßi ele o coad? de aßteptare de tip FIFO. Astfel, dac? un mesaj este
transmis la o cutie poßtal? la care aßteapt? mai multe taskuri, el va fi preluat de primul task din
coada de aßteptare la cutie. Dac? un task soseßte la o cutie poßtal? la care aßteapt? mai multe
mesaje, taskul va primi primul mesaj din coada de mesaje.
Prin intermediul mesajelor ßi cutiilor poßtale, opera?iile multitasking permit o tratare
unitar?. Astfel, schema de sincronizare a dou? taskuri pe un eveniment exterior este prezentat? ?n
Fig. 5.15.
Figura 5.15.
Taskul T2 este planificat pentru execu?ie de c?tre un alt task T1 numit task planificator,
care are o structur? ciclic? bine determinat?:
- aßteapt? pe o cutie poßtal? CX un mesaj de la un periferic P sau din proces, mesaj care
are semnifica?ia c? evenimentul exterior a avut loc;
5 - 13
RECEIVE(CX, 0)
RECEIVE(C2, 0)
SEND(C1, MES_SINCR)
PCX
C2
C1
Secven?? de ini?ializare Secven?? de ini?ializare
RECEIVE(C1, 0)
SEND(C2, MES_RASP)
Realizare func?ie task
dependent? de eveniment
SEND(C2, MES_R?SP)
Task T1 (planificator) Task T2
- aßteapt? pe o cutie poßtal? C2, un mesaj r?spuns MES_R?SP de la taskul T2 care
specific? faptul c? acest task este func?ional;
- transmite prin cutia poßtal? C1 mesajul de sincronizare MES_SINCR taskului T2 care
va permite intrarea acestuia ?n execu?ie;
- revine ?n aßteptarea mesajului pe cutia poßtal? CX.
Observa?ie: La pornire, taskul planificator T1, ?n secven?a de ini?ializare, trebuie s? transmit? un
mesaj r?spuns MES_R?SP ?n cutia poßtal? C2 pentru a-ßi putea continua execu?ia (taskul T2
neexecutändu-se niciodat? nu a putut s? depun? nici un MES_R?SP ?n cutia poßtal? C2 chiar
dac? acesta este func?ional).
Taskul T2 are ßi el, ?n general, o structur? ciclic? bine determinat?:
- aßteapt? pe cutia poßtal? C1 mesajul de sincronizare de la taskul T1 pentru a-ßi putea
continua execu?ia;
- transmite, prin cutia poßtal? C2, taskului T1 mesajul r?spuns care confirm? c? taskul T2
este func?ional ßi deci va putea primi un nou mesaj;
-...


Materiale similare

Nume: Cap.4. Sisteme de operare in timp real
Extras din material: ...portate 15 evenimente, iar variabila CONTOR = 16 ßi nu 0 cum ar fi trebuit s? fie ?n mod normal. Exemplul 3: Se consider? 2 taskuri T1 ßi T2 care scriu fiecare cäte un mesaj pe consola operatorului (display), folosind pozi?ionarea direct? a cursorului ?n cäte o pozi?ie (linie, coloan?) a consolei. Task T1 Task T2 Pozi?ioneaz? cursor ?n (L1,C1) Pozi?ioneaz? cursor ?n (L2,C2) Scrie MESAJ 1 Scrie MESAJ 2 MESAJ 1 ßi MESAJ 2 sunt de fapt ßiruri de caractere, iar (L1, ...
Nume: Cap.5. Interactiunea taskurilor concurente
Extras din material: ...ua?ii nedorite ßi care trebuie eliminate. De exemplu, dac? taskul aflat ?n execu?ie este blocat ?n propria sa sec?iune critic?, atunci ?ntrucät v(SEM) a r?mas 0 (dup? execu?ia primitivei P(SEM)) se realizeaz? blocajul infinit al tuturor celorlalte taskuri care utilizau aceeaßi resurs?. Din aceast? cauz? trebuie luate m?suri pentru eliminarea acestei situa?ii, sau de eliberare a resursei. Pentru a-i garanta fiec?rui task introducerea ?n sec?iunea sa critic? dup? un interval de timp finit,...
Nume: Cap.1. Structuri de sisteme cu microprocesor pentru conducerea proceselor industriale
Extras din material: ...mplexe de comunicare cu toate echipamentele de calcul din cadrul structurii, avänd rolul de a permite supravegherea ßi conducerea operativ? a procesului. Dinamica elabor?rii rezultatelor la nivelul 3 este relativ lent?. Minicalculatorul primeßte date sintetice despre evolu?ia procesului de la nivelul inferior (nivelul 2), iar m?rimile rezultate ?n urma calculelor nu intervin direct ?n proces, deci la acest nivel nu sunt necesare cuploare de proces. O problem? important? a acestei struct...



Comentarii asupra materialului "5.6. Realizarea operatiillor multitasking prin intermediul mesajelor si cutiilor postale"

Nimeni nu a verificat inca acest material. Fi primul care isi publica opinia



Publica-ti opinia

Logheaza-te pentru a posta un comentariu