2.4 Transiciones de estado de un Proceso
Cada
cambio de estado se denomina transición de estado. Las transacciones más
comunes son las siguientes:
1.
Comienzo de la ejecución:
Todo proceso comienza al ser dada
la orden de ejecución del programa, generándose e insertándose su PCB en la
cola de trabajos.
2.
Paso de estado de ejecución: Cuando el procesador está
inactivo y en la cola de trabajo hay algún proceso en espera de ejecutarse, se
pondrá en ejecución el primero de la cola.
3.
Paso a estado de bloqueo: Un proceso que se encuentre
en ejecución y que solicite un recurso, teniendo que esperar, será pasado de
estado de ejecución a estado de bloqueo. El procesador pone en ejecución el
siguiente proceso (el primero en la cola de trabajo).
4.
Paso a estado de preparado: Puede ser producido por
alguna de las siguientes causas:
·
Orden de ejecución de
un programa.
·
Si un proceso está
bloqueado por alguna causa de
operación de E/S y finaliza.
·
Si un proceso está en
ejecución y aparece una interrupción que fuerza al
sistema operativo a ejecutar otro
proceso, el primero pasa a la cola de trabajo (su PCB).
5.
Activación:
Un proceso suspendido sin estar bloqueado.
TERMINACIÓN
DE UN PROCESO
En
cualquier sistema computacional, debe haber un medio para que un proceso indique
su terminación. Un trabajo por lotes deberá incluir una instrucción detener
o un servicio de sistema operativo explícito para llamar la terminación. En el
primer caso, la instrucción detener generará una interrupción para alertar al
sistema operativo que un proceso se ha completado. Para una aplicación
interactiva, la acción del usuario indicará cuando se completa el proceso. Por
ejemplo, en un sistema de tiempo compartido, el proceso para un usuario
particular se termina cuando el usuario pone fin a una sesión o desactiva la
terminal. En una computadora personal o en una estación de trabajo, un usuario
puede interrumpir una aplicación (ej. Procesamiento de palabras u hoja de cálculo).
Todas estas acciones producen, finalmente, una solicitud de servicio al sistema
operativo para terminar al proceso que solicitó.
Además,
varias condiciones de error y falla pueden conducir a la terminación de un
proceso.
En algunos de los casos, en un sistema operativo un proceso puede ser terminado por el proceso que lo creó o cuando se termina el proceso padre.

OPERACIONES
SOBRE PROCESOS
1.
Crear un proceso: Se produce cuando se da la orden de
ejecución del programa y necesita, entre otros, la prioridad y los recursos que
requiere. Su PCB es generado y se almacena en la cola de trabajo.
Hay
dos tipos de creación:
No
Jerárquica: Cada proceso creado es ejecutado de manera independiente a su
creador, con un entorno diferente.
2.
Destruir un proceso: El proceso
se destruye eliminando su PCB.
3.
Suspender un proceso: Un proceso de alta prioridad
paraliza un proceso que puede ser reanudado posteriormente.
4.
Poner un proceso en espera: Es ubicar a el proceso en
la cola de dispositivos por la falta de algún dispositivo que este requiera en
un momento en el cual el dispositivo está siendo ocupado por otro programa.
TRANSICIONES
DE ESTADO DE UN PROCESO
