Estados de procesos
El estado de un proceso define su actividad actual.
Durante su existencia, un proceso pasa por una serie de estados discretos.
Estos estados son se muestran en el siguiente diagrama:
Un proceso puede estar en cualquiera de los
siguientes estados.
A continuación se describe cada uno de estos
procesos.
Estado
|
Descripción
|
Nuevo
|
Se dice
que un proceso está en estado de nuevo cuando apenas se encuentra en proceso
de crearse.
|
Listo
|
Un
proceso está en estado de listo, cuando podría usar una CPU, si hubiera una
disponible.
|
En ejecución
|
Se dice
que un proceso está estado de ejecución, si en ese momento tiene está
ocupando la CPU.
|
Bloqueado
|
Se dice
que un proceso está en estado de bloqueado, si espera que ocurra algo, como
por ejemplo, la terminación de una E/S, para así poder ponerse en marcha.
|
Terminado
|
Cuando
un proceso se ha completado su ejecución pasa a ser un proceso terminado.
|
Los
estados de los procesos se pueden dividir en dos tipos:
1.- Activos: Son aquellos que compiten con el procesador o están
en condiciones de hacerlo. Se dividen en:
- Ejecución: Estado en
el que se encuentra un proceso cuando tiene el control del procesador. En
un sistema monoprocesador este estado sólo lo puede tener un proceso.
- Preparado: Aquellos
procesos que están dispuestos para ser ejecutados, pero no están en
ejecución por alguna causa.
- Bloqueado: Son los
procesos que no pueden ejecutarse de momento por necesitar algún recurso
no disponible (generalmente recursos de E/S).
2.- Inactivos: Son aquellos que no pueden competir por el
procesador, pero que pueden volver a hacerlo por medio de ciertas operaciones.
En estos estados se mantiene el bloque de control de proceso aparcado hasta que
vuelva a ser activado. Se trata de procesos que no han terminado su trabajo que
lo han impedido y que pueden volver a activarse desde el punto en que se
quedaron sin que tengan que volver a ejecutarse desde el principio.
Pueden
ser de dos tipos:
·
Suspendido
bloqueado: Es el
proceso que fue suspendido en espera de un evento, sin que hayan desaparecido
las causas de su bloqueo.
·
Suspendido
programado: Es el proceso
que ha sido suspendido, pero no tiene causa parta estar bloqueado.
Transiciones de estados
Cuando un trabajo es admitido se crea un proceso equivalente, y es
insertado en la última parte de la cola de listos. Cuando un proceso pasa de un
estado a otro se dice que hace una transición de estado, estas transiciones se
describen a continuación.
Transición
|
Descripción
|
Admitido(Proceso):
Nuevo-Listo |
Cuando
un proceso se ha creado y se le es permito para competir por la CPU.
|
Despacho(Proceso):
Listo-En ejecución |
La
asignación de la CPU al primer proceso de la lista de listos es llamado
despacho y es ejecutado por la entidad de sistema llamada despachador.
Mientras que el proceso tenga la CPU se dice que está en ejecución.
|
Tiempo excedido(Proceso):
En ejecución-Listo |
Cuando a un proceso se le expira el intervalo de tiempo asignado para estar
en ejecución (CUANTO), hace que este proceso que se hallaba en estado de
ejecución pase al estado de listo e inmediatamente el despachador hace que el
primer proceso de la lista pase a estado de ejecución.
|
Bloqueo(Proceso):En ejecución Bloqueado
|
Si un
proceso que se encuentra en estado de ejecución inicia una operación de E/s
antes que termine su cuanto, el proceso voluntariamente abandona la CPU, es
decir, el proceso se bloquea a sí mismo.
|
Despertar(Proceso):
Bloqueo-Listo |
La
única transición posible en nuestro modelo básico ocurre cuando acaba una
operación de E/S (o alguna otra causa por la que esté esperando el proceso),
y esta termina pasa al estado de listo.
|
Salir(Proceso):
En ejecución-Terminado |
Esta
transición ocurre cuando el proceso se ha terminado de ejecutarse, y pasa a
un estado de terminado.
|

No hay comentarios:
Publicar un comentario
Nota: solo los miembros de este blog pueden publicar comentarios.