lunes, 25 de noviembre de 2013

U2: 2.3 Procesos Ligeros: Hilos y hebras


Los procesos ligeros son programas en ejecución son básicamente procesos pero a diferencia de éstos últimos que solo tienen un hilo de ejecución los primeros tienen el hilo principal más hilos secundarios o hijos, en éste caso todos los procesos hijos comparten la información del hilo principal pero además puede cada hilo tener su información privada.


Dentro de la información propia tenemos:

*Contador de programa
*Pila
*Registros.
*Estado del proceso ligero.
*Dentro de la información compartida tenemos:
*Variables globales.
*Archivos abiertos
*Señales
*Semáforos.
*Contabilidad.



Los hilos o procesos ligeros son una parte de código o miniprograma que puede ser ejecutada independientemente, de forma que una aplicación o un applet puede tener varios hilos ejecutándose simultáneamente y efectuando distintas tareas; estos hilos se encuentran dentro de un programa y son parte de él. 


Los hilos, a veces también llamados contextos de ejecución, pueden ser utilizados para la implementacion de algoritmos paralelos o procesos concurrentes, sin ser necesario disponer de equipos con estructura de multiprocesador. En el caso de un solo procesador, los procesos ligeros incorporan mecanismos para compartirlo, estableciéndose prioridades 
entre ellos y también facilidades de sincronización, cuando es necesario. 

Multiproceso:

Se refiere a dos programas que se ejecutan "aparentemente" a la vez, bajo el control del sistema operativo.


Multihilo: 

Se refiere a que dos o mas tareas se ejecutan "aparentemente" a la vez, dentro de un mismo programa.


No hay comentarios:

Publicar un comentario