Razones del alto costo de la conmutación de procesos

1. Escena de protección del proceso : El sistema debe retener suficiente información sobre el proceso que se cambiará, de modo que cuando el proceso se vuelva a cambiar más tarde, la ejecución del proceso se pueda restaurar sin problemas. Una vez que el sistema retiene el sitio de la CPU, el programador selecciona un nuevo proceso en el estado listo y ensambla el contexto del proceso, de modo que el control de la CPU está en manos del proceso seleccionado.
(1) Operaciones específicas:
n guardar el contexto del procesador, incluido el contador del programa y otros registros
n actualizar la PCB del proceso en ejecución con el nuevo estado y otra información relacionada
n mover el proceso original al bloque apropiado listo para cola
n elegir otro proceso A que se ejecutará
n actualiza la PCB del proceso seleccionado
n recarga el contexto de la CPU del proceso seleccionado

2. Cambio de hilo : un procesador solo puede ejecutar instrucciones en un hilo. Para restaurar la posición de ejecución correcta después del cambio de hilo, cada hilo tiene un contador de programa independiente para registrar el programa durante el cambio de contexto de hilo. Datos como contador, registro de CPU estado (registrado con el valor de la variable pendiente) y así sucesivamente.

3. Comparación de conmutación de procesos y subprocesos :
(1) Método de conmutación de procesos: conmutación del espacio de direcciones virtuales, conmutación de la pila del kernel y contexto del hardware
(2) Método de conmutación de subprocesos: conmutación de la pila del kernel y contexto del hardware
(3) conmutación del espacio de direcciones virtuales: conmutación de la página tabla, para utilizar el nuevo espacio de direcciones, la memoria virtual y la memoria física almacenarán datos en una correspondencia uno a uno. La tabla de páginas (memoria virtual) puede convertir la dirección virtual en la dirección de memoria física, de modo que la El espacio de direcciones se puede encontrar en la tabla de páginas La ubicación específica de ciertos datos en la memoria física.
(4) La sobrecarga del cambio de tabla de página: la caché de TLB se usa generalmente para almacenar en caché las asignaciones de direcciones de uso común para acelerar la búsqueda de la tabla de página. Una vez que se cambia el proceso, la página de la tabla de página debe cambiarse y la TLB dejará de ser válida después la tabla de páginas está cambiada. La falla conduce a una disminución en la tasa de aciertos de búsqueda, es decir, la conversión de direcciones virtuales a direcciones físicas se ralentizará y la ejecución de otros procesos en el programa se ralentizará, lo que muestra que el programa correrá lentamente

La razón por la que la sobrecarga del proceso es mayor que el hilo.

Método de cambio de proceso

Método de cambio de proceso

Conmutación de subprocesos y conmutación de procesos y gastos generales

Mecanismo de programación del proceso de cambio de contexto de subproceso

Supongo que te gusta

Origin blog.csdn.net/m0_49036370/article/details/114240253
Recomendado
Clasificación