A maior rede de estudos do Brasil

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

Pré-visualização | Página 1 de 7

Scanned by CamScanner
C a p í t u l o 9
M O N I T O R E S
E1 m o r e n o M a r t f n F i e r r o
V e r e m o s s i a o t r a p r e g u n t a E s c u c há c o n a t e n c i ó n
d a u n a r e s pu e s t a c u m p l i d a : lo q u e e n m i i n o r a n c i a a r g u y o
e l s e r qu e h a c r i a d o la v i d a la m e d ida la i n v e n t ó
lo h a d e t e n e r e n s u a r c hi v o e l h o m b r e pa r a b i e n s u y o
m a s y o i n o r o q u é m o t i v o Y Ia r a z ö n n o t e a s o m b r e
t u v o a l f o r m a r la m e d id a pu e s e s fá c i l p r e s u m i r
D i o s n o t e n f a q u e m e d i r
s i n ó 1a v ida d e l ho m b r e
U m m o n i t o r é u m m e c a n i s m o d e a l t o n í v e l p a r a s i n c r o n i z a ção e c o m u n i c a ç ii o d e p r o c e s s o s
u m m e c a n i s m o e f i c i e n t e , d e f ác i l u t i l i z a ç ão e q u e i m pMe u m a bo a e s t r u t u r a ção p a 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 O c o n c e i t o d e m o n i t o r fo i u t i l i z a d o pe l a p r i m e i r a v e z po r B r i n c h H a n se n n o
p r o je t o d e u m s i s t e m a o pe r a c i o n a l m u l t i p r o g r a m a d o .B R I 7 3 ] A pó s s e r fo r m a l i z a d o po r 
[H O A 74 ]
, 
o c o n c e i t o pa s s o u a s e r i n c l u íd o e m v ó i a s 
l in g u a ge n s de p r o g r a m a ç i lo Ta i s m m o
M ód u l a
, 
p a s c a l C o n c o r r e n te , E u c l id C o n c o r r e n t e e Ja v a
U m m o n i t o r p o de s e r v i s t o c o m o u m b l o c o q u e 
c o n t ém i nt er nament e d a do s pa r a s e ï tc m
c o m p a r t i l h a d o s e p r o c e d i m e n t o s p a r a m a n i pu la r e s
s e s d a do s O s d a d i d« la r a J o s de n t r o do
m o n i t o r s ã o c o m p a r t i l h a do s p o r t o d o s o s p r o c e s s o s (c o m o s e eo s s e m g
l o ba i s )
, 
m a s s ó po d e m se r
a c e s s a do s a t r a v é s d o s p r o c e d i m e n to s d o 1n o n i t o r
E e s s e s pn w c d i w w n m s s ùo e x e c u t a do s de
fo r m a m u t u a m e n te e x c l u s i v a , q u a n d o c ha m a d t »s pe lo t i pm c e s
s o s Po r t a n to i a _ de
i m p le m e n t a ç ão de u m m o n i t o r j á g a r a n t e a e x c l u s üo m ú 1u a n a m a n i pu l a ç o 
dc s e u s da do s
i nt er nos A lé m d i s s o
, 
u m m o n i t o r pe r m i te a s in c r o n i z a çüo d o t i po bl o c k w a
k e u p , a t r a v s d a s
v a r i á v e i s t i p o c o n d i t i o n , c o n fo r m e v e r e m o s a
d i a n te
Scanned by CamScanner
108 s i s te m a s pçr aci e pT o s r a m a çao C o n c o r r e n t e T o s c a n i R S d e Ol i v e i r a e Si n i
9
. 
1 F o r m a t o d e u m m o n i t o r
A s e gu i r a pn ese n t a do o e s qu e le to de u m m o n i t o r , dc a c o r do c o m a s i n t a x e de f i n ida po r Ho ar e
[H O A 74 ] 
m o n i t o r < n o m e >
! K# . d . s d a d ' ' " ' ' " c o m p a r t i 1h a d . s pe l ' ' " æe o s ;
X Y : i n t e ge r
C D c o n d i t io n
p r o c e d u r e P(a r g 1 : T t . , a r gp T p)
D e c l a r a ç ão d a s v a r i áv e i s l o c a i s d e P
w a i t (D )
p r o c e d u r e Q(a r g l : T I , a r gQ T Q)
D e c la r a ção d a s v a r iáv e i s lo c a i s d e Q
w a i 1(C )
p r o c e d u r e R (a r g i : T . a r gR : T R)
D e c la r a ç o d a s v a r i áv e i s l o c a i s d e R
si gnat { c1
in i t i a l ly (C o m a n do s } % pa r a in ic ia l iz a r o s d a do s (o pc io n a l )
E x e m p lo
i n i t ia l ly ( X : = l ; Y : = 10 }
e n d < n o m e >
Fig u r a e 1 Fo r m a t o d 1 u m m o n i t o r
v a r i áv e i s de c l a r a d a s de n t r o de c a da p r o c e d i m e n to v ao s e r a l o c a da s de f o n n a in
di v idu a 
I ¢
/ ff f
Scanned by CamScanner
-
9 M o n i t o r es 109
p r i v a t i v a pa r a c a d a p r o c e s s o E m c a d a c ha m a d a
, 
a p i l ha do p r o c e s so v a i s e f u s a da p a r a pa s s a r o s
e n de r e ço s d o s a r g u m e n t o s e a l o c a r a s v a r i áv e is lo c a i s do p r o c e d i m e n t o
D o q u e f o i d i t o , p o d e s e c o n c l u i r q u e o s p r o c e d i m e n t o s d o m o n i t o r s o r e e n t r áv c i s , po i s
c m c a da a t i v a ç ão s ão u t i l i z a d a s v a r i áv e i s lo c a i s d o p r o c e d i m e n t o e a r gu m e n t o s q u c s ão p r óp r io s
do p r o c e s s o q u e e s t á c ha m a n d o e s s e p r o c e d i m e n t o A pe s a r de s t a r e e n t r ân c i a pa r ec e r
de s n e c e s s á r i a
, j á qu e o s p r o c e d i m e n t o s s ão e x e c u t a d o s de f o r m a m u t u a m e n t e e x c l u s i v a , e l a 
r e a l m e n te n e c e s s ár i a E m bo r a n u n c a s e t e n ha m a i s d e u m p r o c e s s o d e n t r o d o m o n i t o r , p o de s e
t e r o s p r o c e d i m e n t o s e x e c u t a d o s de f o r m a p a r c i a l e in t e r c a l a d a p o r v ár i o s p r o c e s s o s ( i s t o s e r á
v i s t o n a p r ó x i m a s e ç ão )
U m m o n i t o r s e a s s e m e l h a a u m a e s tr u t u r a de d a do s a b s t r a t a e t a m b ém a u m o b j e t o 4 9
C o n t u d o
, 
a s e s t r u t u r a s a b s t r a t a s e o s o b j e t o s s iio c o n c e i to s i m p l e m e n t a d o s e m l i n g u a g e n s
s e q ü e n c i a i s e , c o m o t a l , n ã o i n c l u e m m e c a n i s m o s p a r a s i n c r o n i z a ç ão d e p r o c e s s o s
9
. 
2 V a r \ á v e \s c o n d i t i o n e o p e r a çõ e s w a i t e s ig n a i
A l ém d o s t i p o s d e d a d o s u s u a i s , o s m o n i t o r e s pe r m i te m u m n o v o t ip o , d e n o m i n a do c o n d i t i o n
V a r i áv e i s c o n d i t i o n s ó po d e m s e r de c l a r a d a s d e n t r o de m o n i t o r e s e s ó p o de m s e r u t i l i z a d a s
a t r a v és d e d u a s o p e r a ç Me s e s p e c i a i s de n o m i n a d a s w a i t e s ig n a t E s s a s o p e r a çMe s p e r m i t e m q u e
p r o c e s s o s p o s s a m e s p e r a r p o r c o n d i çMe s q u e v ão s e r s i n a l i z a d a s p o r o u t r o s p r o c e s s o s
A s o pe r a çõ e s w a i t e s ig n a t a p r e s e n t a m pe c u l a r i da de s im p o r t a n t e s A o p e r a ç o w a i t
b l o q u e i a i n c o n d i c i o n a l m e n te o p r o c e s s o q u e a e x e c u t a , c o l o c a n d o o p r o c e s s o n a f i l a
c o r r e s p o n d e n t e à v a r i áv e l c o n d i ção (o b l o q u e i o a c o n t e c e m e s m o q u e u m a o pe r a ç ão s i g n a i te n ha
s id o e x e c u t a d a i m e d i a t a m e n t e a n t e s d a o pe r a ção w a i t )
O pe r a çMe s s ig n a t e x e c u t a d a s e m c o n di çMe s c o m f i l a v a z
i a (s e m p r o c e s s o s b l o q u e a do s )
s ão pe r d id a s , n il o t e n d o q u a lq u e r e f e i t o s o b r e a v a r i áv e l c o n
d iç ão q u e e s t á a s e r s i n a l i z a d a
Qu a n d o e x i s t e m p r o c e s s o s à e s pe r a de s i n a l i z a ção e a v a r iáv e l c o n d iç ii o é s i n a l i z a d a . E n t ão u m
ú n i c o p r o c e s s o (o p r i m e i r o da ti la d a v a r i á v e l c o n d iç ii o ) é de s b lo q u e a do e p r o s s e g u e s u a
e x e c u ç ão i m e d i a t a m e n te , t o m a n do a UC P do p r o c e
s s o s i n a l i z a do r N e s te c a s o o p m c e s s o
s in a l i z a do r s ó v o l

Crie agora seu perfil grátis para visualizar sem restrições.