A maior rede de estudos do Brasil

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

Pré-visualização | Página 9 de 13

k s 20 3
* A é a m a t r i z q u e i n d i c a a a l o c a ção d e r e c u r s o s (a l ì é o n ú m e r o d e u n id a d e s d o r e c u r so
j a l o c a d a s a o p r o c e s s o i )
 B é a ma t r i z q u e i nd i ca a s r e q u i si çMes de r ec u r s o s ( bB í
 é o n ú me r o de u n i da d e s do
r e c u r s o j r e q u i s i t a d a s pe l o p r o c e s s o i ) e
* D é o v e t o r q u e d e s c r e v e a d i s po n ib i l i d a de a t u a l de r e c u r s o s
P a r a o s i s t e m a c o n s id e r a do n a f i gu r a 14 4 (a ) , o e s t a d o s e Da r e p r e s e n t a do d a s e g u i n te
m a n e i r a
R 2 3 l
A · = b B = = / 1
D = 【0 1 0 】
A l g o r i t m o
D a d a s a s m a t r i z e s A , B e D q u e d e s c r e v e m o e s t a do d o s i s te m a , o 
a l g o D t m o v e r i f i c a s e e x i s t e o u
n ão s i t u a ç ão d e d e a d l o c k n e s s e e s t a do
É u t i l i z a do u m v e t o r a u x i l i a r W c o m m e l e m e n t o s , p a r a
i n d i c a r a d i s p o n i b i l i d a d e d e r e c u r s o s a c a
d a m o m e n to São a do t a d a s a s s e g u i n t e s c o n v e n çMe s
 A i
 : r ep r es e n t a a l
i nh a i da ma t ri z A (al oc a ç ão de r ec u r s o s pa r a o pr oc e s s o i )
 B i
 : r ep r es e n t a a l
i nh a i da ma t ri z B ( rec u r s o s r eq u i si tad o s pe l o pr oc e s s o i )
 V e t or X [ ve t or Y s i gn i f i ca qu e t od o el eme n t
o
 de X é me n o r ou i gu a l ao el emn t o
c o r r e s p o n d e n t e de Y
O a lg o D t m o a s e g u i r p r o c u
r a a s l i n h a s c o r r e s po n de n t e s a o s p r o c e s s o s n ão b
lo q u e a dw
m a r c a e s s a s l i n ha s e l i be r a o s r e c u r s o s a
l o c a d o s a e s s e s p r o c e s s o s (n o i n i c io , t o d a s a s l i n h a s e s t il o
de s m a r c a d a s )
W Fa z e r W D
(2 ) E n q u a r 1t o e x i s t i r l i n ha i n ão m a r e a
da t a 1 q u e B i W . f a z e r
W : = w + A i e m a r c a r a l i n
ha i
E x i s t i r á d e a d to c k s e n o f i n a l d o a
lg o r i t m o e x i s t i m m 
l i n ha s n o m a n a d a s O c o n ju n t o de
p r o c e s s o s e m d e a d l o c k c o r r e s po n d e r á a o 
c o n j u n t o de l i n ha s n o m a r c a d a s
0 d e s e m p e n ho d o a l g o D t m o p
o de s e r m e l ho r a d o - a
n do s e i n ic i a l m e n te a s l in ha s i
p a r a a s q u a i s A i - 0 0 s p r o c e s s o s c
o r r e s po n de n te s a e s s a s 
l i n h a s n ão t e m r e c u r s o s a l o c a do s e ,
Scanned by CamScanner
204 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 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 i r a e A S C a r i s s i m i
po r t a n t o , n ão p o d e m e s t a r e m d e a d l o c
k (n o f a z e m pa r t e d e q u a l q u e r c i c l o ) E s s e s p r o c e s s o s
t a m b ém n ão (êm r e c u r s o s p a r a d e v o l v e r n o p a s s o 2 
do a lg o r i t m o
o t e m p o m áx i m o d e e x e c u ção d o a lg o r
i t m o é p r o po r c i o n a l a n
2
* m
, p o i s , n a p i o r da s
h i pó t e s e s , a m a r c a ção d a s l i n h a s s e r á f e i t a n
a o r d e m n , n 1, n 2 . , 1 e n v o l v e n d o (n + n 12
p e s q u i s a s , e p a r a c a d a l i n h a pe s q u i s a d a s e r ão e x a
m i n a do s m r e c u r s o s
14
. 
8 p r e v e n ç ã o d i n â m i c a d e d e a d to c k
A s e g u i r s e r á m o s t r a d o c o m o u m a l o c a do r de r e c u r s o s p o de e
v i t a r a o c o r r ên c i a d e d e a d to c lw de
f o r m a d i n âm i c a
, 
d u r a n t e a e x e c u ção do s i s t e m a
p a r a e v i t a r s i t u a çõ e s de d e a d to c k , o a lo c a do r p r e c i s a c o
n he c e r
, 
a l ém d a s a lo c a çõe s ,
r e q u i s i ç õ e s e d i s p o n ib i l i d a d e s d o s r e c u r s o s , t a m bém a s po s
s í v e i s r e q u i s iç õ e s f u t u r a s do s
p r o c e s s o s C o n h e c e n d o o m á x i m o de r e c u r s o s q u e c a d a p r o c e s
s o p o d e r e q u i s i t a r (e m ge r a l o SO
t e m e s s a i n f o r m a ç ã o ) , o a l o c a d o r p o d e s a be r , a p a r t i r de u m e s t a do , q u a l é o p i o r e s t a d o q u e po
de
s e r a t i n g i d o n o f u t u r o
p a r a g a r a n t i r a n ão o c o r r ên c i a d e d e a d l o c ks , o a l o c a d o r e x e c u t a o a
l g o r i t m o a p r e s e n t a do
a s e g u i r , c o n he c i do c o m o a l g o D t m o d o b a n q u e i r o O a l g o D t m o s
i m u l a o q u e a c o n t e c e r i a n a p io r
s i t u a ç ão f u t
A l g o r i t m o d o b a n q u e i r o
A s s e g u i n t e s a çMe s s ão e x e c u t a d a s c a da v e z q u e u m r e c u r s o é r e q u i s i t a d o
( I ) s u põ e o a t e n d i m e n t o d a r e qu i s i ção
(2 ) s u põ e , a s e g u i r , q u e to d o s o s p r o c e s s o s n ão b l o q u e a d o s (i n c l u s i v e o qu e t e v e a s u a
r e q u i s iç ão a t e n d id a ) r e q u i s i t e m o m áx i m o d e r e c u r s o s q u e a i n d a po d e m r e q u i s i t ar
(3) a p l ic a o a lg o r i t m o de d e te c ção de de a d to c k s o b r e e s t a si t uaçi o h i po téci c a (q u e é a
p i o r q u e p o de o c o r r e r n o f u t u r o )
(4 ) s e e s t a s i t u a ç ão n o é de de a dlo c k , e n t r e g a r e a l m e n t e o s r e c u r s o s r e q u is i ta do s
o Dg i n a l m e n te ; c a s o c o n t r ár i o , n o e n t r e g a o s r e c u r s o s e b lo q u e i a o p r o c e s s o
O a lg o r i t m o é a p l i c a do po r o c a s i o da s r e q u i s içMe s q u e po de m s e r a te n d ida s (q u a n do u
n i a
r e q u i s iç ão n ão p o de s e r a t e n d i d a o p r o c e s s o é b l o q u e a d o , s i m p le s m e n te ) O a lo c a do r , pa r a e
v i tar
p o s s :v e i s s i t u a çö e s f u t u r a s d e de a dl o c k , po d e , po r t a n t o , n o a te n d e r a r e q u i s iç o d e u m p
r o c e s s 
o
,
r r le s m o t e n d o r e c u r s o s d i s po n :v e i s p a r a i s s o I s t o é , pa r a s e ga r a n t i r c o n t r a po s s ív e i s 
(t a l v e z
i m p r o v áv e i s ) d e a d l o c ks o a l o c a d o r r e s t r i n g e o c o m pa r t i l ha m e n t o d e r e c u r s o s
o a lg o r i t m o é c o n he c id o c o m o
"
a l g o r i t m o do b a n q u e i r o " po r te r s id o a p r e s e n
ta do po f
D ij k s t r a [D I J 65 a ] c o m o u m a s o l u ç ão pa r a o s e g u i n t e p r o b l e m a " u m b a n q u e i r o t e m u m c a p
i t a l
Scanned by CamScanner
C lo 14 D e a d l o c k s 205
de K n o r i n s (m o e d a ho l a n d e s a ) e u m de t e r m i n a do c o n j u n t o d e c l i e n te s c o n f i áv e i s (i s t o é , q u e
ho n r a r ão s e u s c o m p r o m i s s o s d e n t r o d e u m t e m po f i n i t o ) C a d a c l i e n t e te m u m l i m i t e d e c r éd i to ,
o q u a l n ão u l t r a p a s s a K C o n t u d o , a s o m a d o s l i m i t e s do s v á r i o s c l i e n t e s po d e u l t r a p a s s a r K
T o do c l i e n t e c o n c o r d a e m e s pe r a r o te m p o q u e f o r n e c e s s ár i o (c o n t a n t o q u e s e j a f i n i t o ) p a r a
r e c e be r s e u e m p r é s t i m o O p r o b le m a d o b a n q u e i r o é a te n de r s e u s c l ie n te s d e m o