Visión general del hilo del nivel del usuario y del hilo del nivel del núcleo

  

En el sistema operativo de varios subprocesos, cada sistema se implementa de manera diferente. En algunos sistemas, se implementan subprocesos de nivel de usuario y algunos sistemas implementan subprocesos de nivel de kernel.

1. Subprocesos de nivel de kernel:

(1) Creación, revocación y cambio de subprocesos, etc. Ambos requieren una implementación directa del kernel, es decir, el kernel conoce cada subproceso que es una entidad programable.
(2) Estos hilos pueden competir por los recursos en todo el sistema.
(3) Se establece un bloque de control de hilo (TCB) en el espacio del kernel para cada hilo de soporte de kernel, y el kernel detecta la existencia del hilo y los controles de acuerdo con el bloque de control. Hasta cierto punto, es similar a un proceso, excepto que la sobrecarga de creación y programación es más pequeña que el proceso. Algunas estadísticas son 1:10

2. Subprocesos de nivel de usuario:

(1) Los subprocesos de nivel de usuario solo existen en el espacio de usuario. — — > Comparando el núcleo (3) (2) el núcleo no ve el hilo del usuario. — — > Diferencias importantes (3) La asignación de recursos del kernel aún se asigna de acuerdo con el proceso; cada hilo de usuario solo puede competir por los recursos dentro del proceso.

Los hilos de usuario se ejecutan en un sistema intermedio. En la actualidad, hay dos formas de implementar el sistema intermedio, a saber, el sistema de tiempo de ejecución (Runtime System) y el subproceso de control del núcleo. "Sistema de tiempo de ejecución" es una colección de funciones que se utilizan para administrar y controlar subprocesos. Funciones que incluyen crear, deshacer, sincronización y comunicación de subprocesos y funciones programadas. Estas funciones residen en el espacio del usuario como una interfaz entre el hilo del usuario y el kernel. Los subprocesos de los usuarios no pueden usar las llamadas del sistema. En cambio, cuando un subproceso necesita recursos del sistema, pasa la solicitud al tiempo de ejecución, que obtiene los recursos del sistema a través de la llamada del sistema correspondiente. Hilo de control del kernel: El sistema distribuye varios procesos ligeros (LWP) al proceso. El LWP puede obtener los servicios proporcionados por el kernel a través de llamadas al sistema, y ​​los hilos del usuario en el proceso pueden asociarse con el LWP mediante multiplexación para obtener los servicios del kernel.

Las ventajas de los subprocesos del kernel: (1) (2) Cuando hay varios procesadores, los subprocesos de un proceso pueden ejecutarse al mismo tiempo: (1) programación por el kernel

usuario Ventajas del proceso: (1) La programación del subproceso no requiere la participación directa del núcleo, y el control es simple. Desventajas: (1) La programación de recursos se realiza de acuerdo con el proceso. Bajo varios procesadores, los hilos en el mismo proceso solo se pueden dividir en el mismo procesador. Multiplexación del tiempo.

Copyright © Conocimiento de Windows All Rights Reserved