Transiciones de Estado

Una transición de estado implica que un proceso cambie de un estado a otro.  Al realizar un proceso una transición de estado, el sistema operativo registra el nuevo estado en el PCB.

           Transacción de estados

Despacho

La asignación del procesador al primer proceso de la lista de procesos listos se denomina DESPACHO.

Llega un proceso al sistema y se inserta al final de la “Lista de Procesos Listos”, el proceso se desplaza poco a poco en esta lista a medida que los procesos se van ejecutando.  Cuando el proceso llega al principio de la lista, se le asigna el CPU (que ya está disponible).

Se dice que hay una transición de estado:

 

                 Despacho 

 

Expiración de tiempo

Ocurre cuando el sistema decide que el proceso en ejecución ya ha sido ejecutado el tiempo suficiente y es hora de que otro proceso tenga tiempo de CPU.

Para evitar que un proceso monopolice el sistema, el sistema operativo utiliza el reloj, para que las tareas de un usuario se ejecuten durante un intervalo específico de tiempo (quantum).

Si el proceso no libera voluntariamente el CPU antes que expire el intervalo de tiempo, el reloj genera una interrupción, haciendo que el sistema operativo retome el control.  El sistema operativo transforma el proceso en ejecución en un proceso listo; y como está desocupado el  CPU, pasa un proceso que estaba en la “Lista de Procesos Listos” primero.

Se dice que hay una transición de estado:

             Expiración de tiempo

  

Bloqueo

El proceso se bloquea esperando que se complete una operación de entrada/salida. 

Un proceso se está ejecutando normalmente en CPU, el proceso descubre que no puede continuar porque no llegan los datos que espera.  El proceso libera voluntariamente el CPU, en espera de los datos.

Es común que los procesos estén en espera de datos y estos no están disponibles, por lo que se bloquean en forma inmediata.

Se dice que hay una transición de estado:

           Bloqueo

 

Despertar

Ocurre cuando se completa una operación de entrada/salida. 

Ocurre el evento externo por el que espera un proceso bloqueado (llegada de nuevos datos).  Se “despierta”

 al proceso bloqueado que pasa al estado “Listo” tomando su lugar en la fila y espera hasta que llega al inicio de la fila para pasar nuevamente a CPU.

Se dice que hay una transición de estado:

               Despertar

 

 

 Arriba