jueves, 16 de febrero de 2023

Estados y transiciones de los procesos



Estados y transiciones de los procesos


La tarea principal del procesador es ejecutar las reglas de la máquina que residen en la memoria primaria. Para que un programa se ejecute, el sistema operativo crea un nuevo proceso y el procesador ejecuta sus reglas en secuencia. En un entorno de multiprogramación, el procesador intercala la ejecución de declaraciones de diferentes programas que residen en la memoria. El sistema operativo es responsable de decidir los patrones de anidamiento y la asignación de recursos para cada proceso.

 

puede detenerse porque el sistema operativo ha decidido ceder la CPU a otro proceso durante un tiempo. En el segundo caso estamos hablando de una formalidad del sistema (no hay suficiente CPU para darle a cada proceso su propio procesador privado).

 

1.- Ejecutándose (usando realmente la CPU en este instante).

2.- Listo (se puede ejecutar, pero se suspendió temporalmente para dejar que otro

proceso se ejecute).

3.- Bloqueo (no puede ejecutarse en tanto no ocurra algún evento externo).

Puede haber cuánto transiciones entre estos tres estados, como se muestra.

 


La transacción 1 ocurre después de que un proceso descubre que no puede continuar. En ciertos sistemas, un proceso debe realizar una llamada al sistema, bloqueo, para entrar en un estado bloqueado. En otros sistemas, MINIX incorporado, una vez que un proceso lee desde un determinado canal o documento (por ejemplo, una terminal) y no se puede acceder a ninguna entrada, se bloqueará automáticamente.

 

Las transiciones 2 y 3 son causadas por el programador de procesos, parte del sistema operativo, sin que el proceso lo sepa.

 

La transición 2 ocurre después de que el programador juzga que el proceso en ejecución ha estado funcionando el tiempo suficiente y es hora de dejar que otro proceso tenga algo de tiempo de CPU.

 

La transacción 3 ocurre después de que todos los demás procesos hayan tenido su parte justa y es hora de que el primer proceso reinicie la CPU.

 

La transacción 4 pasa una vez que pasa el evento externo que está esperando un proceso (como la llegada de la entrada). Sin otros procesos ejecutándose en ese momento, la transacción 3 se activa y el proceso empieza a correr

 

De lo contrario, es posible que el proceso deba esperar en espera durante un tiempo hasta que la CPU esté disponible. Usando un modelo de proceso, es mucho más fácil visualizar lo que está pasando en el sistema.

 

0 comentarios:

Publicar un comentario