¿Qué es la programación de procesos?
La programación de procesos es una tarea del sistema operativo que programa procesos de diferentes estados como listo, en espera y en ejecución.
La programación de procesos permite que el sistema operativo asigne un intervalo de tiempo de ejecución de la CPU para cada proceso. Otra razón importante para utilizar un sistema de programación de procesos es que mantiene la CPU ocupada todo el tiempo. Esto le permite obtener el tiempo de respuesta mínimo para los programas.
En este tutorial de programación de procesos, aprenderá:
- ¿Qué es la programación de procesos?
- Colas de programación de procesos
- Modelo de proceso de dos estados
- Objetivos de programación
- Tipo de programadores de procesos
- Programador a largo plazo
- Programador de mediano plazo
- Programador a corto plazo
- Diferencia entre programadores
- ¿Qué es el cambio de contexto?
Colas de programación de procesos
Las colas de programación de procesos le ayudan a mantener una cola distinta para todos y cada uno de los estados de proceso y PCB. Todos los procesos del mismo estado de ejecución se colocan en la misma cola. Por lo tanto, cada vez que se modifica el estado de un proceso, su PCB debe desvincularse de su cola existente, que regresa a la nueva cola de estado.
Tres tipos de colas del sistema operativo son:
- Cola de trabajos : le ayuda a almacenar todos los procesos en el sistema.
- Cola lista : este tipo de cola le ayuda a configurar todos los procesos que residen en la memoria principal, que está lista y esperando para ejecutarse.
- Colas de dispositivos : es un proceso que está bloqueado debido a la ausencia de un dispositivo de E / S.
En el diagrama anterior,
- El rectángulo representa una cola.
- El círculo denota el recurso
- La flecha indica el flujo del proceso.
- Cada nuevo proceso se coloca primero en la cola Ready. Espera en la cola Ready hasta que finalmente se procesa para su ejecución. Aquí, el nuevo proceso se coloca en la cola lista y espera hasta que se seleccione para su ejecución o se envíe.
- A uno de los procesos se le asigna la CPU y se está ejecutando
- El proceso debe emitir una solicitud de E / S
- Luego, debe colocarse en la cola de E / S.
- El proceso debe crear un nuevo subproceso
- El proceso debería estar esperando su finalización.
- Debería eliminarse con fuerza de la CPU, como resultado de la interrupción. Una vez que se completa la interrupción, se debe enviar de nuevo a la cola de espera.
Modelo de proceso de dos estados
Los modelos de proceso de dos estados son:
- Corriendo
- No corras
Corriendo
En el sistema operativo, cada vez que se crea un nuevo proceso, se ingresa en el sistema, que debería estar en ejecución.
No corras
Los procesos que no se están ejecutando se mantienen en una cola, que está esperando su turno para ejecutarse. Cada entrada en la cola es un punto a un proceso específico.
Objetivos de programación
Aquí, se encuentran los objetivos importantes de la programación de procesos.
- Maximice la cantidad de usuarios interactivos dentro de tiempos de respuesta aceptables.
- Logre un equilibrio entre respuesta y utilización.
- Evite el aplazamiento indefinido y haga cumplir las prioridades.
- También debe hacer referencia a los procesos que contienen los recursos clave.
Tipo de programadores de procesos
Un programador es un tipo de software del sistema que le permite manejar la programación de procesos.
Existen principalmente tres tipos de programadores de procesos:
- A largo plazo
- Término corto
- Término medio
Programador a largo plazo
El programador a largo plazo también se conoce como programador de trabajos . Este planificador regula el programa y selecciona el proceso de la cola y los carga en la memoria para su ejecución. También regula el grado de multiprogramación.
Sin embargo, el objetivo principal de este tipo de planificador es ofrecer una combinación equilibrada de trabajos, como Procesador, trabajos de E / S., Que permita gestionar la multiprogramación.
Programador de mediano plazo
La programación a mediano plazo es una parte importante del intercambio . Le permite manejar los procesos externos intercambiados. En este programador, un proceso en ejecución puede suspenderse, lo que realiza una solicitud de E / S.
Un proceso en ejecución puede suspenderse si realiza una solicitud de E / S. Los procesos suspendidos no pueden avanzar hacia su finalización. Para eliminar el proceso de la memoria y hacer espacio para otros procesos, el proceso suspendido debe trasladarse al almacenamiento secundario.
Programador a corto plazo
La programación a corto plazo también se conoce como programador de CPU . El objetivo principal de este programador es aumentar el rendimiento del sistema de acuerdo con los criterios establecidos. Esto le ayuda a seleccionar de un grupo de procesos que están listos para ejecutarse y asigna CPU a uno de ellos. El despachador cede el control de la CPU al proceso seleccionado por el planificador a corto plazo.
Diferencia entre programadores
A largo plazo vs. Corto Plazo vs. Término medio
A largo plazo | Término corto | Término medio |
---|---|---|
A largo plazo también se conoce como programador de trabajos. | El corto plazo también se conoce como programador de CPU. | A mediano plazo también se le llama programador de intercambio. |
Está ausente o es mínimo en un sistema de tiempo compartido. | Es insignificante en el orden de tiempo compartido. | Este planificador es un elemento de los sistemas de tiempo compartido. |
La velocidad es menor en comparación con el programador a corto plazo. | La velocidad es la más rápida en comparación con el planificador de corto y mediano plazo. | Ofrece velocidad media. |
Le permite seleccionar procesos de las cargas y volver a agruparlos en la memoria | Solo selecciona procesos que están en un estado listo para la ejecución. | Le ayuda a devolver el proceso a la memoria. |
Ofrece control total | Ofrece menos control | Reducir el nivel de multiprogramación. |
¿Qué es el cambio de contexto?
Es un método para almacenar / restaurar el estado de una CPU en PCB. Para que la ejecución del proceso se pueda reanudar desde el mismo punto en un momento posterior. El método de cambio de contexto es importante para el sistema operativo multitarea.
Resumen:
- La programación de procesos es una tarea del sistema operativo que programa los procesos de diferentes estados como listo, en espera y en ejecución.
- Los modelos de proceso de dos estados son 1) En ejecución y) No en ejecución
- La programación de procesos maximiza el número de usuarios interactivos, dentro de tiempos de respuesta aceptables.
- Un programador es un tipo de software del sistema que le permite manejar la programación de procesos.
- Tres tipos de planificador son 1) Largo plazo 2) Corto plazo 3) Mediano plazo
- El programador a largo plazo regula el programa y selecciona el proceso de la cola y los carga en la memoria para su ejecución.
- El planificador de mediano plazo le permite manejar los procesos de salida intercambiados.
- El objetivo principal del programador a corto plazo es aumentar el rendimiento del sistema de acuerdo con los criterios establecidos.
- El largo plazo también se conoce como programador de trabajos, mientras que el corto plazo también se conoce como programador de CPU y el mediano plazo también se denomina programador de intercambio.