Administración De Procesos
Concurrencia
Bloqueos Mutuos
Prevención
Se centra en modelar el comportamiento del sistema para que elimine
toda posibilidad de que se produzca un bloqueo. Resulta en una utilización
subóptima de recursos.
Evasión
imponer condiciones menos estrictas que en la prevención, para
intentar lograr una mejor utilización de los recursos. Si bien no puede
evitar todas las posibilidades de un bloqueo, cuando éste se produce busca
evitar sus consecuencias.
Detección y recuperación
El sistema permite que ocurran los bloqueos, pero
busca determinar si ha ocurrido y tomar medidas para eliminarlo.
Informacion Asociada A un Proceso
ESTADO DE PROCESO
Contador De Programas
Registros Del CPU
Informacion De Planifiacion
Inforamacion De Contabilidad
Estado De E/S
Estado De Un Proceso
LISTO
NUEVO
Bloqueado
Terminado
Zombie
EJECUCION
Conceptos De Procesos
Un programa es una entidad pasiva, una lista de instrucciones; un proceso
es una entidad activa, que –empleando al programa– define la actuación que
tendrá el sistema
Procesos e Hilos
los hilos se ejecuta de forma (aparentemente) secuencial
y maneja su propio contador de programa y pila
Los hilos y el sistema operativo
PROCESOS E HILOS
Equipo de trabajo
Línea de ensamblado
Introducción
se refiere a dos o más
eventos que ocurren a la vez sino a dos o más eventos cuyo orden es no determinista,
esto es, eventos acerca de los cuales no se puede predecir el orden relativo en que ocurrirán
Condición de carrera
Recurso compartido
En muchos escenarios esto es un variable en memoria (como
cuenta en el jardín ornamental), pero podrían ser archivos, periféricos,
etcétera.
Categoría de errores de programación
que involucra a dos procesos que fallan al comunicarse su estado mutuo,
llevando a resultados inconsistentes.
Operación atómica
OPERACION ATOMICA
Manipulación de datos que requiere la garantía de que se
ejecutará como una sóla unidad de ejecución, o fallará completamente,
sin resultados o estados parciales observables por otros procesos o el entorno.
Prevención de bloqueos
Serialización
Una manera de evitar bloqueos por completo sería el que un sistema operativo
jamás asignara recursos a más de un proceso a la vez
Retención y espera
todos los programas declaren al iniciar su
ejecución qué recursos van a requerir. Éstos son apartados para su uso exclusivo
hasta que el proceso termina, pero el sistema operativo puede seguir atendiendo
solicitudes que no rivalicen:
Evasión de bloqueos
Para la evasión de bloqueos, el sistema partiría de poseer, además de la
información descrita en el caso anterior, conocer cuándo requiere un proceso utilizar cada recurso. De este modo, el planificador puede marcar qué orden
de ejecución
Solicitud de una vez
este mecanismo requería que un proceso declarara
una sola vez qué recursos requeriría, pero posteriormente la estrategia
se modificó, permitiendo que un proceso solicite recursos nuevamente
Asignación jerárquica
La condición básica es que, una vez que un proceso obtiene un
recurso de determinado nivel, sólo puede solicitar recursos adicionales de niveles
superiores