Prerrequisito: Estados de un Proceso en Sistemas Operativos
El proceso en un sistema operativo pasa por diferentes estados desde su formación hasta su finalización. Un proceso consta de datos de programa y sus datos asociados y un bloque de control de proceso (PCB). Un proceso puede cambiar su estado debido a los siguientes eventos como requests de E/S, rutinas de interrupción, sincronización de procesos , algoritmos de programación de procesos , etc. El proceso puede ejecutarse o no y, si se está ejecutando, debe ser mantenido por el sistemas para el progreso apropiado del proceso a ser ganado.
Modelo de proceso de dos estados
El modelo más simple en el estado del proceso será un modelo de dos estados, ya que consta de solo dos estados que se dan a continuación:
- Estado de ejecución : un estado en el que el proceso se está ejecutando actualmente.
- Estado de no ejecución: un estado en el que el proceso está esperando su ejecución.
Ejecución del proceso en el modelo de dos estados
Se puede crear un estado de dos en cualquier momento sin importar si un proceso se está ejecutando o no.
- En primer lugar, cuando el sistema operativo crea un nuevo proceso, también crea un bloque de control de proceso para el proceso de modo que el proceso pueda ingresar al sistema en un estado de no ejecución. Si algún proceso sale/abandona el sistema, el sistema operativo lo sabe.
- De vez en cuando, el proceso que se está ejecutando actualmente se interrumpirá o interrumpirá y el despachador (un programa que cambia el procesador de un proceso a otro) del sistema operativo ejecutará cualquier otro proceso.
- Ahora, el proceso anterior (proceso interrumpido) pasa del estado de ejecución al estado de no ejecución y uno de los otros procesos pasa al estado de ejecución, después de lo cual sale del sistema.
Los procesos que no se están ejecutando deben mantenerse en una especie de cola y esperar su turno para ejecutarse. En el diagrama de cola, hay una única cola en la que la entrada es un puntero al bloque de control de proceso (un bloque en el que información como estado, identificador, contador de programa, datos de contexto, etc., se almacenan en una estructura de datos) de un proceso particular.
Debemos saber que una cola puede tener bloques de listas enlazadas en las que cada bloque representa un proceso. El comportamiento del despachador se puede ver en el diagrama de colas, un proceso que se interrumpe se transfiere al proceso de cola en espera, y si el proceso se ha completado, se termina. Después de eso, el despachador toma otro proceso de la cola y lo ejecuta.
Publicación traducida automáticamente
Artículo escrito por tarunsinghwap7 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA