El concepto y características del proceso 2.1.1

Tema Fuente: Wang sistema operativo del ordenador 2020 Fuente: Wang 2020 sistema operativo del ordenador 

asignación de dispositivos se realiza automáticamente por el núcleo, no es necesario crear un nuevo proceso

Dando lugar a un proceso crea otro proceso tiene tiempo típico:

1, un usuario inicia sesión

2, la planificación de tareas

3, para proporcionar servicios

4, la solicitud de aplicación


1. El concepto de proceso
de multiprogramación entorno que permite la ejecución simultánea de múltiples programas, pierden este caso se cerró y que tienen características intermitentes e irreproducible. Con este fin el proceso de introducir el concepto de ejecución concurrente con el fin de describir mejor programa de control y, concurrencia y compartir el sistema operativo.
Para participar simultáneamente programa en ejecución (incluidos los datos) puede funcionar de forma independiente, algo que debe ser dispuesto de una estructura de datos especial llamado un bloque de control de proceso (bloque de control de proceso, PCB). El sistema básico utiliza para describir el PCB y el estado de funcionamiento del proceso, el control y gestión de procesos. Por consiguiente, constituyen la imagen del proceso (entidad de proceso) se compone de tres bloques, y el PCB de datos. El llamado el proceso de creación, en esencia, es la creación de una imagen de proceso del PCB, y el proceso de revocación, el proceso de revocación es esencialmente el PCB. Imagen del proceso es estático, es dinámico proceso. PCB es el único signo de la presencia del proceso
definido procesos típicos:
1) el proceso es un proceso de ejecución del programa.
2) un proceso está activo cuando la ejecución del programa y que se producen secuencialmente su procesador de datos.
3) durante el funcionamiento del proceso es una función independiente en un programa de recolección de datos, que es una unidad separada de la asignación de recursos del sistema y la programación.
2. El proceso cuenta con
1) dinámica. La dinámica del proceso es las características más básicas.
2) la concurrencia. El propósito de introducir el proceso es hacer que el programa puede ser complicado por otros procesos y procedimientos implementados para mejorar la utilización de los recursos.
3) la independencia. Se refiere a una entidad de proceso es capaz de funcionar de forma independiente, acceso independiente a los recursos y la independencia de aceptar la unidad básica de la programación.
4) asincronía. Asincronía puede resultar en la no reproducibilidad de los resultados, hacer esto, debe configurar el proceso de sincronización en el sistema operativo.
5) estructural. Cada proceso para configurar un PCB puede describir. Desde un punto de vista estructural, la entidad de proceso se compone de secciones, la sección y los datos de sección de control de proceso de tres partes.
procesos estatales y de conversión 2.1.2
1) el estado de funcionamiento: proceso se está ejecutando en el procesador. En el entorno de procesador único, cada momento a lo sumo un proceso está en marcha.
2) Ready: El proceso está en un estado listo para funcionar, que es el proceso de obtención de todos los recursos necesarios además del procesador, Una vez que el procesador para funcionar. (Comportamiento pasivo Proceso)
3) bloqueó estado, también conocido como el estado de espera: el proceso está esperando algún acontecimiento para suspender el funcionamiento, tales como la espera de un recurso está disponible o esperar a la entrada / salida se ha completado. Incluso si el procesador está inactivo, el proceso no se puede ejecutar. (Proceso comportamiento proactivo)
4) Crear un estado: el proceso está siendo creado, sin embargo, no está listo para el estado. Crear un proceso normalmente requiere varios pasos: En primer lugar, se aplica un PCB en blanco, y para completar algunos datos para controlar y gestionar el proceso de la PCB; a continuación, por el sistema para el proceso de asignar los recursos necesarios para funcionar; finalmente listo para poner en el proceso estado.
5) estado final: el proceso de desaparecer del sistema, este podría ser el final de la interrupción del proceso normal o otras razones fuera de servicio. Cuando las necesidades del proceso de final de la carrera, el sistema debe establecer primero el proceso para acabar con el estado, y luego procesarse adicionalmente para liberación de recursos y el trabajo de reciclaje.
estado Preparado refiere al proceso carece de sólo el procesador, siempre y cuando los recursos de procesador de acceso de la aplicación inmediatamente, el estado de espera se refiere al proceso requiere recursos adicionales (excepto procesador) o esperar para un evento.


Ready → estado de funcionamiento: después del proceso está en el estado listo está programado para obtener recursos de procesador (procesador de asignación de ranura de tiempo), entonces convertida por el proceso está listo para funcionar estado.
Estado de funcionamiento → Listo: El proceso se está ejecutando en el intervalo de tiempo se agota, hemos tenido que renunciar al procesador, que los procesos se ejecutan por el estado al estado preparado. Además, la privación del sistema operativo, cuando un proceso de prioridad más alta está listo, el planificador se ejecutará el proceso de ser convertido a un estado listo, por lo que la ejecución de procesos de mayor prioridad.
Estado dirigido → estado bloqueado: cuando un proceso solicita el uso y la asignación de recursos o en espera de algún acontecimiento que se produzca cuando se convierte a partir de un estado de marcha a un estado de bloqueo. solicitudes de proceso en la forma de las llamadas del sistema del sistema operativo para proporcionar los servicios, lo cual es una forma especial de los procesos del núcleo del sistema operativo mediante la ejecución de programas invocados modo de usuario.
→ estado de bloqueo del estado listo: Cuando un proceso de espera de la llegada de un evento, tal como cuando la operación de E / S o de poner fin a la interrupción es más, el controlador de interrupción debe indicar el proceso adecuado mediante el bloqueo de estado a estado listo.
Un proceso que se ejecuta a partir de un estado a otro es un comportamiento bloqueo activo, y los cambios de estado de bloqueo al estado preparado es una actividad pasiva, necesita la ayuda de otros procesos pertinentes.
2.1.3 Control de Procesos
La función principal es la implementación de un sistema de control de proceso para todos los procesos de gestión eficaz, se ha creado un nuevo proceso, el proceso se ha revocado, el estado de progreso hacia la conversión. En el sistema operativo, el segmento de programa de control de proceso general denominadas primitivas, características primitivas que no debe ser interrumpido durante la ejecución, es una unidad básica indivisible.
1. Crear un proceso
para permitir un proceso crea otro proceso. En este punto, conocido como el creador del proceso padre, llamado el proceso hijo se crea en el proceso. El niño puede heredar los recursos de propiedad del proceso padre. Cuando se revoca el proceso hijo, que debe ser devuelto desde el proceso principal, donde los recursos disponibles para los padres. Además, en el momento de la revocación del proceso padre, también hay que retirar la totalidad de sus procesos hijos.
El sistema operativo crea un nuevo proceso es el siguiente (creada primitivo):
1) el proceso de asignar un número de identificación único para el nuevo proceso, y aplicar un PCB en blanco. Si la aplicación no puede crear un PCB falla.
2) asignar los recursos para el proceso, para el nuevo proceso de programa y los datos, y la pila de usuario asignar el espacio de memoria necesario (que se refleja en la PCB). Nota: Si esta falta de recursos, no la creación de falla, pero fuera del "estado de espera", o "bloqueado".
3) la inicialización PCB, incluyendo información de inicialización bandera, información de estado y la información de control del procesador de inicialización del procesador de inicialización, y el proceso de establecimiento de prioridades.
4) Si la cola listo proceso capaz de recibir el nuevo proceso, un nuevo proceso se inserta en la cola de listo, en espera de ser programado para ejecutarse.
2. El proceso de terminación
evento causó la terminación del proceso son: final normal, el proceso indica que la tarea se ha completado y listo para salir corriendo. Finaliza de forma anómala, es señal de que el proceso está en marcha, si ocurre algo inesperado, el programa no puede seguir circulando, como área de almacenamiento fuera de límites, protección de falla, instrucción ilegal, instrucciones privilegiadas mal, el fracaso de E / S. La intervención externa se refiere al proceso a petición del mundo exterior y terminar la operación, tales como el sistema operativo o la intervención del operador, solicitud de los padres y terminar el proceso padre.
operación de terminación del sistema sigue el proceso (deshacer primitivo):
1) el proceso se termina en base al identificador, para recuperar el PCB, que lee el estado del proceso.
2) si se van a terminar el proceso de ejecución, de interrumpir la ejecución del proceso, los recursos de procesador asignados a otros procesos.
3) Si el proceso, así como el niño, que deben terminar todos los procesos hijos.
Todos los recursos 4) de propiedad del proceso, o devueltos al proceso padre o devueltos al sistema operativo.
5) retirado de la PCB donde la cola (lista) en.
3. El proceso de bloqueo y para despertarse,
se ejecuta el proceso, ya que no se ha producido algún acontecimiento esperado, tales como la petición de recursos del sistema falla, a la espera de que se complete alguna operación, los nuevos datos aún no se alcanza o no un nuevo trabajo por hacer, etc., de forma automática por el sistema realizar primitivas de bloqueo (bloque), dirigido por el estado para hacer su propia bloqueado. , procesos bloqueados visible es el proceso en sí es un comportamiento activo, y por lo tanto sólo en el proceso de ejecución del estado (alcanzar la CPU), con el fin de convertirlo en un estado de bloqueo. primitivas bloquear la ejecución son:
1) buscar el proceso a ser bloqueado número de identificación correspondiente a la PCB.
2) Si el proceso está en marcha, la protección de su sitio, su estado de bloqueo al estado, dejar de correr.
3) La PCB se inserta en la cola para el evento correspondiente.
Cuando el esperado curso de los acontecimientos aparece bloqueada, llamada de atención sobre el proceso por el primitivo (despertar), el proceso va a esperar a que el evento de reactivación. primitivas de ejecución de despertador son:
1) para encontrar los procesos de PCB correspondientes en la cola de espera para el evento.
2) se elimina de la cola de espera, y establecer su estado al estado preparado.
3) la PCB se inserta en la cola de preparados, espera el planificador para ser programadas.
Bloque primitivas y primitivas Despertar son un par de primitivas de efectos opuestos debe ser utilizado en pares. Bloquear primitiva es invocado por el proceso de auto-realización se bloquea y despertador primitiva es una fase de cooperación con el proceso de atención u otra aplicación programación de procesos relacionados.
4. El proceso de cambiar
el proceso de conmutación de los medios de procesador ejecuta un proceso a otro proceso que se ejecuta este proceso, el entorno operativo del proceso produce un cambio sustancial. El proceso de cambiar el proceso como sigue:
1) Guardar el gestor de contextos, incluyendo el contador de programa y otros registros.
2) información Actualizando PCB.
3) El proceso de la PCB en la cola apropiada, tal como Ready, obstrucción de una cola de eventos.
4) Selecciona otro proceso de ejecución, y actualizar su PCB.
5) la gestión de memoria estructura de datos actualizada.
6) contexto procesador de recuperación.
El proceso de conmutación para conmutar el modo de procesador es diferente, el cambio de modo, el mismo proceso todavía se puede ejecutar en la lógica del procesador. Si una alarma de proceso o entrada de excepción en modo kernel, el modo de usuario después de la aplicación volvieron al programa interrumpido se acaba de correr, el sistema operativo sólo tiene que introducir los núcleos de CPU del proceso de recuperación almacenada en el lugar, sin necesidad de cambiar el actual proceso de información ambiental . Sin embargo, si el proceso de conmutación, se cambia el proceso de ejecución actual, el proceso actual de la información ambiental también tiene que cambiar.

Diferencia entre la conmutación y la programación: la programación se refiere al comportamiento que determinan la asignación de recursos para el proceso, es un comportamiento de toma de decisiones; conmutación se refiere al acto realmente asignado, es para realizar el comportamiento. En general la programación previa, de los recursos, y luego tener el proceso de conmutación


2.1.4 Organización proceso de
proceso es la unidad básica de la asignación de recursos y operar de forma independiente del sistema operativo. Ella consiste generalmente en los siguientes tres componentes:
1. El bloque de control de proceso
cuando se crea el proceso, el sistema operativo crea una nueva configuración PCB después de que está en la memoria permanente, en un momento dado se puede acceder, eliminado al final del proceso. PCB es parte de la entidad de proceso, es el único signo de la presencia del proceso.


PCB incluye descripciones de proceso, de control de proceso y gestión de la información, asignación de recursos, información de inventario y relacionados con el procesador. La parte principal de cada uno de la siguiente manera:
1) Proceso Descripción
diversos procesos de la bandera, y cada proceso tiene un identificador único: identificador de proceso.
ID de usuario: El proceso pertenece al usuario, el usuario identificador es principalmente compartiendo y servicios de protección.
2) El control del proceso y la información de gestión de
la situación actual del proceso: descripción de la información de estado del proceso, como la base para esquema de asignación del procesador.
Proceso de Prioridad: Describir el proceso de procesador de prioridad prioridad, un procesador de prioridad en el acceso proceso de alta prioridad.
3) una lista de asignación de recursos, el estado del espacio de direcciones o espacio de direcciones virtuales para la descripción, y la lista de archivos abiertos y de entrada usado / información del dispositivo de salida.
4) la información del procesador relacionada, refiriéndose principalmente a cada máquina de procesamiento de valor de registro, cuando el proceso está apagado, la información de estado del procesador debe ser almacenado en la PCB correspondiente en orden, para continuar desde un punto de interrupción en el que el proceso de re-ejecutado.
En un sistema, por lo general hay muchos procesos, algunos en un estado preparado, se bloquea alguna razón, y el bloqueo de los mismos ministerios. Con el fin de facilitar los procesos de programación y de gestión, los procesos de las necesidades de PCB a ser organizados por un método adecuado. Actualmente, hay enlaces a dos formas comunes de indexación y organización. PCB estado Enlace misma manera como un enlace colas, los diferentes estados que corresponden a diferentes colas, el estado bloqueado puede ser un proceso PCB, dependiendo de la razón para el bloqueo de los mismos, dispuestos en una pluralidad de bloqueo de cola. El proceso de indexación se organiza en la misma tabla de estado, un índice, una tabla de índices puntos de entrada a los PCB respectivos estados diferentes, que corresponden a diferentes tablas de índice, la tabla de índice como tabla de índice listo y el bloqueo y similares.
2. Bloque
Bloque está programado para estar código de programa planificador proceso ejecutado por la CPU. Los programas pueden ser compartidos por múltiples procesos, es decir, varios procesos se pueden ejecutar el mismo programa.
3. segmento de datos
segmento de datos de un proceso, el proceso puede ser datos en bruto correspondientes al programa de procesamiento, puede ser resultados intermedios o finales generados durante la ejecución del programa.
2.1.5 Proceso de comunicación
Proceso de comunicación es el intercambio de información entre los procesos. operación de comunicación PV es más baja, el esquema de comunicación avanzada se refiere a una transferencia más eficiente de grandes cantidades de comunicación de datos. métodos avanzados de comunicación son principalmente de tres clases.
1. La memoria compartida
de espacios compartidos accesibles directamente a un proceso de comunicación entre la operación de lectura se consigue escribiendo este pedazo de espacio / intercambio compartido de información entre los procesos. Cuando compartido espacio de escritura / operación de lectura, la herramienta mutex sincronización requerida (tal como la operación P, operación V), el espacio de escritura compartida / leer control. La memoria compartida se divide en dos tipos: enfoque de bajo nivel compartida se basa en una estructura de datos compartida; forma avanzada se basa en un área de almacenamiento compartido. El sistema operativo sólo es responsable de proporcionar espacio de almacenamiento compartido para la sincronización de procesos de comunicación y herramientas de exclusión mutua y el intercambio de datos por los propios arreglos de los usuarios de admisión / instrucción se ha completado.
Los usuarios son espacio de proceso generalmente independientes, por lo general no puede acceder al espacio durante los procesos que se ejecutan otros procesos, para obtener dos procesos de usuario a compartir el espacio debe lograrse a través de una llamada especial del sistema, y los hilos dentro de un proceso es un proceso natural de compartir el espacio.
2. El paso de mensajes
en el sistema de mensajería, el intercambio de datos entre procesos es unidades de mensaje reformateado. Si no hay espacios compartidos directamente accesibles a la comunicación entre procesos, el proceso deberá implementarse utilizando el método de comunicación de mensajes del sistema operativo. Enviar mensajes y recibir mensajes proporcionados por los procesos del sistema de dos primitivas para el intercambio de datos.
1) El modo de comunicación directa: proceso de envío para enviar el mensaje al proceso de recepción y colgarla en un búfer de mensajes del proceso de recepción en la cola, el proceso de recepción para la obtención de la cola de memoria intermedia de mensajes.
2) Modo de comunicación indirecta: proceso de envío para enviar un mensaje a la entidad intermedia, el proceso de recepción para obtener información de la entidad intermedia. Tales entidades intermedias generalmente referidos como correo, dicha comunicación también se llama comunicación electrónico. El método de comunicación es ampliamente utilizado en una red informática, un sistema de comunicación se denomina un sistema de correo electrónico correspondiente.
3. La comunicación tubería
La tubería de comunicación es una mensajería especial manera. Los llamados medios "pipeline" para la conexión de un proceso de lectura y un proceso de escritura con el fin de lograr una comunicación de archivos compartidos entre ellos, también conocido como archivo de tubería. Aportaciones a proceso de transmisión de la tubería (archivos compartidos) (es decir, proceso de escritura), en una corriente de caracteres en una gran cantidad de datos de tuberías (escritura); proceso de recepción recibe la salida del tubo (es decir, el proceso de lectura), recibido de la tubería (lectura) de datos. Con el fin de coordinar la comunicación entre las dos partes, la tubería debe proporcionar un mecanismo para la coordinación de las tres áreas siguientes: exclusión mutua, la sincronización y determinar la existencia del otro.
Leer datos de la tubería es una operación de una sola vez, una vez que se leen los datos, se descarta de la tubería, con el fin de liberar espacio para escribir más datos. Pipe sólo puede tener comunicación dúplex media, es decir, la transmisión en una sola dirección a la vez. Para lograr el padre y la comunicación interactiva niño, es necesario definir dos tubos.

Los procesos sean tubería de acceso mutuamente excluyentes, proceso 1 Proceso 2 fue escrito se puede leer, procesar escrita 1 Proceso 2 se puede leer
2.1.6-hilo y multi-hilo conceptos modelo
hilos Conceptos básicos
en el proceso es objetivo con el fin de hacer un mejor uso de la programación de varios canales al mismo tiempo, con el fin de mejorar la utilización de recursos y el rendimiento del sistema, aumento de la concurrencia de Chengdu, se introduce el hilo, que es reducir el programa de tiempo y la memoria, cuando se ejecuta simultáneamente pagado para mejorar el funcionamiento en paralelo del sistema el rendimiento.
El hilo apreciado más directa es "procesos ligeros", que es la unidad mínima de una CPU unidad de ejecución básica, el flujo de la ejecución del programa es, por el ID del hilo, el contador de programa, un conjunto de registros y componentes de la pila. Un hilo es un proceso físico, el sistema es la unidad básica de programación independiente y la asignación de recursos del sistema no es dueño de su propio hilo, con sólo un poco en la operación de los recursos esenciales, pero puede ser compartida con otros procesos pertenecen al mismo proceso de hilo tenemos todos los recursos. Un hilo puede ser creado y destruido otro hilo puede ejecutar simultáneamente a través de múltiples hilos en el mismo proceso. Debido a la interacción entre los hilos, lo que resulta en el hilo que muestra una discontinuidad en la operación. También hay un hilo en su lugar, el bloqueo y ejecutar tres estados básicos.
2. Comparación de hilos y procesos de
1) la programación. En el sistema operativo tradicional, la unidad básica tiene los recursos y la programación de la independencia es un proceso. En la introducción del hilo del sistema operativo, el hilo es el proceso de programación independiente unidad básica es la unidad básica de los recursos propios. En el mismo proceso, el cambio de hilo no hace que el proceso de conmutación. Cuando un interruptor de hilo en diferentes procesos, tales como la conmutación de la rosca a la rosca dentro de un proceso en otro proceso, puede hacer que el proceso de conmutación.
2) tener los recursos. Si se proporciona el sistema operativo tradicional o subproceso del sistema operativo, el proceso es la unidad básica tiene los recursos, y el hilo no tiene los recursos del sistema (recursos esenciales demasiado poco), pero las discusiones se puede acceder a los recursos del sistema de su proceso de adhesión.
3) la concurrencia. No sólo entre los procesos se pueden ejecutar al mismo tiempo, y entre varios subprocesos pueden ejecutar al mismo tiempo, de manera que el sistema operativo tiene una mejor concurrencia, mejorar el rendimiento del sistema.
4) encima de la cabeza.
5) espacio de direcciones y otros recursos. Independientes entre sí entre el espacio de direcciones del proceso, entre los hilos de un mismo proceso de los procesos de intercambio de recursos, hilos dentro de un proceso no es visible para otros procesos.
6) de comunicaciones, la comunicación entre procesos (IPC) necesita sincronización de procesos y medios auxiliares de exclusión mutua para garantizar la coherencia de datos, pero entre los hilos se pueden leer directamente / segmento de datos de proceso de escritura para comunicarse.
3. Propiedades de rosca
en un sistema operativo multi-roscado, se ejecuta el hilo como una unidad básica independiente (o programación). Las principales propiedades de la rosca de la siguiente manera:
1) es una entidad hilo de peso ligero, que no posee los recursos del sistema, pero cada hilo debe tener un identificador único y un bloque de control del hilo, los registros de los bloques de control de hilo y la pila de la grabación de un hilo de ejecución, etc. estado de sitio.
2) diferentes hilos pueden realizar el mismo procedimiento, es decir, cuando el mismo servicio se invoca diferentes usuarios, el sistema operativo crea un subproceso diferente para ellos.
3) los hilos individuales en el mismo proceso comparten los recursos de propiedad del proceso.
4) hilos de programación son unidades de procesador independientes, una pluralidad de hilos puede ejecutar concurrentemente. En el sistema de ordenador de un solo CPU, cada hilo puede ocupar CPU alternativamente; sistema informático multi-CPU, cada hilo puede ocupar simultáneamente CPU diferente, si la CPU al mismo tiempo para los hilos individuales dentro de un proceso se puede acortar el proceso de servicio el tiempo de procesamiento.
5) un hilo se crea después del comienzo de su ciclo de vida, hasta la terminación de la rosca en la experiencia del ciclo de vida del estado de bloqueo, los diversos estados listos estatales y el estado en ejecución y otros cambios.
4. hilos de manera
de lograr el hilo se puede dividir en dos categorías: de hilo a nivel de usuario (ULT) y los hilos de nivel de núcleo (KLT). También conocido como hilos de nivel de núcleo soportados por los hilos del núcleo.
En los hilos a nivel de usuario, el hilo de la gestión de todos por la aplicación relacionada con el trabajo se haya completado, la existencia de la conciencia del núcleo de la rosca. Las aplicaciones pueden ser diseñadas mediante el uso de la biblioteca de hebras programas multihilo. Normalmente, las aplicaciones de un solo subproceso desde el principio, comenzaron a funcionar en este hilo, su funcionamiento en cualquier momento, se puede crear un nuevo hilo que se ejecuta en el mismo proceso llamando a la biblioteca de subprocesos derivados rutinas.
En las discusiones a nivel del núcleo, la gestión de hilo no es todo el trabajo realizado por el código de gestión de hilo del núcleo está completa, la aplicación es sólo un hilo de la interfaz de programación a nivel de kernel. El núcleo mantiene información de contexto para el proceso y cada uno de su rosca interna, la programación de subprocesos se ha completado sobre la base del marco en el núcleo.
En algunos sistemas, el uso de una combinación de múltiples hilos. creación de rosca hecho enteramente en el espacio de usuario, la programación de subprocesos y sincronización se llevan a cabo las aplicaciones. Una pluralidad de hebras de usuario de la aplicación se asignan al número (menor o igual al número de hilos a nivel de usuario) hilos de nivel de núcleo.

hilos Kernel de nivel se le asigna una unidad de programación del procesador básico
5. El modelo de multiproceso
Algunos sistemas soportan tanto los hilos del núcleo usuario e hilo, produciendo de este modo un diferentes modelos multi-threading, es decir, la conexión a lograr hilos a nivel de usuario y los hilos de nivel de núcleo.
1) Muchos a modelo. Mapas de varios subprocesos para un hilos a nivel del núcleo, la gestión de hilo hecho en el espacio de usuario. En este modo, los hilos a nivel de usuario no son visibles para el sistema operativo.
Pros: la gestión de hilo se realiza en el espacio de usuario, y por lo tanto más eficiente.
Contras: Cuando un hilo se bloquea en el uso de los servicios del núcleo, a continuación, todo el proceso será bloqueada; múltiples hilos pueden ejecutarse en paralelo en múltiples procesadores.
2) Modelo de uno. Cada hilo de usuario se asigna a una hilos de nivel de núcleo.
Pros: Cuando se bloquea un hilo, lo que permite otro hilo para continuar, tan fuerte concurrencia.
Contras: Cada hilo a nivel de usuario para crear una necesidad de crear un roscas correspondientes de nivel de núcleo, por lo que el coste de la creación de un hilo es relativamente grande, que afectará el rendimiento de la aplicación.
3) muchos a muchos modelos. Los hilos a nivel de usuario n se asignan a los-th m hilos de nivel de núcleo, se requiere menos de m igual a n.
Características: Tome en el modelo de muchos-a-uno y modelan un compromiso para superar el modelo de muchos de concurrencia no es alto deficiencias, sino también para superar un proceso de un solo usuario modelos ocupan las discusiones a nivel del núcleo demasiado, desventaja demasiado costoso. Pero también tiene un modelo de muchos-a-uno y modelar sus propias ventajas.

 

Pase el campo contiene el CPU puede ejecutar el programa de forma independiente, los hilos comparten el espacio de direcciones del proceso del mismo proceso

 

 

Supongo que te gusta

Origin blog.csdn.net/PriestessofBirth/article/details/104799990
Recomendado
Clasificación