Mi primera revista administracion de sistemas operativos | Page 13

El ciclo de vida de un proceso es sencillo, consta de la creación, la ejecución de instrucciones y la terminación. Cabe señalar que un proceso en el transcurso de su ciclo puede estar en diferentes estados.

Salida normal.

Salida por error.

Error fatal.

Eliminado por otro proceso.

Salida normal, ésta se presenta cuando el proceso termina de forma voluntaria, por ejemplo, cuando se cierra en navegador web o el procesador de textos.

Salida por error, ésta se presenta cuando el proceso tiene que salir debido a insuficiencia de datos, por ejemplo, cuando solicita un archivo que no existe.

Error fatal, éste sucede por un error en el programa, como las divisiones entre 0 o requerimiento de memoria inaccesible.

Eliminado por otro proceso, éste es sumamente útil cuando un proceso se queda colgado, es decir, sin terminar, pero tampoco responde. En Unix un ejemplo es cuando se utiliza el comando kill para terminar procesos abruptamente.

Una de las tareas más importantes del SO es la gestión de los procesos que se están ejecutando en una máquina. El hecho de que todos los procesos deban compartir los recursos hardware disponibles (memoria RAM, CPU) hace que el SO juegue un papel primordial en gestionar esos recursos para que los procesos se ejecuten de forma simultánea (al menos de cara al usuario) y compatible. Una posible definición de proceso es que un proceso es un programa que se encuentra en ejecución. Cada proceso, durante su ejecución, guarda información sobre su "contexto" que incluye, entre otras cosas, información sobre su proceso padre, los recursos del sistema que se están consumiendo (segmentos de memoria asignados), permisos de seguridad

Un proceso es simplemente, un programa en ejecución que necesita recursos para realizar su tarea: tiempo de CPU, memoria, archivos y dispositivos de E/S. El SO es el responsable de lo siguiente:

Crear y destruir procesos

Parar y reanudar procesos

Ofrecer mecanismos para que los procesos puedan comunicarse y se sincronicen

La gestión de procesos podría ser similar al trabajo de oficina. Se puede tener una lista de tareas a realizar y a estas fijarles prioridades alta, media, baja por ejemplo. Debemos comenzar haciendo las tareas de prioridad alta primero y cuando se terminen seguir con las de prioridad media y después las de baja. Una vez realizada la tarea se tacha. Esto puede traer un problema que las tareas de baja prioridad pueden que nunca lleguen a ejecutarse. y permanezcan en la lista para siempre. Para solucionar esto, se puede asignar alta prioridad a las tareas más antiguas.