Método de gestión de colas
Descripción general
 Elimina la necesidad de clasificar paquetes al tiempo que procesa información urgente de manera preferencial. En cada proceso recibe en ejecutor Terminal de conexión información de la cola de paquetes esquema de otros procesos, cada proceso, cada paquete lleva a cabo proceso de puesta en cola para la conexión proporcionando una prioridad para el final del ejecutor matriz Terminal, dequeue lado la cada proceso está provisto de un búfer asignado por prioridad, cuando hay un paquete de cabeza en la adquisición del paquete (S21), se repite el tampón de procesamiento correspondiente a su prioridad incorporado secuencialmente amortiguar el primer paquete si el ralentí (S25, S26), pasando un paquete que tiene una alta prioridad de entre el tampón cuando la memoria intermedia correspondiente a la prioridad del primer paquete no está vacío en el proceso (S27), la comprobación de presencia del primer paquete de nuevo.
Campo técnico
La presente invención se refiere a un método de gestión de colas para tareas mutuas para intercambiar datos en un entorno multitarea (multiprogramación).
Antecedentes de la técnica
En una multitarea en la que una pluralidad de tareas (programas) se ejecutan en paralelo, cada proceso (programa) tiene una ventana llamada 'terminal de cola' para recibir información de otros procesos.
Una cola de datos llamada 'paquete' está conectada al terminal de cola, y los datos se adquieren en orden desde el paquete de cabecera.
5 muestra un diagrama conceptual de un método de gestión de colas, cada proceso 1 n tiene terminal de cola T1 Tn, puede almacenar los datos en el paquete de cabeza hasta el paquete final, se realiza la adquisición de datos desde el paquete de cabeza.
Por ejemplo, cuando el proceso 1 envía datos al proceso n, el proceso 1 empaqueta la información en un paquete y concatena el paquete al final del terminal de cola del proceso n. Esta operación se llama 'enqueue'.
El proceso n procesa paquetes de acuerdo con el orden de la matriz hasta que no haya una matriz de paquetes conectados a su terminal de cola.
El proceso de cada proceso para esto es el procedimiento que se muestra en la FIG. Después de inicializar el procesamiento, como la matriz de paquetes (S1), se realiza el procesamiento de adquisición de paquetes (S2). El proceso de adquisición de paquetes comprueba si el primer paquete está presente (S21), si el primer paquete está presente un paquete entra en el paquete de espera hasta que se conectan a los terminales de la cola (S22). Cuando el paquete de cabecera ya existe, el paquete de cabecera se recoge en el proceso (S23).
Después de incorporar el paquete de cabeza, se comprueba el contenido del paquete (S3), realiza un proceso correspondiente al contenido (S41 S4N), regresa a la comprobación del primer paquete de nuevo (S21).
Tarea de solución
En el método de gestión de colas convencional, cada proceso está conectado a un terminal de cola como un paquete de la misma cola en el que se mezclan tanto información que requiere procesamiento urgente como información que no requiere procesamiento urgente.
Entonces, el proceso se convierta en un método de procesamiento desde el principio del paquete en orden, cuando hay muchos diferentes paquetes antes de que el paquete urgente información, tiempo más largo hasta que el procesamiento de información urgente Lo haré.
La forma más sencilla de resolver este problema, tener una prioridad (prioridad) de los propios paquetes, es la de reorganizar el orden de procesamiento de los paquetes en función de su prioridad a poner en cola (clasificación). Como resultado, la información que requiere urgencia se puede procesar rápidamente como un paquete principal.
Sin embargo, la longitud de este método, la matriz de los terminales de cola de importancia no conseguir un tiempo suficiente uso de la CPU para un bajo proceso fácilmente se hace más largo, el otro proceso de este tiempo es una matriz cuando en cola al terminal de cola Dependiendo de la duración de la clasificación, se deteriorará el rendimiento general del sistema.
Un objeto de la presente invención es proporcionar un método de gestión de colas que hace innecesario clasificar paquetes mientras se procesa preferentemente la información urgente.
Solución
Para resolver el problema anterior, cada proceso recibe información de paquetes de otro proceso en cola, y cada proceso recibe un paquete con prioridad entre sí, realiza proceso de puesta en cola para conectar el extremo de la matriz, cada uno de los proceso lado dequeue, la prioridad-in proporcionan un tampón de asignación, tampón secuencialmente paquete de cabeza cuando la memoria intermedia de captura de paquetes que corresponde a la prioridad del primer paquete está en un estado vacante el proceso de incorporación de la repetición, la memoria intermedia correspondiente a la prioridad del primer paquete pasa el paquete con una prioridad más alta de entre el búfer cuando se vacía el proceso, el paquete en un estado vacante de la memoria intermedia correspondiente a la prioridad del primer paquete de nuevo Para Y realizar el procesamiento iterativo Komu Ri.
Cada uno de la prioridad-tampón para dar cada captura de paquetes en el búfer del estado vacante desde el primer paquete de la orden siempre y cuando inactivo, tampón de alta correspondiente a la prioridad del primer paquete es la prioridad de la memoria intermedia y si búfer no vacía Para el proceso.
Como resultado, los paquetes urgentes se entregan al proceso con la mayor prioridad del búfer al tener alta prioridad, y se toman en el proceso de manera relativamente rápida.
Por otra parte, los paquetes de baja prioridad se saca de la memoria intermedia no se hace hasta que el paquete se elimina a una memoria intermedia más alta, tampón los del primer paquete y pasa el paquete de la memoria intermedia cuando los paquetes de la misma prioridad es primero en el paquete para el proceso de Como se muestra en la FIG. Esto elimina la posibilidad de que los paquetes de baja prioridad no se pasen al proceso para siempre.
Además, el proceso lateral en cola solo necesita realizar la secuencia dando la prioridad al paquete, eliminando el proceso de clasificación de la cola.
La figura 1 es un diagrama de flujo de un proceso de adquisición de paquetes que muestra una realización de la presente invención. Esta figura reemplaza el proceso S2 en la FIG.
Para realizar esta realización, las prioridades se agregan a los paquetes. El valor de prioridad es un valor arbitrario de 1 a N determinado para cada terminal de cola. Además, cada terminal de cola está provisto de memorias intermedias de datos N (número de prioridad), y los paquetes se captan en el proceso a través de este búfer.
adquisición de paquetes proceso verifica si el primer paquete está presente (S21), si el primer paquete está presente todo n tampones comprueba si vacío (S24), el tampón es todo gratis Si es así, entra en un estado de espera de paquete (S22).
Procesamiento de Cheques S21, cuando el primer paquete está presente, el tampón correspondiente a la prioridad del primer paquete, se comprueba si o no libre (S25), capta el paquete de cabeza si una vacante en la memoria intermedia (S26), el siguiente El proceso vuelve al paso S21 en cuanto a si existe o no el paquete principal del paquete.
A través de estos procesos, el paquete de cabecera o el paquete precedente se captura en el almacenamiento intermedio correspondiente a la prioridad del paquete de cabecera. Si todos los N almacenamientos intermedios no están vacíos en el control del paso S24, los paquetes se toman en al menos un almacenamiento intermedio de los N almacenamientos intermedios.
Por último, cuando se trata de NO en el procesamiento de cheques S25 o S24, entre los tampones de N, tal como se ve desde la memoria intermedia de orden de prioridad más alto, teniendo el paquete de información celebrada que cuando encuentra un tampón no está vacío en el proceso ( S27).
La figura 4 muestra un proceso de adquisición de un paquete cuando N = 3, que es el número de almacenamientos intermedios y el número de prioridades, y cuatro paquetes se ponen en cola en el terminal de cola. Por cierto, las prioridades de expresión 'H' el más alto, el medio 'M' indica adjuntan a cada paquete de la más baja como 'L', también se muestra en la en incluso H, M, tampón L.
2, en el estado inicial mostrado en la Fig. (A), con el fin de primer paquete 1 4 prioridad hay información sobre la 'L, H, L, M', el tampón H, M, lo que es la L Tampoco está aceptado.
En este estado, dado que el paquete de cabezal existe, el proceso pasa al paso S25 después de verificar el proceso S21 en la FIG. Desde tampón L está vacío, correspondiente a la prioridad 'L' del primer paquete, se obtiene el primer paquete 1 al tampón de L en la raíz A de la Fig. 1 (S25, S26). Este estado se muestra en la figura 2 (b).
Además, dado que la prioridad del siguiente paquete líder 2 es 'H', dado que el almacenamiento temporal de esta prioridad 'H' está vacío, el paquete A se toma en el almacenamiento intermedio H con la ruta A. Este estado se muestra en (c) de la Fig. 2, el primer paquete 3 en este caso es que la prioridad es 'L', ya que el paquete 1 ya se incorpora en el tampón L, comienza el procesamiento de S27 en la raíz B.
En el paso S27, para la toma de la memoria intermedia del proceso de mayor prioridad el contenido de la memoria intermedia no es mirada vacío con el fin de capturar los paquetes de proceso segundo tampón H como se muestra en (a) de la figura. Los procesos S3 y S41n de la figura 6 se ejecutan para este paquete 2, y el proceso vuelve a la verificación de existencia S21 del paquete de cabecera de la figura 1 de nuevo.
Después de pasar la zona con el paquete 2 de tampón H en el proceso, como se muestra en la Fig. 3 (b), la prioridad del primer paquete 3 es L, y por otra parte ya que el paquete 1 se incorpora en el tampón L, El paquete S25 no recupera el paquete 3. Por lo tanto, como se muestra en la Fig. 3 (b), sin realizar el paquete de captación de 3 entra en el procesamiento de S27 en la raíz B, y pasa a la zona con un paquete 1 de tampón L del proceso.
A continuación, dado que la memoria intermedia L se vacía, el paquete de cabezal 3 en este momento se recoge en la memoria intermedia L como se muestra en la figura 3 (c). Como la prioridad del paquete de cabeza 4 es M y la memoria intermedia M está vacía, el paquete 4 también se toma en la memoria intermedia M.
Este estado es como se muestra en (a) de la Fig. 4, no hay ningún paquete que conduce, desde la memoria intermedia de dos paquetes no está vacía, el procesamiento de S21 → S24 al entrar en la ruta C en el proceso S27 pasa a través de la lata, Y pasa el paquete 4 del buffer M que tiene la mayor prioridad al área del proceso.
Después de este procesamiento, es como se muestra en la figura 4 (b). Además, como se muestra en (c) de la figura 4, el paquete 3 de la última memoria intermedia restante L se pasa al área del proceso.
Como se ha descrito anteriormente, en esta realización, cuando se asigna presente el paquete de cabeza tampón y la prioridad-del primer paquete está en el estado de reposo se repite el proceso para la captura de la memoria intermedia secuencial del primer paquete, cuando la memoria intermedia de captura de paquetes cabeza no está vacía , Un paquete que tiene una alta prioridad desde el búfer se pasa al proceso y el paquete superior se recupera nuevamente en el búfer vacío.
Por lo tanto, en la presente realización, es posible procesar de manera preferente datos que requieren urgencia dentro del intervalo permitido del búfer vacío sin cambiar el proceso del cuerpo principal del proceso lateral de eliminación de la secuencia. Además, el proceso en cola lateral no necesita ordenar paquetes y no degrada el rendimiento del sistema, incluso cuando los procesos de gran importancia que deben procesarse rápidamente se convierten en largas colas.
Además, ajustando la constante N especificada para cada uno de los modelos de negocios, es posible realizar la gestión de colas de acuerdo con el carácter de cada proceso. Por ejemplo, un proceso que es bueno con los métodos de gestión convencionales salva los almacenamientos intermedios configurando N a 1, y, a la inversa, para los procesos que requieren una gestión de prioridad precisa, N aumenta.
Efecto de la invención
Como se ha descrito anteriormente, de acuerdo con la presente invención, cada uno de la prioridad-tampón para dar cada captura de paquetes en el búfer del estado vacante desde el primer paquete de la orden siempre y cuando vacío, tampón estado vacío correspondiente a la prioridad del primer paquete El paquete del buffer de alta prioridad entre los buffers se pasa al proceso, por lo que es posible obtener el paquete urgente en el proceso de manera relativamente rápida. Además, el proceso lateral en cola tiene el efecto de eliminar el proceso de clasificación en cola poniendo en cola dando prioridad al paquete.
BREVE DESCRIPCIÓN DE LOS DIBUJOS La figura 1 es un diagrama de flujo de un proceso de adquisición de paquetes que muestra una realización de la presente invención.
Ejemplo de procesamiento de adquisición de paquetes en el ejemplo de la figura 2 (parte 1).
Ejemplo de procesamiento de adquisición de paquetes en la realización de la figura 3 (parte 2).
Ejemplo de procesamiento de adquisición de paquetes en el ejemplo de la figura 4 (parte 3).
Figura 5 Diagrama conceptual del método de gestión de colas.
Fig. 6 Flujo de proceso del proceso convencional.
Reclamo
Reivindicación 1 Cuando cada proceso recibe información de paquete de otro proceso en el modo de cola, cada proceso realiza un proceso de enqueue que da prioridad a cada paquete y lo conecta al final de la matriz de cola. , cada proceso lado dequeue, la prioridad-in proporciona una memoria intermedia de la asignación, repetir el proceso para tomar el tampón secuencial del primer paquete cuando la memoria intermedia correspondiente a la prioridad del primer paquete está en el estado de reposo a la incorporación de un paquete, el primer paquete este tampón correspondiente a la prioridad pasa el paquete con una prioridad más alta de entre el búfer cuando se vacía el proceso realiza un proceso iterativo para capturar los paquetes en el estado liberado de la memoria intermedia correspondientes a la prioridad del primer paquete de nuevo método de gestión de colas según la reivindicación.
Dibujo :
Application number :1997-016414
Inventors :株式会社明電舎
Original Assignee :本坂洋一