Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
ARCHIVOS
Condiciones de competencia
Las condiciones de competencia se dan cuando dos o más
procesos intentan acceder a un mismo recurso.
Secciones críticas
Para solucionar las condiciones de competencia se
implementó un modelo para prohibir que dos procesos
accedan al mismo recurso. El modelo en cuestión se
denomina exclusión mutua
Desactivación de interrupciones
El método más simple para evitar las condiciones de
competencia es hacer que cada proceso desactive todas sus
interrupciones antes de entrar a su sección crítica y las active
una vez que salió de la misma.
Variables cerradura
En éste caso se genera una variable la cual puede tener dos
valores o bien 0 (no hay ningún proceso en su sección crítica)
o bien 1 (indicando que la sección crítica está ocupada)
entonces cada proceso antes de ingresar a la sección crítica
verifica el estado de la variable de cerradura y en caso de que
la misma este en 0, le cambia el valor e ingresa a la misma y
en caso de que la misma sea 1 el proceso se queda
verificando el estado de la misma hasta que el mismo sea 0.
El problema aquí se presenta si dos procesos verifican al
mismo tiempo que la variable cerradura esta en 0 e ingresan a
la región crítica.
ADMINISTRACIÓN DE PROCESOS
Alternancia estricta
El algoritmo de alternancia estricta no bloquea el ingreso a
la región crítica cuando otro proceso se esta ejecutando. El
problema de ésta solución es que cuando un proceso no
esta en la sección crítica igualmente tiene bloqueado el
acceso a la misma y por lo tanto no permite que otro
proceso que requiera ingresar a la misma logre hacerlo.
Instrucción TSL
Esta solución requiere ayuda del hardware y es debido a
que en general las computadoras diseñadas para tener más
de un procesador tienen una instrucción TEST AND SET
LOCK
ADMINISTRACIÓN DE PROCESOS
Alternancia estricta
El algoritmo de alternancia estricta no bloquea el ingreso a la
región crítica cuando otro proceso se esta ejecutando. El
problema de ésta solución es que cuando un proceso no esta
en la sección crítica igualmente tiene bloqueado el acceso a la
misma y por lo tanto no permite que otro proceso que requiera
ingresar a la misma logre hacerlo.
Instrucción TSL
Esta solución requiere ayuda del hardware y es debido a que
en general las computadoras diseñadas para tener más de un
procesador tienen una instrucción TEST AND SET LOCK
Dormir y despertar
El modelo de espera acotada tienen el inconveniente que se
desperdicia tiempo de procesador.
ADMINISTRACIÓN DE PROCESOS
Planificación de procesos
La planificación es el proceso por el cual el sistema operativo
selecciona que proceso ejecutar. La selección del proceso se basa
en alguno de los algoritmos de planificación que se describen más
abajo.
Expulsión
Es la característica por el cual el sistema operativo puede o no
expulsar del estado de ejecución a un proceso dado.
ADMINISTRACIÓN DE PROCESOS
P r o c e so s l i g e r o s
L o s p r o c es os l i ger os s on p r og r a ma s e n e j e c u c i ó n , s o n bás i c a ment e pr oc es os
p e r o a d i f e r e n c i a d e é s t o s ú l t i mo s q u e s o l o t i e n e n u n h i l o d e e j e c u c i ó n , l o s
p r i me r o s t i e n e n e l h i l o p r i n c i p a l má s h i l o s s e c u n d a r i o s o h i j o s , e n é s t e c a s o
t o d o s l o s p r o c e s o s h i j o s c o mp a r t e n l a i n f o r ma c i ó n d e l h i l o p r i n c i p a l p e r o a d emá s
p u e d e c a d a h i l o t e n e r s u i n f o r m a c i ó n p r i va d a .
D e n t r o d e l a i n f o r ma c i ó n p r o p i a t e n e m o s :
C o n t a d o r d e p r o gr am a
Pila
Registros.
Estado del proceso ligero.
D e n t r o d e l a i n f o r ma c i ó n c o m p a r t i d a t e n e m o s :
Va r i a b l e s g l o b a l e s .
A r c h i vo s a b i e r t o s
Señales
Semáforos.
Contabilidad.
del estado de ejecución a un proceso dado.
ADMINISTRACIÓN DE PROCESOS
Señales
Exc l u s i ó n m u t u a
S i dos p ro c e s o s s ol ic itan u n recurs o e xcl us i vo, un o de los d os qu edar á
s u s p endi do h a s ta q u e e l f a vo r e cid o l i b e r e e l r e c ur so .
C o n t e nci ón o r e t e nci ón y e s p e ra
S i un p r o c e s o n eces ita má s d e un r ecurs o par a re al izar su tr ab ajo,
co nser var á en su po der los recu rsos e xcl us i vos ya as ig nados, mi entras
e s p e ra p o r o t r o r e c u rso a d i c i o nal .
I n a p ropi ati vi d ad
L os recu rsos as ign ados a un proces o, sól o p u e d e n ser li bera dos p or e l
pr oceso mis mo y n o pue den ser d esas igna dos por el s iste ma, cua ndo otro
p r o c eso l o s n e c e site .
Es p e r a c i r c u la r
D e pen denc ia : S i un pr oceso P1 est á suspe ndi do e n esper a de un recurs o
e xc lus i vo que está as ign ado a otr o p roceso P 2 , e ntonces dec im os qu e P1
d e p e nd e d e P 2 ( P 1 < = P 2 )
Espe ra c irc u la r: Exi ste u na ca dena circ ul ar de p rocesos e n esp era de u n
rec urso, s i e xiste u na cad ena d e de pend enc ias e ntre proc esos de la for ma
P1 <= P2 <= P3 <= ... <= Pn <= P1
INTERBLOQUEOS
Detec ción y r ecuperación : En es ta pol ítica, el sis tema deja que s uc eda
el interbloqueo, pero se i mplementan procesos encargados de revis ar el
es tado de asi gnación de l os proc esos , para detec tar los interbloqueo .
Una v ez detectado, se pueden i mplementar polític as de rec uperación de
interbloqueo, que básicamente consisten en matar procesos.
INTERBLOQUEOS
Prevención
S e p u e d en a d o pt ar 4 p o s i b l e s e s t r a t e g i a s d e p r e v e n c i ó n d e l i n t er bl oqueo, u n a
p a r a c a d a c o n d i c i ó n . Ya q u e p a r a s e d é u n i n t e r b l o q u e o s o n n e c e s a r i a s l a s
cuatro, con negar una de ellas, se niega la posibilidad del interbloqueo:
Negación de la exclusividad
Sólo se aplica a recursos compartidos, es muy difícil poder aplicarlo a todos los
r e c u r s o s , d a d o q u e h a y r e c u r s o s q u e s o n i n h e r e n t e me n t e d e u s o n o c o m p a r t i d o .
U s o d e s p o o l e r s : d a r u n A P I c o n c u r r e n t e ( c o mp a r ti d o ) a l o s p r o c es os p a r a
a c c e s a r r e c u r so s . L a e s t r a t e g i a b á s i c a e s q u e u n s e r v i c i o d e l s i s t e m a ( d a e mo n )
proporciona un API, y ese servicio es el único que accesa el recurso compartido,
e x c l u s i v o . E j : u n a i m p r e s a e s u n r e c u r so e x c l u s i v o e i n a p r o p i a t i v o , p e r o c o n e l
uso de un spooler se convierte en un recurso compartido.
Te s t & G e t : u n A P I e s p e c i a l q u e p e r mi t e r e v i s a r p r i m e r o s i e l r e c u r s o e s t á
disponible, y pedirlo, o retornar un código de error que indica que no está
d i s p o n i b l e. R e q u i er e q u e l o s p r o c e so s h a g a n u s o d e e s t e A P I .
Negación de la contención
E s t r a t e g i a 1 : E l p r o c e s o p i d e a l s i s t e m a TO D O S l o s r e c u r so s a n e c e s i t a r a n t e s
de iniciar su proceso (todo o nada). No siempre se sabe cuántos recursos se
u t i l i za r á n .
E s t r a t e g i a 2 : Ta m b i é n p u e d e e s t a b l e c e r s e q u e u n p r o c e so s p u e d e p e d i r r e c u r s o s
cuando no tiene recursos asignados
GENERACIÓN DE SISTEMAS OPERATIVOS