A maior rede de estudos do Brasil

Grátis
10 pág.
Sistemas Operacionais e Programação Concorrente - Capítulo 11

Pré-visualização | Página 4 de 5

, 
r e a dy)
r e c e Yv e 9b u ße r u m
/ * c o n s o m e m e n s a g e m m s g * /
e n d l o o p
19 D e v e s e d i z e r qu e 0 c o n s u m ido r fa z is 1o " m e io c o n t r a r i a do "
, po i l s e u in t e r e s s e e a pe n a s r e c e be r m e n s
agen s
Scanned by CamScanner
C a pf t u lo 1 1 C o m u n i c a çao v i a t r o c a d e - 14 3
pt o c e s s b u ßFe r n 1a n a g e r
p la c e : a m y t l 10 ] o f i n te g e r
i n
, 
o u t : i n t e g e r i n i t i a l 1
c o u n t : i n te g e r i n i t i a l 0
t m g : i n t e ge r
lo o p
i f c o u n t > O a n d c o u n t < 10 / * bM e r p a r c i a l m e n t e c he i o /
t he n { r e c e i v e (a n y , n zsg ) ; / * r e c e be de qq p r o c e s s o * /
\î a n y = p r o du c e r
the n { p la c e [ in ] : - m sg ; / * r e c e be m s g * /
in : = ( in m o d 10) + 1
c o u n t = c o u n t +
e l s e { 1?1sg : = p ta c e [o u l ] ; / * a n y - c o n s u m e r * /
s e n d(c o n s u m e r , m sg ) ; / * e n v i a n zsg * /
o u t : = (o u t m o d 10 ) + 1
c o u n t : = c o u n t 1
e l s e i f c o u n i = O / * bu ße r v a z i o · /
t h e n { r e c e i v e (p r o d u c e r , m s g )
p la c e [ i n ] : = 1?1sg
i n : = ( in m o d 10) + 1
c o u n 1 = c o u n t +
e l s e { r e c e i v e (c o n s u m e r , n zsg ) ; / * bm r c he i o * /
m s g : = p la c e [o u t ]
s e n d(c o n s u m e r , m s g )
o u t : = (o u 1 m o d 10 ) + 1
c o u n B = c o u
e n d l o o p
E s t e p r o g r a m a e s t á e s c r i to de a c o r do c o m a s
in t a x e da l i n gu a ge m V a l e 4
11
. 
4 Se n d e r e c e i v e n a l i n g u a ge m W
A l i n g u a ge m V a le 4 i m p le m e n t a a s o pe r a çõe s s e n d 
e r e c e i v e b l o q u e a n te s , pe r m i t i n d o t a m b m a
fo r m a r e c e i v e (a n y , M s g ) A l m d i s s o , a l i n 吕 u a go m a dm i te o e n v i o n äo 
bl o q u o a n te a t r a v s d a
o pe r a qä o n b j e n d
p a r a i m p l e m e n t a r a o pe r a çao n ao b l o q u e a n t e n
b s e n d , c a da p r o c e s s o o u th r e a d do
s i s t e m a do t ad o de u m a c a i x a p o s t a l p r l v a t l v a ( i s to 6 , u m a f i l a p a r a r e c e pçäo de m e n s a ge
n s ) A
s e m ân t i c a da s o p e r a çö e s s e n d , n b j e n d e r e c e i v e a p r e s e n
t a d a i n f o r m a l m e n te a s e g u i r
Scanned by CamScanner
144 s is t e m a s o pg c i o e 
p r o g r a m a çüo C o n c o r r e n t e
S S T o s c a n i
, 
R S d e O l i v e A s c a r i r r im i
A o pe r a ç o s e n dEd , M sg ) b l o qu e i a o e x e c u
to r a té qu e o p r o c e s s o (o u th r e a d) id r e so lv a
r e c e be r a m e n s a g e m M s g o p r i m e i r o a rg
u m e n t o (i dent i í i caçi o d o r e c e p t o r ) po d e s e r u m n o me
d e p r o c e s s o 
j O 
o u u m v a lo r n u m ér i c o (c o n s t a n te o u v a r i áv e l i n te i r a ) qu e é i n te r pr e t ado c o m o 0
n ú m e r o ún i c o (p id ) de u m p r o c e s s o o u t ìzr e a d A m e n s a g e m 
M s g p o de s e r fo r m a da po r v ár ios
v a l o r e s i n t e i r o s o u b o o le a n o s (t a m a n ho v a r i áv e l ) , s e pa r a do s po r v írg u
l a
, 
s e n do qu e o s n o c e sso s
e n d e r e r e c e i ve r d e v e m c o n c o r da r n o s t ama
n h os d as m e n s a g e n s e n o s t i pos d os v a l or es
t r a n s m i t id o s
A o pe r a ção n bL s e n d (id , M sg ) e n v i a a m e n s a g e m M s g p a r a o p r o c e s s o o u t hr e a d U de
f o r m a a s s fn c r o n a A m e i r s a g e m M sg é s i m p l e s m e n t e e n c a d e a d a n a c
a i x a po s t a l d o r e c e p to r , sem
q u e h a j a b l o qu e i o do r e m e t e n te V a l e m a s m e s m a s o b s e r v a çõe s s o b r e a s fo r m a s de e s pe c i fi c ar id
e M s g fe i t a s n o p a r ág r a fo a n te r i o r
A o p e r a ção r e c e ïv e (id , M s g ) b l o q u e i a o p r o c e s s o e x e c u t o r a t é q u e c he gu e u m a
m e n s a ge m d o p r o c e s s o id O p r i m e i r o a r g u m e n t o , a l ém de n o m e d e p r o c e s s o o u v a
l o r n u m ér i c o
,
p o d e s e r t a m b ém a p a l a v r a a n y , qu e s i g n i f i c a o d e s e j o de f e c e b e r m e n s a g e m de qu a lqu e r
p r o c e s s o (e s p e r a n ã o d e t e n ?1i n ts 1ic a ) N e s t e c a s o , a pó s a r e c e pç ão da m e n s a g e ó o v a l o r da
v a r i áv e l l o c a l a n y 
6 1 i d e n t i f i c a o p r o c e s s o q u e e n v i o u e s s a m e n s a g e m A m e n s a ge m M sg é
fo r m a d a p o r v a r i áv e i s i n t e i r a s o u b o o l e a n a s , a s q u a i s i r o r e c e b e r o s v a l o r e s tr a n s m i t i do s pe la
o p e r a ç ão s e n d
1 1
. 
5 E X E R C I C l O S
E x e r c :c i o 11 1 I m a g i n e u m p a r p r o du t o r c o n s u m i d o r s e c o m u n i c a n d o d i r e t a m e n t e a tr a v és de
o pe r a çõe s s e n d e r e c e i v e b lo q u e a n te s I s to é , o p r o d u t o r (c i c l i c a m e n t e ) p r o du z u m a m e n s a ge m e
l i
a e n v i a pa r a o c o n s u m i do r , e e s te (c i c l ic a m e n t e ) r e c e be u m a m e n s a ge m e a c o n s o m e COnvença
! : : s e q u e a v e l o c i da de do s i s t e m a é de t e r m i n a da pe l a v e l o c i da de do m a i s l e n t o d o s do is p r o c e sso s
E x e r c fc i o 11 2 I m a g i n e u m pa r p r o du to r c o n s u m ido r s e c o m u n i c a n do a t r a v s de u m b id e r de
ta m a n ho n e qu e a v e l o c i da de de u m de l e s (t a n to fa z s e r o p r o du t o r c o m o o c o n s u n l i do r) 
é
s e m p r e m a i o r q u e a do o u t r o Co n v e n ça s e qu e ta m bém n e s te c a s o a v e l o c ida de do s i s ten
ra é
de te r m i n a da pe l a v e l o c ida de do m a i s le n t o D ic a s e o p r o d u t o r é m a i s le n t o , e n tao ba s
ta uma
po s IçÃo n o b u Ñe r s e o c o n s u m i do r é m a is le n to
, 
a pó s o b id e r e n c he r , o s i s te m a v a i a v a nç
ar na
v e lo c id a de d o c o n s u m ido r ( I s to m o s t r a q u e a u t i l i z a ç i<o de b rt ûir r s só 6 e f ic a z q u a n do a r e
laç8o
e n t r e a s v e lo c id a d e s do s p r o c e s s o s c o m u n ic a n te s v a r i a n o te m po )
P 1
, 
o n de 1 ë u m a c o n s t a n te in te i r a C lo n e s de p r o c e ss o s (c r i a do s a par t i r de u m m o de lo ) e t jj r ea d ï só po
u * '
r e fe Ddo s po r s e u s n i1n 1e r o s ún i c o s
6 1 A v a r i áv e l a n y (a i s i m c o m o o c o r r e c o m m y s e (ñ u m a v a r iáv e l in te i r a qu e t o do p r o c e s s o (o u t h r ea d) po s
su i e 11l
o
pr e c i s a se r de c la r a da A v ar i áv e l u n y t a m b m po de ae r u sa da n a o pe r a çäo Jo 1n d a l i n s u a gc m V 4
e :
Scanned by CamScanner
C a p f t u lo 1 1 C o m u n i c a çäo v i a t r o c a d e - 14 5
E x e r c f c i o 1 1 3 C o n s i d e r a n d o o ke r n e l de SO d i s c u t i d o n o c a p í t u l o 5 e s u po n d o q u e o s r e g i s t r o s
de s c r i t o r e s p o s s u a m u m c a m p o Jì ta M sg p a r a e n c a d e a m e n t o d e m e n s a g e n s , e s p e c i f i q u e c o m o
po d e r i a s e r f e i t a a i m p l e m e n t a ç ão d a s o p e r a çõ e s n b s e n d (p , m s g ) e r e c e i v e (q , m s g ) n