Buscar

Sistemas Operacionais e Programação Concorrente - Capítulo 10

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você viu 3, do total de 10 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você viu 6, do total de 10 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você viu 9, do total de 10 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Prévia do material em texto

Scanned by CamScanner
C a p f t u 1o 10
M O N I T O R E S C O M P A T H
E X P R E SS I O N S
E 1 m o r e n o M a r t fn F i e r r o
S i n o f a l la su s a be r D i o s gu a r d a e n t r e s u s s e c r e t o s
po r v e n c e d o r Io c o n f i e s o e l 
y m a n dó q u e t o d o pe s od e b e a p r e n de r t o d o e s o 
c a y e r a s i e m p r e a l a t i e mqu i e n a c an t a r s e d e d iqu e ; 
y s i gü n c o m p De n do yoy a u r a qu i e r o qu e m e e s p l iqu e 
d e n d e qu e ha y b ie n e s y m a l esl o qu e s ign i f i c a e l pe s o 
fu e e i pe s o pa r a pe s a r
l as c u lpa s de l o s m o r t a le s
D o p o n t o de v i s t a t e ó r i c o , a s p a th e x p r e s s io n s a p r
i m o r a m o c o n c e i t o de m o n i t o r N a v e r da de . Fo i
a b u s c a d e s o l u çõe s m a i s a de qu a d a s pa r a o p r o b l e m a 
d e p r o v ar a c o r r e ção 
54 de u m p r o g r a m a
c o n c o r r e n te q u e o r i g in o u e s t a s e quên c i a de m e c a n
i s m o s (s e m áf o r o s , r eg iõe s c r : t i c a s , m o n i t o r e s e
p a t h e x p r e s s io n s ) , o n d e c a d a u m a p r e s e n t a u m a pe r f e i ço a m e n to e m r e l a ção a o a n te
Do r
A c o n t r i b u i ção p Dn c i p a l do s m o n i t o r e s fo i a g r u p a r , e
m u m ún i c o b l o c o \ o s da do s
c o m p a r t i l h a d o s e a s r e g ið e s c r f t ic a s do s p r o c e s s o s
O s da do s c o m pa r t i l ha do s pe lo s p r o c e s s o s
p a s s a r a m a s e r o s da do s do m o n i t o r e a s r e g i i}e s c r f t i c a s pa s s a r a m 
a s o r o s p r o c e d i m e n t o s do
m o n i t o r E s t a c o n c e n t r a ç ão , e m u m ún ic o b l o c o , da s v a r
iáv e i s c o m pa r t i l hada s e do s
p r o c e d i m e n t o s p a r a m a n ip u l á l a s i fo r ç a u m a m a i o r e s t r u t u r a ç
o pa r a o s p r o g r a m a s c o n c o r r e n t e s
to m a n d o o s m a i s a de q u a d o s p a r a a p r o v a d a c o r r e ç=o A
lém d i s s o , i s to pe r m i te q u e u m
c o m p i l a do r d e te c te e r r o s qu e t a l v e z f o s s e m di f fc e i s de lo c a
l i z a r e m te m po de e x e c u çao à :
" t
; ¢
14 p r o v a r q u c u m p r o - c o r r e t o 1 lsn i f i c a de m o n 1 t r a r qu e e l e sa t
is fa z a s s u as e i pe d ñ c a çoe i
Scanned by CamScanner
128 S i s t e m a s O pe r a c io n a is e Pr o g ra m aÆ c o n c o r r e n t e S S T o s c a n i , R S de Ol i c e A sg m j
O s m o n i t o r e s t a m bém e l i m in a r a m a in e f ic iên c i a de e x e c u ção d a s r e giöe s c r f t ic as
c o n d ic i o n a i s C o m r e g ið e s c r ít i c a s , u m p r o c e s s o p a v a l i a r e pe t id a m e n te a s u a c o n d ição de
e n t r a d a n u m a r e gi ão c r f t ic a C o m m o n i t o r e s
, 
o p r o c e s s o p s e b l o q u e i a " ¡n c o n d i c io n a lm e n te ' '
, n o
c a s o d a c o n d iç o p a r a p r o s s e g u i r s e r fa l s a O bs e r v e qu e a c o n dição de b l o qu e io n o m o n i to r se r ia
v e r d a de i r a q u a n do a c o n d ição de e n t r a da n a r e g ião c r f t i c a fo s s e f a ls a (u m a é a n e g a ção da o u tr a)O Pr o c e s s o e s pe c íf ic o q qu e a l te r a r a c o n d ição de b lo qu e io de p é qu e m v a i de sb lo qu e ar p ,
qu a n d o a c o n d ição p a r a o p r o s s e gu i m e n t o de p pa s s ar a s e r v e r d a de i r a A t r o c a i m e dia ta da UCp
d o s in a l i z a d o r q p a r a o p r o c e s s o b lo qu e a do p , g a r a n te q u e p e n c o n t r e a c o n d ição qu e e spe r a v a
Pa r a p r o s s e g u i r c e r t a m e n te v e r d a de i r a T o d a s e s s a s c o n s i de r a çõe s s ão i m po r t a n te s pa r a a pr o v a
d a c o r r e ção de u m p r o g r a m a
O s m o n i t o r e s
, 
e n t r e t a n to
, 
n ão fo rç a m e s t r u t u r a ção c o m r e s p e i t o a o u s o da s o pe r a çõe s
w a i t e s ig n a l E s t a s o p e r a çõe s p o de m s e r " e s p a lha da s " de n t r o do s p r o c e d i m e n t o s , s e m qu a lqu e r
r e s tDção I s t o é s e m e l h a n t e a o q u e o c o r r e c o m a s o pe r a çõ e s p e V s o b r e s e m áfo r o s A u t i l i z a çãod e p a t f1 e x p r e s s i o n s e l i m i n a e s te i n c o n v e n i e n te
, 
c o n f o r m e é e x p l i c a do a s e g u i r
10 . 1 P a t h e x p r e s s i o n
C o m p a th e x p r e s s io n s , o s m o n i t o r e s de i x a m d e u s a r a s o pe r a çõ e s w a i t e s ig n a l e m s e u s
p r o c e d i m e n t o s e p a s s a m a c o n te r u m a e x p r e s s ão r e g u l a U5
, 
de n o m i n a d a p a t /1 e x p r e s s io n(e x p r e s s ão d e a m i n ho o u e x p r e s s ão s e q i l e n c i a do r a )
, q u e e s p e c i f i c a a o r de m de e x e c u ção
p e r m i t ió p a r a o s p r o c e d i m e n t o s N u m a p a t h e x p r e s s i o n
, 
o s o pe r a n do s s o n o m e s de
p r o c e d i m e n t o s e o s o pe r a do r e s i n d i c a m o r d e m de e x e c u ção A e x p r e s s ão d e t e r m i n a
, 
a c a da
i n s t a n te
. Qu a i s s ão o s p r o c e d i m e n t o s qu e p o d e m se r e x e c u t a d o s n a qu e l e m o m e n t o
O s o pe r a do r e s u s a do s e m u m a p a th e x p r e s s io n s ão o s s e g u i n t e s
 s e q u e n c i aç ão ( ,
 )
1 s e le ção ( I ) U
 e x e c u ç ão shn u Ä n e a D
 ·
E s te s o p e r a do r e s s ão m e l ho r c a r a c te r i z a do s a s e g u i r , a t r a v és de e x e m pl o s
10
, 
2 E x e m p l o s d e p a t ï1 e x p r e s s io n s
A pa th e x pr e s s i o n
pa th & , b e n d
s s u m a e x pr e 1s l o r e gu lar e u m a expr c1ao qu e po de i e r re pr e s e n ta da po r u m a u t ö m a t o fi n i t o Ex e m qo s d
e
c x p r e s 1 i ) e i r egu l u e i s ao a s c x pr e 1r oe 1 a Dt m l ic a s e a i e x pr e al oe a bo o le a n a s de u m a l i n l u a l c m dc pr o sm ¢ o
Scanned by CamScanner
Ca pf t u lo I O M o n i t o r e s c o m Pa t h E x p r e s s i o n s 129
e s pe c i f i c a q u e , i n i c i a l m e n t e , s ó o p r o c e d i 1n e n t o a p o de s e r e x e c u t a d o (s e a l g u m p r o c e s s o c ha 】m ia r
b
, 
e le f i c a r á b l o q u e a d o ) ; a pó s a e x e c u ç ão d e a , a pe n a s b po d e s e r e x e c u t a d o a pó s a e x e c u ção d e
b
, 
a p a t h e x p r e s s i o n s e r e pe t e ( v o l t a a o s e u e s t a do i n i c i a l ) O a u tô m a t o q u e de s c r e v e a o r de m de
e x e c u ç ão p o s s f v e l p a r a o s p r o c e d i m e n t o s é m o s t a d o n a f ig u r a 10 I ( a s e t a p e q u e n a i n d i c a o
e s t a do i n i c i a l d o a u t ô m a t o )
F Ig u r a 10 1 A u t ö m a t o c o r r e s p o n d e n t e à e x p r e s s ã o p a t h a , b e n d
A p a t l 1 e x p r e s s i o n
p a th a , (b lc ) e n d
e s pe c i f i c a q u e u m a e x e c u ç ão de a p o d e s e r s e g u i d a p o r u m a e x e c u ç ão de b o u d e c
(e x c l u s i v a m e n t e u m d e l e s ) A p ó s b o u c , a expr essi o s e r e p e t e O a u tô m a t o c o r r e s p o n d e n t e a
e s t a p a t h e x p r e s s i o n é m o s t r a d o n a f i gu r a 10 2
k °
F i g u r a 1 0 2 A u t ö m a t o c o r r e s p o n d e n t e à e x p r e s s ä o p a t h a , (b lc ) e n d
A p at h e x p r e s s i o n
p a th (a lb ) e n d
i n d i c a q u e b s ó po de s e r e x e c u t a do a pó s u m n ú m e r o ím p a r de e x e c u çõe s de a
A p a t h e x p r e s s io n
p m h a , bl { CD e n d
e s pe c i f ic a q u e u m a e x e c u ção d o p r o c e d i m e n t o a po de s e r s e g u ida po r u m a c x e c u ç äo de b o u 
de
c
, 
s e n do q u e c po de s e r e x e c u t a do s i m u l t a n e a m e n te p o r v ár i o s p r o c e s s o s O u t r a e x c c u ç
1o da
e x p r e s aão po s 1 f v e l a pó s b te r s ido c o m p le t ado o u a pós c tc r s ido c o m p l e t a do po r 
t o do s o s
P« x * * 1 o 1 q u e o e s ta v a m e x e c u t a n do O a u tð m a to q u e t r a o c o m po r t a m e n t o 
de s t a p a l A
e x p r e r* io n m o s t r a d o n a f i g u r a 10 3 0 a r c o t r ac e j a do n o e s t a do 3 e s pe c i f i c a q u e n o v a s
e x e c u çõe s de c n ao p r e c i s a m e spe r a r pe lo t r m i n o d a 1 e x e c u çöe s a n te r i o r e s
A a v a l i a ç o d a p a l A e x p r e Bs l o n p a r a e s c o l he r o p rö x i m o p r o c e d i m e n t o a s e r e x e c u t a
do é
r e a l i z a d a de f o r m a i n d i v i a :v e l e o s p r o c e d i r r re n t o s s l o e x e c u t a d o s de - m u t u a m e n t e
e x c l u s i v a
, 
a m e n o s q u e s e j a i n d i c a d a e x p l ic i t a m e n t e a po s s i b i l ida de de e x e c u çao s i m u l tän e a
b
b
Scanned by CamScanner
130 s i s t e m a s
-
o n a i s e Pr o g r a m a çi1o 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 1 i vei ras 
sjini
b C
1 8
Fig u r a 10 3 A u t ö m a t o c o r r e s p o n d e n t e à e x p r e s s ão p a t h a
, 
(b l{c )) e n d
A p a t h e x p r e s s io n
p a th { r e a d } lw r i t e e n d
é u m a e s p e c i f i c a ção q u e r e s o l v e o p r o b le m a do s r e a d e r s & w r i1e r s
, 
d a n do p r i o r idade pa r a os
r e a de r s
P r o d u t o r c o n s u m i d o r c o m b u f f e r s i m p l e s
O e x e m p l o a s e gu i r m o s t r a u m p r o g r a m a c o n c o r r e n t e c o m p l e to , fo r m a do po r u m par de
Pr o c e s s o s ( o p r o d u t o r e o c o n s u m i d o r ) e u m m o n i t o r e s t e n d ido c o m p a th e x p r e s s i o n s
p a t hm o n i t o r b u ße r
p ta c e : i n t e g e r
p a t h p u I , g e t e n d
p r o c e du r e p u t (m sg : i n t e ge r )
p .a c e - ms g
p r o c e d u r e g e t (m s g i n te ge r )
m s g = Pl ace
e n d pa thm o n i t o r
pr o c e s s pr oducer
m i n t e ge r
l o o p
/ * p r o du z m e n s a ge m m · /
b u ße r p u t{m )
e n d l o o p
p r o c e s s c o n s u m e r
m i n t e ge r
l o o p
bu jde r Ge t (n i)
/ * c o n s o m e m e n s a ge m m * /
e n d lo o p
飞
0 o p e r a d o r 【a b】n 多 r
斥
o e x e m p l o a n te Do r s e r i a m a i s c o m p le x o s e fo s s e u t i l i z a do u m b rt ûir r c o m m a i s de u
m a posiç
M
Po r e x e m p l o , Be ho u v e s s e m 10 po s içö e s n o v e to r p l a c e , e n tao a r e s t r iç l o qu e de v e
r i a hav er 
e nae
p1rr
a s o pe r a çõe s p u 1 e g e ¢ s e ñ a " #pu t #ge t 5 10 "
, 
o n de # s is n i f 1c a n úm e r o de e x
ec u «
s
: j
a
Scanned by CamScanner
C a pí t u l o I O M o n i t o r e s c o m Pa t h E x p r e s s i o n s 13 1
s i m p l i f i c a r a s o l u ç ão d e s t e t i p o d e p r o b le m a , a s p a th e x p r e s s i o n s fo r a m e s te n di da s e p a s s a r a m a
a dm i t i r o u t r o o pe r a d o r , r e p r e s e n t a do p o r [a b ] " E s te n o v o e l e m e n to
, 
de n o m i n a d o " n u m e Dc
pa t h e l e m e n t " , s ig n i f i c a qu e o n ú m e r o de e x e c u çMe s de a t e m qu e s e r m a i o r o u i g u a l a o n ú m e r o
de e x e c u çö e s d e b , m a s a d i fe r e n ç a n u n c a de v e e x c e d e r n
P r o d u t o r c o n s u m i d o r c o m b u f f e r l i m i t a o
O p r o g r a m a a n te r i o r p o de s e r g e n e r a l i z a do p a r a pe r m i t i r qu e o p r o c e s s o p r o du t o r p o s s a a n da r a t
I O m e n s a ge n s n a f r e n t e do c o n s u m id o r
p a t h m o n i t o r ber pool
p l a c e : a r r a y t 10 ] o f in t e ge r
i n
, 
o u t i n t e ge r i n i t i a l 1
, 
l
p a t h 【p u t g e t ] " e n d
p r o c e du r e p u t (m s g : i n t e g e r )
p la c e [ in ] : - m sg
in : = (in m o d 10) + 1
p r o c e d u r e g e t (m s g : in t e g e r )
m s g : = p la c e [o u t ]
o u t = (o u t m o d 10 ) + 1
e n d
pr o c e s s p r o d u t o r
m i n t e g e r
l o o p
/ * p r o d u z m e n s a ge m m « /
b u ße r p o o t p Æ (m )
e n d l o o p
pr o c e s s c o n s u m ido r
m i n t e g e r
l o o p
b u jï e rp o o l Bet tni »
/ * c o n s o m e m e n s ag e m m * /
e n d l o o p
A l o c a ç£to d e u m r e c u r s o r e u s ¢iv e l , 1
0 m o n i to r p a r a c o n t r o l a r a a lo c aç1o de u m r e c u r s o fo r m a do po r I O u n i da de s , c o n s i de r a do n a
s e ç o 9 8 1 , p o de r i a s e r t r a n s fo r m a d o n u m p a l hm o n l l o r c o m a s e 吕 u i n te e x p r e s s ao de c a m i n ho
p a t h [r e q u e s t r e l e a s e ] l o e n d
Scanned by CamScanner
132 s i s te m a s o pe ® o n a is e p r o gr am Co n c o r r e n t e - R S de O I a 
mi
10
. 
3 I m p l e m e n t a ç o d e p a l l 1 e x p r e s s i o n s c o m s e m áf o r o s
0 a lgo Dt m o a s e gu i r e x a m i n a u m a p a t /1 ex p r e s s i o n e i n s e r e o pe r a çöe s de s i n e r o n iz ação à
e s q u e r d a e à d i r e i t a de c a d a u m do s s e u s o pe r a n do s O s n o m e s o s e e o s d s ão u sado s par a
r e p r e s e n t a 】 : a s o pe r a çMe s de s in c r o n i z a ção da e squ e r da e da d i r e i ta , r e s pe c t i v a m e n te
A l g o r i t m o
In i c i a l i z a ção Se l e c i o n a r u m ún ic o s e m áfo r o S 1 in i c i a l i z a do c o m 1 e s u bs t i tu i r
" p a t h < pa th e x p r e s s io n > e n d 
" po r
" P (S r ) < p a th e x p r e s s io n > V (S r>"
 D e c o mp o r suc e s s i va me n t e <p a t h ex p r es s i on > e, d ep en d en d o dos co mp o n e n t es
e n c o n t r a do s
, 
e x e c u t a r u m do s s e gu i n t e s pa s s o s
(a ) E n c o n t r a s e qü e n c i a ção
< p a th e x p r e s s io n l > , < p a th e x p r e s s i o n 2 >
e n t ão s e l e c i o n a u m ú n i c o s e m áf o r o 5 2 i n i c i a l i z a do c o m z e r o e s u b s t i t u i o
o pe r a d o r " ,
" po r " V (5 2) P(SzY" I s t o r e s u l t a e m
< p a th e x p r e s s io n l > V (Sz ) P (Sz) < pa th e x p r e s s i o n 2>
(b ) E n c o n t r a s e le ção
o s e « p a th e x p r e s s i o n l > 1 < p a th e x p r e s s i o n 2> o s d
e n t ão s u b s t i tu i o o pe r a do r de s e l e ção " l" p o r " o s d o s e " I s t o r e s u l t a e m
o s e < pa th e x p r e s s i o n l > o s d o s e < p a th e x p r e s s io n 2> o s d
(c ) E n c o n t r a e x e c u ção s i m u l tân e a
P (S i) {< pa th e x p r e s s io n > } V (Sj )
e n tão s e l e c i o n a u m c o n t a do r C , in i c i a l i z a do c o m z e r o e u m s e m áf o r o 5 3} in ic i a l i z a do c o m 1 e s u bs t i t u i " P (Si) { " p o r " PP(C . . 5 3 , SlY" e " } V (Sjy" po r
" W( C
. . 
53 , Sjy
" I s to r e s u l t a e m
PP(C
. . 
53 , Su < pa th e x p r e s s io n > W( C. . 
53 , Sj )
(d) E n c o n t r a e l e m e n to n u m ér i c o
o s e [A B ]" o s d
e n tão s e l e c i o n a do i s se m áfo r o s 5 4 e 5 3 i n ic i a l i z a do s c o m n e z e r o ,
r e s pe c t i v a m e n t e , e s u bs t i tu i a e x p r e s são a c im a po r
P (54) o s e A o s d V (5 3) P (53) o se B o s d V (54)
(e ) E n c o n t r a n o m e de p r o c e di m e n to i . 
> 
: ì î
o s e < n o m e > o s d
e n t ão c o lo c a o se n o pr ó l o go e o sd n o e pílo go do pr o c edi m e n to < n o m e >
Is to d, o
c o r po do p r o c e di m e n t o v a i i n i c ia r c o m o s e c te r m i n a r c o m o sd (e s t á a se s u por q
u e 
·
c a da n o m e de p r o c e d im e n to a pa r eça u m a ún ic a v e z n a pa th e x p r e ss io n ) : /
Scanned by CamScanner
C a p f tu lo I O M o n i t o r e s c o m P a th E x p r e s s i o n s 133
O s p r o c e d i m e n t o s P P(C . . 5 3 , Sl) e w( C1 , 5 3 , Sj ) r e fe r i d o s n o i t e m c i m p l e m e n ta m a
e x e c u ção s i m u l t ân e a r e a l i z a n do a s s e g u i n te s o pe r a çö e s
P (5 3) P (5 3)
C r : = C r + l C t : = C 1 1
i f C l = 1 t he n P(Su i f C 1= O t he n V (Sj )
V (5 3) V (5 3)
O s e m áf o r o 5 3 é u s a do a pe n a s p a r a i m pe d i r qu e m a i s de u m p r o c e s s o u t i l i z e o c o n t a d o r a o
m e s m o t e m p o
A s e g u i r s ão a p r e s e n t a d a s c o n v e r s õ e s d e a l g u m a s p a t h e x p r e s s i o n s p a r a s i n c r o n i z a çðe s
e q u i v a l e n t e s a tr a v s de s e m áf o r o s
E x e m p l o 1 p a t h A , B e n d
r e s u l t a e m P (S 1) A V (5 2) P (5 2) B V (S 1)
Pr o c e d i m e n t o A P r o c e d i m e n t o B
b e g i n be g i n
PSÙ PSz
C o r p o de A C o r p o d e B
V S z VS I
e n d e n d
E x e m p l o 2 p a t h A , (B IC ) , D e n d
r e s u l t a e m P (S 1) A V (5 2) P (5 2) B V (5 3) P (Sz ) C V (5 3) P (5 3) D V (S l )
p r o c e a m e n t o A Pr o c e d i m e n t o B : P r o c e d im e n t o C P r o c e d i m e n t o D
b e g i n be g i n be g in b e g in
P (S r ) P (5 2) P (Sz ) P (5 3)
C o r p o d e A C o q »o de B C o r po de C C o r po de D
V (5 2) V (5 3) V (53) V (S l )
e n d e n d e n d e n d
E x e m p l o 3 p a th {A , B }IC e n d
r e s u l t a e m P P(C 11Sz , S 1) A V (5 3) P (5 3) B W (C . . Sa , S 1) P (S 1) C V (S t )
P r o c e d i m e n t o A p r o c e di m e n t o B : Pr o c e d i m e n t o C
b e gi n be g i n be g i n
PP (C 1, 5 2 1S 1) P (53) P (S t )
C o r po de A C o r p o de B C o 中 o de C
e n d e n d e n d
Scanned by CamScanner
Scanned by CamScanner
Ca p í tu l o I O M o n i t o r e s c o m Pa t h E x p r e s s i o n s 135
s e u c ód i g o (e x q a t h e x p r e s s i o n ) , c o n tém d a d o s e p r o c e d i m e n t o s (e x m o n i t o r ) qu e p o de m s e r
u s a d o s p o r o u t r o s p r o c e s s o s O s e g u n d o p o n t o d e v i s t a o a d o t a d o pe l a s l in g u a g e n s A D A e V 4
,
q u e u s a m a d e n o m i n a ç ão t a s k p a r a a e s tm t u r a r e s u l t a n t e
É i n t e r e s s a n t e f f is a r q u e a lgu m a s p e qu e n a s m u d a n ça s c o n c e i t u a i s (b a s i c a m e n t e a t r o c a
d a p a t h e x p r e s s i o n p o r u m p r o c e s s o ) a c a b a r a m p o r o c a s i o n a r u m a g r a n d e t r a n s f o r m a ç ão n a
e s t r u t u r a de u m m o n i t o r D e i x o u de s e te r u m a e n t id a d e p a s s i v a , c o n te n do d a d o s , p r o c e d i m e n t o s
e c ód i g o d e i n i c i a l i z a ç o (q u e é o m o n i t o r t r a d ic i o n a l )
, 
e p a s s o u s e a t e r u m a e n t i d a d e a t i v a (i s to
é
, 
u m p r o c e s s o ) q u e c o n t ém i nt er nament e e s s e s m e s m o s c o m p o n e n t e s O c ód i g o d o p r o c e s s o é o
a n t i g o c ód ig o d e i n i c i a l i z a ç ão d o m o n i t o r
, 
a g o r a t r a n s f o r m a do e m u m c ó d i g o (p o s s i v e l m e n t e )
c fc l i c o e a p r o v e i t a d o p a r a r e a l i z a r o u t r a s fu n çõ e s O s de m a i s c o m p o n e n te s ( i s t o é , o s d a d o s e o s
p r o c e d i m e n t o s
, q u e a n t e s e s t a v a m d e n t r o d o m o n i t o r )
, 
a g o r a e s t ão de n t r o d e s s e p r o c e s s o
10
. 
6 E X E R C I C l O S
E x e r c fc i o 10 1 E s c r e v a u m p a t h m o n i t o r p a r a i m p l e m e n t a r o p e r a çõ e s P e V s o b r e u m s e m áf o r o
b i n ár i o i n i c i a l i z a d o c o m z e r o
E x e r c : c i o 10 2 U s a n d o o a l g o r i t m o d a s e ção 10 3 , m o s t r e c o m o a s s e g u i n t e s p a l h e x p r e s s i o n s
s e D a m i r r 1p l e m e n t a d a s a t r a v és d e s e m áf o r o s
(a ) p a t h A , { B , C } , D e n d
p a t h A , { B l C } , D e n d
E x e r c íc i o 10 3 M o s t r e c o m o p o d e r i a s e r fe i t a a i m p le m e n t a ção de m o n i t o r e s e s t e n d i d o s c o m
p a t h e x p r e s s io n s t \ o ke r n e l d o SO
E x e r c íc i o 10 4 M e s m o h a v e n d o e x c l u s ão m ú tu a n a e x e c u ç o do s p r o c e d i m e n t o s de u m
m o n i t o r
, 
f o i v i s t o q u e e s s e s p r o c e d i m e n t o s p r e c i s a m s e r r e e n t r áv e i s E o s p r o c e d i m e n t o s d e u m
p a t hm o n i t o r p r e c i s a m s e r r e e n t r áv e i s ?
Scanned by CamScanner
136 S i s te m a s O pe r a c io n a i s e P r o gr a m am C o n c o r r e n t e S S r o s c a n i R S de O l i v e i r a s S 
rni
ベ幺1村
l +
: ? ñ
/ ;¬ <Ê Ar / i§ /
节雄心甘山 / 多3秧飞矿啾 铛
Æ m o r e n o
'
. ) . 8 s
x gu n t ' x Bd o y la de r e c ha a l m e jo r : e l t ie m po só lo e s t a r dan z ay r e $pón da m e a l m o m e n to de lo qu e e s t i l po r v e n i rc u án do fo r m ó D io s e l t ie m po n o tu v o n u n c a pr i n c ipioy po r qu ¢ to d i v id ió 
n i j a in üs a c aba r ápo r qu e e B t ie m po e s \m a r u eda
,. 
ì
y r u e da e a e t e m ida ç
y 1i e l ho m b r e Io d i v ide
1ö lo l o ha c e
, 
e n M i se n t l r
, 
d ? f
Po r aa be r lo qu e ha v i v id o
! i
i :

Outros materiais