siguiente arriba anterior
Siguiente: Remitir trabajos Arriba: raiz Anterior: Ejercicios

Procesos y control de trabajos

UNIX se concibió como un sistema multitarea, y multiusuario, y aunque está bien saber que el sistema es capaz de ejecutar varias tareas concurrentemente, tambien podemos hacer uso de ello lanzando sesiones y trabajos, en paralelo.

Los estados aparentes que presenta un proceso se indican en la figura [*]. Como es lógico, en una máquina monoprocesador solo habrá un proceso en ejecución (0), mientras que puede haber varios en cola (R) y otros más en situación de espera, bien forzada (T) o bien a la expectativa de que se atiendan sus necesidades de acceso a algún recurso o señal (S).

Figura: Diagrama de estados de un proceso
\includegraphics{estadospro.eps}

A todo esto se une la peculiar forma en que se multiplican los procesos en UNIX. La creación de procesos nuevos se produce mediante un proceso de clonación (ver figura [*]) diseñado para:

Figura: Clonación de procesos con fork.
\includegraphics{forkin.eps}

Desde el momento de la creación del nuevo proceso, el proceso hijo mantiene una relación de subordinación con el proceso padre que en algunas circunstancias puede llegar a romperse y a degenerar en procesos perdidos o como se dice vulgarmente «colgados».

En este apartado vemos los mandatos más comunes para observar e interactuar con los procesos que circulan en UNIX.



Subsecciones
siguiente arriba anterior
Siguiente: Remitir trabajos Arriba: raiz Anterior: Ejercicios
Cesar Llamas Bello 2001-01-09