Respuestas
El proceso y el hilo son los esencialmente asociados. El proceso es una ejecución de un programa, mientras que el subproceso es una ejecución de un programa impulsado por el entorno de un proceso.
Otro punto importante que diferencia el proceso y el subproceso es que los procesos están aislados entre sí, mientras que los subprocesos comparten memoria o recursos entre sí.
Gráfica comparativa
Bases para la comparación Proceso Hilo
BASIC Programa en ejecución. Proceso ligero o parte de él.
Compartir la memoria Completamente aislado y no compartir memoria. Comparte la memoria entre sí.
Consumo de recursos Más Menos
Eficiencia Menos eficiente en comparación con el proceso en el contexto de la comunicación. Mejora la eficiencia en el contexto de la comunicación.
Tiempo requerido para la creación. Más
Menos
Tiempo de cambio de contexto Toma mas tiempo Consume menos tiempo.
Terminación incierta Resultados en la pérdida del proceso. Un hilo puede ser reclamado.
Tiempo requerido para la terminación Más Menos
Cada proceso tiene su propia pila y memoria de pila, instrucciones, datos y mapa de memoria.
Definición de hilo
El hilo es una ejecución de programa que utiliza recursos de proceso para realizar la tarea. Todos los hilos dentro de un solo programa están contenidos lógicamente dentro de un proceso. El núcleo asigna una pila y un bloque de control de hilos (TCB) a cada hilo. El sistema operativo solo guarda el puntero de pila y el estado de la CPU en el momento de cambiar entre los subprocesos del mismo proceso.
Los hilos se implementan de tres maneras diferentes; estos son hilos de nivel de kernel, hilos de nivel de usuario, hilos híbridos. Los hilos pueden tener tres estados funcionando, listos y bloqueados; solo incluye el estado computacional, no la asignación de recursos y el estado de comunicación, lo que reduce la sobrecarga de conmutación. Mejora la concurrencia (paralelismo), por lo tanto, la velocidad también aumenta.
Los subprocesos múltiples también vienen con deméritos, los subprocesos múltiples no crean complejidad, pero sí la interacción entre ellos.
Propiedades de un hilo:
Solo una llamada al sistema puede crear más de un hilo (proceso ligero).
Los hilos comparten datos e información.
Los subprocesos comparten las regiones de instrucción, global y de montón, pero tiene su propia pila y registros individuales.
La administración de subprocesos consume ninguna o menos llamadas al sistema, ya que la comunicación entre subprocesos se puede lograr utilizando la memoria compartida.
La propiedad de aislamiento del proceso aumenta su sobrecarga en términos de consumo de recursos.
Diferencias clave entre el proceso y el hilo
Todos los hilos de un programa están contenidos lógicamente dentro de un proceso.
Un proceso es pesado, pero un hilo es ligero.
Un programa es una unidad de ejecución aislada mientras que el hilo no está aislado y comparte memoria.
Un hilo no puede tener una existencia individual; Se adjunta a un proceso. Por otro lado, un proceso puede existir individualmente.
En el momento de la expiración de un hilo, su pila asociada podría recuperarse, ya que cada hilo tiene su propia pila. En contraste, si un proceso muere, todos los hilos mueren, incluido el proceso.
Explicación:
Espero te sea de utilidad.