Hernandez_Hernandez_Practica web de la sesion 12.pptx
hilos informatica
1. TRABAJO DE INVESTIGACIÓN DE HILOS
El proceso es la instancia de un programa en ejecución, es cuando las intrusiones (líneas
de código) de un programa son ejecutadas por el procesador, cada proceso contiene
recursos asignados para el mismo, el proceso puede crear un hilo o más hilos.
Un hilo o subproceso es
unidad más elemental
del proceso, que es una
secuencia de
instrucciones que pasa
por el núcleo del
procesador para ser
ejecutadas.
Un hilo contiene un id, su propio program counter, un conjunto de registros, y una
pila; que se representa a nivel del sistema operativo con una estructura llamada
TCB (thread control block). Los hilos de un mismo pueden compartir algunos
recursos o contextos.
Observación en la pestaña de actividades.
Ejemplo de Funcionamiento:
procesos % en el CPU Hilos
2. Ventajas del uso de hilos
Todo proceso tiene un hilo
principal y se le puede identificar
por Static Void Main, peroa este
proceso se le puede agregar más
hilos.
Ejemplo:
En un bar tenemos2 empleados
(cantineros) que atiendenalos
clientesCantinero1y2 ( 2
métodos).
El método principal (bar) ejecuta
los métodos cantinero 1 y 2, pero
el cantinero 2 no va comenzar a
trabajar hasta que el cantinero 1
haya concluido su trabajo, por lo
que enla vidareal no funcionaasí.
Paraque los2 empleadosfuncionanal mismotiempo
o paralelo, creamos hilos con
O con el System.Treading.
Podemosobservarque ambos
cantinerostrabajana la misma
vezsindesperdiciarel tiempo.
3. Se tarda menos tiempo en crear un hilo de una tarea existente que en crear un
nuevo proceso.
Se tarda menos tiempo en terminar un hilo que en terminar un proceso.
Se tarda menos tiempo en cambiar entre dos hilos de una misma tarea que en
cambiar entre dos procesos (porque los recursos no cambian, por ejemplo)
Es más sencillo la comunicación (paso de mensajes por ejemplo) entre hilos de
una misma tarea que entre diferentes procesos.
Cuando se cambia de un proceso a otro, tiene que intervenir el núcleo del
sistemaoperativo para que haya protección. Cuando secambia de un hilo aotro,
puesto que la asignación de recursos es la misma, no hace falta que intervenga
el sistema operativo:
Hilos a nivel de usuario y de kernel
Los hilos pueden ser implementados a nivel usuario o a nivel de kernel.
Hilos a nivel e usuario: son implementados en alguna librería. Estos hilos se
gestionan sin soporte del SO, el cual solo reconoce un hilo de ejecución.
Hilos a nivel de kernel: el SO es quien crea, planifica y gestiona los hilos. Se
reconocen tantos hilos como se hayan creado.