Todos los SO de multi-programación están construido entorno
al concepto de proceso
Los requerimientos principales que debe cumplir un SO para con los procesos son los siguientes:
1._ El SO debe intercalar la ejecución de procesos para
optimizar la utilización de el procesador ofreciendo
alavés un tiempo de respuesta razonable
2._ El SO debe asignar los
recursos del sistema a los procesos en conformidad con una política específica
que evite situaciones de ínter bloqueo
3._ El SO podría tener que dar soporte a la comunicación entre procesos y
ofrecer mecanismos para su creación
Creación y terminación de procesos
El sistema de operación debe crear un mecanismo para la
creación y terminación de procesos.
1._ Creación de procesos
Cuando un nuevo
proceso se agrega el sistema de operación construye las estructuras de datos
que son usadas para administrar los procesos y le asigna espacio de
direcciones. Estas acciones constituyen la creación de un nuevo proceso.
Los eventos comunes para la creación de procesos
- En un ambiente batch, un proceso es creado en respuesta al sometimiento a ejecución
de un trabajo.
- En un ambiente interactivo, un proceso es creado cuando un nuevo usuario entra al
sistema.
- El sistema de operación puede crear un proceso para que
realice una función en respuesta a una petición de un programa usuario, sin que
el usuario tenga que esperar.
- Creación de procesos hijos por parte de procesos usuarios
ya existentes el proceso que crea se llama proceso padre.
2._ Terminación de
procesos
Un proceso
termina cuando ejecuta su última instrucción y pide al sistema operativo que lo
elimine.
En este momento, el
proceso puede devolver un valor de estado a su proceso padre.
El sistema
operativo libera la asignación de todos los recursos del proceso, incluyendo
las memorias física y virtual, los archivos abiertos y los búferes de
E\S.
La terminación puede producirse también en otras
circunstancias.
Un proceso puede causar la terminación de otro proceso a
través de la adecuada llamada al sistema.
Dicha llamada al sistema al sistema sólo puede ser invocada
por el padre del proceso que va am terminar.
En caso contrario, los usuarios podrían terminar arbitrariamente
los trabajos de otros usuarios.
Adicionalmente, un número de error o una condición de fallo puede llevar a la
finalización de un proceso. Las condiciones mas habituales son las siguientes:
Finalización normal .
Limite de tiempo excedido.
Memoria no disponible.
Violaciones de frontera .
Error de protección .
Limite de tiempo.
Fallo de E/S.
Instrucción no válida.
Instrucción privilegiada.
Uso inapropiado de datos.
Intervención del operador por el sistema operativo.
Terminación del proceso padre.
Solicitud del proceso padre.
ESTADOS DE UN PROSESO DE SISTEMAS
Preparado (R).- Proceso que está listo para ejecutarse
Ejecutando (O).- Sólo uno de los procesos preparados se está
ejecutando en cada momento
Suspendido (S).- Se esta suspendido si no entra en el reparto
de CPU, el proceso pasa a formar parte del conjunto de procesos preparados.
PARADO (T).- Será
cuando pasarán a estar preparados cuando reciban una señal determinada que les
permita continuar.
Zombie (Z).- Todo proceso al finalizar avisa a su proceso
padre . En vaso de que el padre no lo reciba, el proceso hijo queda en estado zombie, no está consumiendo CPU,
pero sí continua consumiendo recursos del
sistema .
Transiciones de
estado de los procesos
De ejecución á Bloqueado: Se realiza esta transición cuando
cuando queda en espera cuando por la concesión de sus recursos o por la
determinación de un suceso.
De ejecución á Listo: Cuando el proceso que ocupa la CPU
lleva demasiado tiempo ejecutándose ,el sistema operativo decide que otro proceso
ocupe la CPU, pasando el proceso que ocupaba la CPU a estado listo.
De Listo á en ejecución: Cuando lo requiere el planificador
de la CPU.
De Bloqueado á Listo: Se dispone del recurso por el que se había bloqueado el proceso.
De Nuevo a Preparado: Es cuando el SO acepta o admite un
proceso mas.
De Preparado a Terminado: Ocurre cuando cuando el proceso
padre decide finalizar la ejecución del hijo.
De Bloqueado a Terminado: Ocurre cuándo el proceso supere el
tiempo máximo de espera de un recurso y el
SO decida terminarlo.
No hay comentarios.:
Publicar un comentario