Algoritmo de programación de cola de comentarios de varios niveles (con código de implementación Python3)

Multi Level Feedback Queue Scheduling Algorithm

Primero introduzca la estructura utilizada en el programa.

1. Estructura de 'proceso / tarea'



|_+_|

Los atributos del proceso incluyen el nombre del proceso, el tiempo de llegada, el tiempo requerido para el servicio, el tiempo restante requerido para el servicio, el tiempo de finalización, el tiempo de respuesta y el tiempo de respuesta ponderado. El tiempo de respuesta es el intervalo entre el tiempo de envío y el tiempo de finalización, el tiempo de respuesta ponderado es el tiempo de respuesta / tiempo de ejecución real.



2. Cola



|_+_|

Para configurar una cola, el método de inicialización debe dar prioridad a la cola, así como a la lista de procesos contenidos en la cola, y de paso definir el método para obtener algunos atributos de la cola.

Luego está el programa de algoritmo específico utilizado:
3. Algoritmo de programación por turnos (RR)

|_+_|

El algoritmo de programación de la cola de retroalimentación de varios niveles se utiliza para ejecutar el proceso en la última cola. Si se toma por separado, también es un código de implementación de algoritmo completo. El siguiente código también tiene el código de prueba correspondiente.



4. Algoritmo de programación de la cola de comentarios de varios niveles

|_+_|

Lo anterior es un algoritmo de programación de cola de retroalimentación de varios niveles. La última cola usa el algoritmo RR en el tercer segmento de código, y las otras se implementan de acuerdo con los detalles del algoritmo anterior.

5. Procedimiento de prueba

|_+_|

Alcanzar resultados:
imagen

Finalmente, resuma las ventajas del algoritmo de programación de la cola de comentarios de varios niveles:

  • Sin conocer el tiempo de ejecución requerido por varios procesos de antemano, puede satisfacer mejor las necesidades de varios tipos de procesos.

  • Se puede responder a ambos trabajos de alta prioridad y los trabajos cortos (procesos) se pueden completar rápidamente. (Compare las deficiencias de FCFS y los algoritmos de programación del índice de respuesta de alta prioridad).

  • Teniendo en cuenta operaciones tanto largas como cortas, con un buen tiempo de respuesta y una gran viabilidad, es adecuado para varios entornos operativos.

Pulsa la dirección de descarga del código.
https://github.com/LIANGQINGYUAN/OperatingSystens/blob/master/Multilleved_Feedback_Queue.py

¡Bienvenido estrella, cangrejo! ! !