A maior rede de estudos do Brasil

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

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

Q
, 
Pr i o r )
In s e r e o e l e m e n t o i d n a f i l a Q
, 
d e a c o r do c o m a pD o r i d a de p r i o r O t e r c e i r o a r gu - t o d e v e t e r
u m v a l o r e n t r e 0 e 9999
, 
s e n d o 9999 a p r i o Dda de m :n i m a N o c a s o d o t e r c e i r o a r g u m e n t o e s ta r
a u s e n t e o u n o c a s o do s e u v a l o r s e r m a i o r q u e 9999 , o t r a t a m e n t o é igu a l a o da do p a r a a
p r i o Dd a d e 9 999 (i s t o é
, 
o e l e m e n t o é s i n 1p l e s m e n te c o l o c a d o n o f i m d a f i l a Q) 
i d = f 1r s t (Q)
F a z i d i g u a l a o p D m e i r o e l e m e n t o d a f i l a Q e r e m o v e e s s e e l e m e n t o d a f i l a
c o u n t (Q )
Ob tém o c o m p D m e n t o (n ú m e r o de e l e m e n t o s ) da f i l a Q O a r g u m e n t o Q p o de s e r u m a v a r i áv e l
q u e u e , u m a v a r i áv e l c o n d i t io n o u u m a e n t r y ó t a s k
b l o c k
O p r o c e s s o p q u e e x e c u t a e s s e c o m a n d o s e b l o q u e i a a té q u e u m o u t r o p r o c e s s o e x e c u t e
w a k e u p (p ) Se w a k e u p (p ) é e x e c u t a d o a n te s , o p r o c e s s o p n ão s e b l o qu e i a a o e x e c u t a r o b l o c k
w a k e u p (P )
A c o r d a (d e s b l o q u e i a ) o p r o c e s s o e s pe c i f i c a do po r P , q u e p o de s e r u m n o m e o u u m n ú m e r o ú n i c o
de p r o c e s s o
P (Se m )
U m s e m áf o r o f o r m a d o p o r u m a v a r i áv e l i n t e i r a (c o n t a d o r ) e u m a f i l a de e s pe r a A o pe r a ç o
p (Se m ) de c r e m e n t a o c o n t a d o r de Se m C a s o o v a l o r r e s u l t a n te s e j a n e ga t i v o , o p r o c e s s o 
b lo q u e ad o e i n s e r i do n o f i m d a f i la de Se m
V (Se n 1)
I n c r e m e n t a o c o n t a do r d o s e m áfo r o Se m C a s o e x i s t a a lg u m p r o c e s s o 
b l o qu e a do n a f i l a do
s e m áf o r o
, 
o p D m e i r o p r o c e s s o de s s a f i l a é de s b l o q u e a do
y i e l d
' T a s s a a d i a n te " o p r o c e s s a do r ( i s t o , o p r o c e s s o c e de a s u a v e z ) O c o n t r o
le da UC P pa s s a pa r a
o u t r o p r o c e s s o o u t h r e a d (n äo s e s a b e q u a l ) e , po s te r i o r m e n te (n äo s e s a
be qu a n do ) , v o l t a pa r a o
p r o c e s s o q u e e x e c u t o u o c o m a n do y ie ld , c o m o s e n a da 
t i v e s s e a c o n t e c ido
Scanned by CamScanner
224 s i s t e 1n a s o pe r a c i o n a is e p r o g r a 1n a ç o c o n c o
1r e n t e S S T o s c a n i , R S de O l i v e i r a e A S C a r i s s i m i
c l o c k T i m e
o s i s te m a u t i l i z a u m r e l óg io pa r a s i m u l a r a p a s s a g e m 
de te m p o A f u n ção c l o c k T i m e r e t o m a o
(e m p o a t u a l d e s s e r e lóg i o
h o l d (K )
s e n d o K u m a c o n s t a n t e o u v a Dáv e l i n t e i r a , a t r a s a a e x e c u ção d o p r o
c e s s o p o r K u n i da de s de
t e m p o O p r o c e s s o é c o l o c a d o n a f i l a d o r e lóg i o p a r a s e r a c o r
d a d o n o te m p o c l o c k T i m e + K (i s t o
é
, 
t e n 】p o a t u a l + K )
r a n d o m (K )
S e n d o K u m a c o n s t a n t e o u v a r i áv e l i n t e i r a
, 
de v o l v e u m n ú m e r o a le a t ó r i o e n t r e O e K 1
w a i t (C o n d )
U m a v a r iá v e l c o n d i çã o 
8 1 é b a s i c a m e n t e u m a f i l a de e s p e r a Se n d o C o n d u m a v a r i áv e l c o n d i ção ,
a o p e r a ç ão w a i t (C o n d ) 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 e o c o l o c a n o f+m d a f i l a C o n d
C o m o r e s u l t a d o
, 
o m o n i t o r f i c a l i v r e p a r a s e r u s a d o p o r o u t r o p r o c e s s o
w a i t (C o n d
, 
P r i o r )
F u n c i o n a c o m o o c o m a n d o a n te r i o r , p o r ém o p r o c e s s o é c o l o c a d o n a f i l a C o n d d e a c o r d o c o m a
pDo r i d a d e e s p e c i f i c a d a n o s e g u n do a r g u m e n t o , q u e d e v e s e r u m v a l o r i n t e i r o p o s i t i v o Qu a n t o
m e n o r o v a l o r d e P r i o r , m a i s n a f r e n t e d a f i l a f i c a o p r o c e s s o
s i g n a l (C o n d )
Se a f i l a C o n d n ão e s tá v a z i a , o p r i m e i r o p r o c e s s o de s s a f+l a é d e s b l o q u e a d o e a U C P é e n t r e gu e
i m e d i a t a m e n te p a r a o m e s m o C o m o s ó u m p r o c e s s o p o d e e s t a r de n t r o d o m o n i t o r d e c a da v e z , o
p r o c e s s o q u e e x e c u t o u o s ig n a l s ó v o l t a a s e r e x e c u t a do m a i s t a r d e , q u a n do o m o n i t o r f i c a l i v r e
Se n ão t e m p r o c e s s o b l o q u e a do n a f i l a C o n d q u a n do o s i gn a l é e x e c u t a do , o s i g n a l n ão te m
q u a l q u e r e f e i to (f u n c i o n a c o m o u m n o t h i n g) 
e m p 1y (C o n d )
R e t o m a l r u e s e a f i l a d a v a r i áv e l c o n di t i o n C o n d e s t á v a z i a
, 
c a s o c o n t r ár i o
, 
r e t o m a jb ls e Es t a
f u n ção t a m bém p o de s e r a p l i c a da a v a r i áv e i s t i po q u e u e e a e n t r i ¬ s de t a s ks
g e t l d (P )
R e to m a o n úm e r o ún i c o qu e ide n t i f i c a o p r o c e s s o c u j o n o m e é p (C o m o u m a th r e a d n ilo tem
n o m e
, 
e s s a f u n ç tto n ão s e a p l i c a a 1/1r e a ds )
m y s e l f
É a i de n t i f i c a ç ão (n úm e r o ún i c o ) da t h r e a d o u p r o c e s s o q u e r e fe r e e s t a v a r i áv e l
s 1 V a r i áv e i s d o t i po c o 1rd i r1o n só po de m sa . Dec la r a da s e u s a da s de n t r o de m o n i t o r e s
Scanned by CamScanner
A n e x o A A L i n gu a ge m V a le 4 225
s e n d (Pr o c l d
, 
M s g )
B l o q u e i a o e x e c u t o r a t é q u e o p r o c e s s o (o u t h r e a d ) P r o c l d r e s o l v a r e c e be r a m e n s a g e m M s g O
PDmei r o a r g u m e n t o ( i d e n t i f ic a ção d o r e c e p t o r ) p o de s e r u m n o m e de p r o c e s s o a2 o u u m v a l o r
n u m é r i c o (c o n s t a n t e o u v a r i áv e l i n t e i r a ) N o s e g u n d o c a s o , o v a l o r é a s s u m i d o c o m o o n úm e r o
ú n i c o (p id ) d e u m p r o c e s s o o 11 t l zr e a d A m e n s a ge m M s g po d e s e r f o r m a d a p o r v ár i o s v a l o r e s
in t e i r o s o u b o «»l e a n o s ( t a m a n ho v a r i áv e l )
, 
s e p a r a do s po r v í rg u l a , s e n do q u e o s p r o c e s s o s re n d e r e
r e c e i v e r d e v e m c o n c o f d a r n o s t a m a n h o s d a s m e n s a ge n s e n o s t i po s do s v a l o r e s t r a n s m i t id o s
n b s e n d (P r o c l d
, 
M s g )
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 h r e a d ) p r o c l d
, 
de fo r m a a s s ín c r o n a Se o r e c e p t o r
n ão e s t i v e r e s p e r a n d o a m e n s a g e Ä e l a é s i m p l e s m e n t e e n c a de a d a n a c a i x a po s t a l d o r e c e p t o r ,
s e m q u e h a j a b l o q u e i o d o 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 f o r m a s de
e s p e c i f i c a r P r o c l d e M s g f e i t a s a c i m a
O B S C a d a p r o c e s s o t e m u m a c a i x a p o s t a l (f i l a de m e n s a g e n