"CUALES DIFERENCIAS EXISTEN EN UN PROCESO Y UN HILO"
Un ‘proceso’ es una entidad de ejecución independiente, donde, el sistema operativo, en el momento en que el proceso se lanza, proporciona un espacio de direcciones de memoria en los que el proceso puede ejecutarse. De esta manera, si el proceso intenta por algún motivo intencionalmente o no acceder a alguna dirección de memoria de otro proceso, el programa termina anormalmente con un ‘Segmentation fault’. En el momento en el que el proceso termina, el sistema operativo libera toda la memoria y todos los recursos (‘handles de archivos’, ‘handles de registros’, etc.) asignados al proceso. No hay forma directa de que un proceso pueda comunicarse con otro, así que si eso es lo que se requiere, se tiene que usar algún mecanismo de comunicación entre procesos (IPC).



Los hilos son entidades de ejecución independiente que viven dentro de los procesos y, por tanto, viven dentro del mismo espacio de direcciones de memoria que otros hilos, lo que permite acceder a cualquier dato dentro del mismo proceso. También la comunicación entre hilos es bastante sencilla pues basta con invocar a una función que se va a ejecutar en otro hilo. Aunque si bien esto de la comunicación parece ser una ventaja, en realidad es un arma de doble filo porque gracias a esas libertades, podemos caer, si no tenemos el suficiente cuidado, en problemas como condiciones de carrera o deadlocks.




https://es.quora.com/search?q=imagen+d+hilo+y+proceso

Comentarios