A maior rede de estudos do Brasil

Grátis
35 pág.
Sistemas Operacionais e Programação Concorrente - Anexos

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

s ) p r i v a t i v a e s ó o p r óp r i o p r o c e s s o
p o d e r e t i r a r m e n s a g e n s ó s u a c a i x a po s t a l I s t o é f e i t o a t r a v és de o pe r a çMe s r e c e i v e
r e c e i v e (P r o c l d
, 
M s g )
B l o q u e i a o p r o c e s s o a t é q u e c h e g u e u m a m e n s a g e m do p r o c e s s o PT o c l d O p r i m e i r o a r g u m e n t o ,
a l ém d e n o m e d e p r o c e s s o o u v a l o r n u m éDc o , p o de s e r t a m bém a p a l a v r a a n y , q u e s i g n i f i c a o
de s e j o d e r e c e b e r m e n s a g e m d e q u a lq u e r p r o c e s s o (e s p e r a n â o d e t e n t 1i n ts t i c a ) N e s t e c a s o , a pó s
a r e c e p ç o d a m e n s a g e m . o v a l o r d a v a r i áv e l a n y 
8 3 ide n t i f i c a o p r o c e s s o (o u t h r e a d ) q u e e n v i o u
e s s a m e n s a g e m M s g é u m a l i s t a de 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 , s e p a r a d a s po r v í r g u l a , 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 t r a n s m i t i do s
O B S o s p r o c e s s o s s e n d e r e r e c e i v e r de v e m c o n c o r da r n o s t a m a n ho s d a s m e n s a ge n s e n o s t i po s
d o s v a l o r e s t r a n s m i t i d o s O s e n d e r po de f a z e r o e n v i o a t r a v s de u m a o pe r a ção s e n d o u n b s e n d
i n d i fe r e n t e m e n t e
i d = f o r k (o u i d = f o r k o )
C r i a u m a n o v a t h r e a d e c o l o c a a s u a ide n t i f i c a ção (n úm e r o ún ic o ) n a v a r i áv e l i d A n o v a t h r e a d
e x e c u t a e m p a r a l e l o c o m a s u a m ãe , a pa r t i r d o c o m a n d o q u e s e g u e a e s t e
i d = n e w P 11a n 1 e ( a r g l l a r gz ' ' " , a r gN )
C D a u m n o v o p r o c e s s o a p a r t i r d o m o d e l o (t e n 1p la t e ) Pn a m e , c o lo c a n do a ide n t i f i c a ção do f i l ho
n a v a r i áv e l i d Se n ao n e c e s s á r i o c o n he c e r a ide n t i f i c a ç ilo d o f i l ho , n e w po de s e r u s a do c o m o
s u b r o t i n a ( f o r a de c o m a n d o d e a t r i b u iç o )
1z N o c a r o d o p r o c e s r o s e r o e le m e n t o I d e u m a r r a y de pr o c e e1o s d e n o m i n a d o P o s e u n o Bn
e po de s e r r e fe h de po r
P j o n d e 1 e u m a c o n s t a n t e i n t e i r a C l o n e s de m o d e lo s d e p r o c e l 1 o a e t h r ea ds l ó po de m s c r r e fc Ddo s po r s e u s
n ú m e r o e û n i c o r
o3 A v a r i áv e l a n y " «u 1 i m c o m o m y 1c l f
" ) e u m a v a r i áv e l in te i r a qu e to do pr o c e s Bo (o u i h r 1r¢1¢O po s s u i e n ao p r e c i s a
i e r de c l a r a dn E s t a v a r i áv e l t a m b m po d e s e r u 1a d a e m o pe r a çoc 1 j o i n
Scanned by CamScanner
226 S i s t e m a s o pe r a c i o n a i s e p r o g r a 1n m c o n c o r ( n t e S S T o s cm R S de O l i v e i r a e A Si n i
j oi nod o u v a r j o i n ¡ d D
B l o qu e i a a t l Br e a d (o u p r o c e s s o ) qu e e x e c u t a o Jo l n a té q u e o f i l ho (p r o c e s so o u th r e a d)
ide n t i fi c a d o p o r i d t e r m i n e E s t a p r i m i t i v a p o de s e r u s a d a c o m o f u n ção o u c o m o s u br o t i n a
U s a d a c o m o f u n ção , e l a r e t o m a o v a l o r qu e o fi lho id e s pe c i f i c o u n o c o m a n d o q u i t
. 
Ao m «» T eT
T a l c o m o o c o r r e n o c o m a n d o r e c e i v e
, 
o a r gu m e n to d e j o i n po d e s e r a p a l a v r a a n y I s to s ign i f ic a
o d e s e jo d e e sp e r a r p e l o t ér m i n o de qu a lqu e r f i l ho N e s s e c a s o , n o r et or no da p r i m i t i v a
, a
v a r i áv e l a n y v a i c o n t e r a i de n t id a de d o f i lh o c u j a e x e c u ção t e r m in o u
q u i t
M a t a o s e u e x e c u t o r A t l1r e a d o u p r o c e s s o de i x a de e x i s t i r n o s i s t e m a
q u i t (X )
I g u a l a o q u i t A d i c i o n a l m e n t e
, 
in fo r m a a o ge n i t o r o v a l o r de X (u m a v a r i áv e l o u c o n s tan te
,
i n t e i r a o u b o o l e a n a ) O ge n i t o r (th r e a d o u p r o c e s s o ) p o de pe g a r e s s e v a l o r u s a n do a p r i m i t i v a
j o i n
, 
c o m o f u n ção A p r o p ó s i t o , u m q u i t s e m a r gu m e n t o c o l o c a o v a l o r z e r o à d i s p o s ição do
g e n i t o r (e qu i v a le a u m q u i t (0 ))
a c c e p t X ( a r g 1 T 1 : a r g? T 2 ; ; a r gN T N ) r e t u r n s T w h e n E L d o C
U m r e n d e z v o u s e n v o l v e du a s t h r e a ds U m a
, 
d e n o m i n a d a c a l l e r
, q u e e x e c u t a u m c a l l pa r a u m a
e n t r y E t O u t r a , de n o m i n a d a a c c e p t o r , qu e e x e c u t a u m a c c e p t p a r a e s s a m e s m a e n 1r y E t A
p Dm e i r a d a s t lzr e a d s q u e c he g a a o s e u c o m a n do (c a l l o u a c c e p t ) s e b l o qu e i a a té q u e a s e gu n da
th r e a d c he g u e a o c o m a n d o c o m p l e m e n t a r (a c c ep t o u c a tt) c o r r e s p o n d e n t e Qu a n do a s e gu n da
1l i r e a d c h e g a a o c o m a n d o c o m pl e m e n t a r , t u do e s tá p r o n t o p a r a o r e n d e z v o u s A p a r t i r da í o par
c a l l e r a c c e p l o r e s tá c o m p r o m i s s a do ( " a m a r r a do " ) p a r a o r e n d e z v o u s A condi çi o d a c l áu su la
w h e n é e n t ão a v a l i a d a Se é v e r d a d e i r a (o u s e e s tá a u s e n t e )
, 
o c o m a n do C e s pe c i f i c a d o n o a c c ep t
é e x e c u t a d o
, 
u s a n do o s a r gu m e n to s pa s s a do s n a c h a m a da E s s a e x e c u ção é fe i t a de fo r m a
m u t u a m e n t e e x c l u s i v a e m r e l a ção a o s d e m a i s r e n d e z v o u s da t a s k Se a c o n d iç o n o
v e r d a d e i r a
, 
o r e n d e z v o u s f i c a pa r a s e r r e a l i z a do m a i s t a r de a4 e a U C p p a s s a pa r a o u t r a r l1r e a d da
r e a ø i is i A pós a c o n s u m a ção do r e n d e z v o u s
, 
o s a rg u m e n t o s de r et or no s ão pa s s a do s pa r a o
c a t l e r e a s d u a s th r e a d s p r o s s e g u e m s u a s e x e c u çõ e s de f o r m a in d e pe n d e n te
d e b u g l
0 c o m a n d o d e bu g 0 i n i c i a u m r a s t r e a m e n to d a e x e c u ção do s p r o c e s s o s e th r e a ds pa r a c a
da
i n s t r u ção e x e c u t a d a , é im p r e s s o o n úm e r o ún ic o do pr o c e s s o (o u th r ¬ a d) qu e a e x e c u to u e o
e n d e r e ço d a i n s t r u ção e x e c u t a da Es s a s in fo r m a çöe s säo m o s t r a da s de " f o r m a c o r r ida
" (n a
m e s m a l i n h a
, 
s e m f a z e r pa u s a )
44 0 m o m e n t o de r e a v a l i ar u m a c o n d i çào pa r a Re a l i z a çao de r e n t le z v o u J ë de c idid o a t r a v és de u m a lgo r i t m o do 
t ipo
1c gu n da c ha n c e " , qu e n äo se r á a qu i de ta lha do B a s ic a m e n t e
, 
a i m p le m c n t a çao e n v o l v e du a s f i las po
r la sk,
f o r m a d a s po r pa f e s c a l l e r a c c ep 1o r c o m pr o m i s sa d o s A pr i m e i r a e a f i la de e spe r a po r e x c lu s ão m útu a d 
Ia f k e a
s e gu n da a l i l a d o s pa r e s qu e j á t i v e r a m a c láu Bu la w he n a v a l i ada c o m o Tu l r e
Scanned by CamScanner
A n e x o A A - V a le 4 227
d e b u g2
0 c o m a n d o d e b u g 2 f a z u m