SlideShare une entreprise Scribd logo
1  sur  17
USO DE HILOS
Los hilos son mini procesos. cada hilo se
ejecuta en forma estrictamente secuencial
y tiene su propio contador de programa
una pila para llevar un registro de su
posición.
Los hilos pueden crear hilos hijos, mientras un
hilo esta bloqueado se puede ejecutar otra fila
del mismo proceso en los distintos hilos de un
proceso comparten un espacio de direcciones,
y los hilos pueden tener distintos estados (en
ejecución, bloqueado, listo y terminación).
Sincronización de hilos
Todos los hilos comparten el mismo espacio de
direcciones y otros recursos como pueden ser archivos
abiertos. Cualquier modificación de un recurso desde
un hilo afecta al entorno del resto de los hilos del
mismo proceso. Por lo tanto, es necesario sincronizar
la actividad de los distintos hilos para que no
interfieran unos con otros o corrompan estructuras de
datos.
Ventajas de los hilos
• Las ventajas de los hilos se dan cuando hablamos de
Multihilos, que es cuando un proceso tiene múltiples
hilos de ejecución los cuales realizan actividades
distintas, que pueden o no ser cooperativas entre sí.
• Se tarda mucho menos tiempo en crear un hilo
nuevo en un proceso existente que en crear un
proceso. Algunas investigaciones llevan al resultado
que esto es así en un factor de 10.
• Se tarda mucho menos en terminar un hilo que un
proceso, ya que cuando se elimina un proceso se
debe eliminar el BCP del mismo, mientras que un
hilo se elimina su contexto y pila.
• Se tarda mucho menos tiempo en cambiar entre dos
hilos de un mismo proceso.
• Los hilos aumentan la eficiencia de la comunicación
entre programas en ejecución.
Usos de los hilos
Los hilos se inventaron para permitir la
combinación del paralelismo con la ejecución
secuencial y el bloqueo de las llamadas al
sistema.
Modelo del servidor/trabajador
• El servidor lee las solicitudes de trabajo del
buzón del sistema.
• Después de examinar la solicitud elige a un hilo
trabajador inactivo (es decir, bloqueado) y le
envía la solicitud, lo cual se puede realizar al
escribir un apuntador al mensaje en una palabra
especial asociada a cada hilo.
• El servidor despierta entonces al trabajador
dormido.
• El hilo trabajador verifica si puede satisfacer la
solicitud por medio del bloque caché
compartido, al que tienen acceso todos los
hilos.
• Si no envía un mensaje al disco para obtener
el bloque necesario y se duerme esperando
el fin de la operación.
Se llama:
 Al planificador y se inicializa otro hilo, que tal
vez sea el servidor, para pedir más trabajo; o.
 A otro trabajador listo para realizar un trabajo.
Modelo del servidor/trabajador
Modelo de equipo
• Aquí todos los hilos son iguales y cada uno obtiene y
procesa sus propias solicitudes.
• No hay servidor.
• A veces llega trabajo que un hilo no puede manejar, en
particular si cada hilo se especializa en manejar cierto
tipo de trabajo.
• En este caso, se puede utilizar una cola de
trabajo, la cual contiene todos los trabajos
pendientes.
• Con este tipo de organización, un hilo debe
verificar primero la cola de trabajo antes de
buscar en el buzón del sistema.
Modelo de equipo
Modelo de entubamiento
• El primer hilo genera ciertos datos y los transfiere al
siguiente para su procesamiento.
• Los datos pasan de hilo en hilo y en cada etapa se
lleva a cabo cierto procesamiento.
• Esta puede ser una buena opción en cierto
problemas.
• Un programa diseñado adecuadamente y que utilice
hilos debe funcionar bien:
• En una única cpu con hilos compartidos.
• En un verdadero multiprocesador.
Modelo de entubamiento

Contenu connexe

Tendances

Requerimientos de un Sistema (usando criterios del swebok)
Requerimientos de un Sistema (usando criterios del swebok)Requerimientos de un Sistema (usando criterios del swebok)
Requerimientos de un Sistema (usando criterios del swebok)
Miguel Miranda
 
Sesion 5 1 diagrama de secuencia
Sesion 5 1 diagrama de secuenciaSesion 5 1 diagrama de secuencia
Sesion 5 1 diagrama de secuencia
Julio Pari
 

Tendances (20)

Metodologia Incremental
Metodologia IncrementalMetodologia Incremental
Metodologia Incremental
 
Estructura de Datos - Unidad 5 metodos de ordenamiento
Estructura de Datos - Unidad 5 metodos de ordenamientoEstructura de Datos - Unidad 5 metodos de ordenamiento
Estructura de Datos - Unidad 5 metodos de ordenamiento
 
Tipos de pruebas de software
Tipos de pruebas de softwareTipos de pruebas de software
Tipos de pruebas de software
 
Sistemas Operativos I- Algoritmo de QUANTUM
Sistemas Operativos I- Algoritmo de QUANTUMSistemas Operativos I- Algoritmo de QUANTUM
Sistemas Operativos I- Algoritmo de QUANTUM
 
Portafolio unidad 2 [Lenguajes y autómatas]- Expresiones y lenguajes regulares
Portafolio unidad 2 [Lenguajes y autómatas]- Expresiones y lenguajes regularesPortafolio unidad 2 [Lenguajes y autómatas]- Expresiones y lenguajes regulares
Portafolio unidad 2 [Lenguajes y autómatas]- Expresiones y lenguajes regulares
 
Metodologia web
Metodologia webMetodologia web
Metodologia web
 
Unidad 3 Modelo De Negocio
Unidad 3 Modelo De NegocioUnidad 3 Modelo De Negocio
Unidad 3 Modelo De Negocio
 
Modelo Cascada!!
Modelo Cascada!!Modelo Cascada!!
Modelo Cascada!!
 
Metodo de busqueda
Metodo de busquedaMetodo de busqueda
Metodo de busqueda
 
Métodos estructurados
Métodos estructuradosMétodos estructurados
Métodos estructurados
 
Modelo de 5 estados para sistemas operativos
Modelo de 5 estados para sistemas operativosModelo de 5 estados para sistemas operativos
Modelo de 5 estados para sistemas operativos
 
Ingeniería de software modelo incremental
Ingeniería de software  modelo incrementalIngeniería de software  modelo incremental
Ingeniería de software modelo incremental
 
Colas en programacion
Colas en programacionColas en programacion
Colas en programacion
 
Modelo espiral
Modelo espiralModelo espiral
Modelo espiral
 
Requerimientos de un Sistema (usando criterios del swebok)
Requerimientos de un Sistema (usando criterios del swebok)Requerimientos de un Sistema (usando criterios del swebok)
Requerimientos de un Sistema (usando criterios del swebok)
 
Modelos evolutivos
Modelos evolutivosModelos evolutivos
Modelos evolutivos
 
Modelos de desarrollo de software
Modelos de desarrollo de softwareModelos de desarrollo de software
Modelos de desarrollo de software
 
Sesion 5 1 diagrama de secuencia
Sesion 5 1 diagrama de secuenciaSesion 5 1 diagrama de secuencia
Sesion 5 1 diagrama de secuencia
 
Cuadro comparativo algoritmos de ordenamiento
Cuadro comparativo algoritmos de ordenamientoCuadro comparativo algoritmos de ordenamiento
Cuadro comparativo algoritmos de ordenamiento
 
2.3 procesos ligeros
2.3 procesos ligeros2.3 procesos ligeros
2.3 procesos ligeros
 

En vedette

Mapaconceptualcontenidomodulobiodiversidadventajasdelabiodiversidad 130222170...
Mapaconceptualcontenidomodulobiodiversidadventajasdelabiodiversidad 130222170...Mapaconceptualcontenidomodulobiodiversidadventajasdelabiodiversidad 130222170...
Mapaconceptualcontenidomodulobiodiversidadventajasdelabiodiversidad 130222170...
Mariluz Salinas
 
Commerce équitable et MDD
Commerce équitable et MDDCommerce équitable et MDD
Commerce équitable et MDD
sarah38
 
Que es una transacciójghjn dentro del comercio electrónico
Que es una transacciójghjn dentro del comercio electrónicoQue es una transacciójghjn dentro del comercio electrónico
Que es una transacciójghjn dentro del comercio electrónico
Miluska Herrera
 
Relación de la semiótica con los medios de comunicación.
Relación de la semiótica con los medios de comunicación.Relación de la semiótica con los medios de comunicación.
Relación de la semiótica con los medios de comunicación.
Saray Carrillo
 
La surdit -et_la_retraite
La surdit -et_la_retraiteLa surdit -et_la_retraite
La surdit -et_la_retraite
catavrio
 
Notaire Zmihi Sonia
Notaire   Zmihi SoniaNotaire   Zmihi Sonia
Notaire Zmihi Sonia
gawronski
 
Avocat Casa Simon
Avocat    Casa SimonAvocat    Casa Simon
Avocat Casa Simon
gawronski
 

En vedette (20)

MIT IDM Lessons Learned
MIT IDM Lessons LearnedMIT IDM Lessons Learned
MIT IDM Lessons Learned
 
Mapaconceptualcontenidomodulobiodiversidadventajasdelabiodiversidad 130222170...
Mapaconceptualcontenidomodulobiodiversidadventajasdelabiodiversidad 130222170...Mapaconceptualcontenidomodulobiodiversidadventajasdelabiodiversidad 130222170...
Mapaconceptualcontenidomodulobiodiversidadventajasdelabiodiversidad 130222170...
 
IMMOBILIER PRESTIGE PARIS PASSY TERRASSE
IMMOBILIER PRESTIGE PARIS PASSY TERRASSEIMMOBILIER PRESTIGE PARIS PASSY TERRASSE
IMMOBILIER PRESTIGE PARIS PASSY TERRASSE
 
Commerce équitable et MDD
Commerce équitable et MDDCommerce équitable et MDD
Commerce équitable et MDD
 
ACHAT APPARTEMENT FAMILIAL PARIS TROCADERO
ACHAT APPARTEMENT FAMILIAL PARIS TROCADEROACHAT APPARTEMENT FAMILIAL PARIS TROCADERO
ACHAT APPARTEMENT FAMILIAL PARIS TROCADERO
 
APPARTEMENT A VENDRE PARIS 16 TROCADERO VUE TOUR EIFFEL
APPARTEMENT A VENDRE PARIS 16 TROCADERO VUE TOUR EIFFELAPPARTEMENT A VENDRE PARIS 16 TROCADERO VUE TOUR EIFFEL
APPARTEMENT A VENDRE PARIS 16 TROCADERO VUE TOUR EIFFEL
 
Que es una transacciójghjn dentro del comercio electrónico
Que es una transacciójghjn dentro del comercio electrónicoQue es una transacciójghjn dentro del comercio electrónico
Que es una transacciójghjn dentro del comercio electrónico
 
Relación de la semiótica con los medios de comunicación.
Relación de la semiótica con los medios de comunicación.Relación de la semiótica con los medios de comunicación.
Relación de la semiótica con los medios de comunicación.
 
FELIX RODRIGO MORA - ABAJO LA PEPA! - 18 RAISONS DE RAPPORT DE LA CONSTITUTIO...
FELIX RODRIGO MORA - ABAJO LA PEPA! - 18 RAISONS DE RAPPORT DE LA CONSTITUTIO...FELIX RODRIGO MORA - ABAJO LA PEPA! - 18 RAISONS DE RAPPORT DE LA CONSTITUTIO...
FELIX RODRIGO MORA - ABAJO LA PEPA! - 18 RAISONS DE RAPPORT DE LA CONSTITUTIO...
 
La surdit -et_la_retraite
La surdit -et_la_retraiteLa surdit -et_la_retraite
La surdit -et_la_retraite
 
Comunicación por medios masivos
Comunicación por medios masivosComunicación por medios masivos
Comunicación por medios masivos
 
Comenzar
ComenzarComenzar
Comenzar
 
Notaire Zmihi Sonia
Notaire   Zmihi SoniaNotaire   Zmihi Sonia
Notaire Zmihi Sonia
 
Noël en france
Noël en france Noël en france
Noël en france
 
Anatomie d'une des particularité de la libc
Anatomie d'une des particularité de la libcAnatomie d'une des particularité de la libc
Anatomie d'une des particularité de la libc
 
TP1
TP1 TP1
TP1
 
Trabajando en informática
Trabajando en informáticaTrabajando en informática
Trabajando en informática
 
Microsoft power point
Microsoft power pointMicrosoft power point
Microsoft power point
 
Realidad
Realidad Realidad
Realidad
 
Avocat Casa Simon
Avocat    Casa SimonAvocat    Casa Simon
Avocat Casa Simon
 

Similaire à Uso de hilos

Similaire à Uso de hilos (20)

Hilos hebras
Hilos hebrasHilos hebras
Hilos hebras
 
Uso de threads en C#
Uso de threads en C#Uso de threads en C#
Uso de threads en C#
 
Hilo de ejecución
Hilo de ejecuciónHilo de ejecución
Hilo de ejecución
 
Clase 3 ene 8
Clase 3 ene 8Clase 3 ene 8
Clase 3 ene 8
 
PPT CAP 2 Proceso e hilo.pdf
PPT CAP 2 Proceso e hilo.pdfPPT CAP 2 Proceso e hilo.pdf
PPT CAP 2 Proceso e hilo.pdf
 
Procesos Ligeros: Hilos o Hebras
Procesos Ligeros: Hilos o HebrasProcesos Ligeros: Hilos o Hebras
Procesos Ligeros: Hilos o Hebras
 
hilos informatica
hilos informatica hilos informatica
hilos informatica
 
Cuadro comparativo hilos
Cuadro comparativo hilosCuadro comparativo hilos
Cuadro comparativo hilos
 
Tópicos Avanzados de Programación - Unidad 3 programacion concurrente
Tópicos Avanzados de Programación - Unidad 3 programacion concurrenteTópicos Avanzados de Programación - Unidad 3 programacion concurrente
Tópicos Avanzados de Programación - Unidad 3 programacion concurrente
 
Administrador de procesos
Administrador de procesosAdministrador de procesos
Administrador de procesos
 
Topicos Avanzados de Programacion - Unidad 4 programacion concurrente
Topicos Avanzados de Programacion - Unidad 4 programacion concurrenteTopicos Avanzados de Programacion - Unidad 4 programacion concurrente
Topicos Avanzados de Programacion - Unidad 4 programacion concurrente
 
Lps 17 hilos
Lps 17 hilosLps 17 hilos
Lps 17 hilos
 
Sistemas operativos informe
Sistemas operativos informe Sistemas operativos informe
Sistemas operativos informe
 
Sistemas Operativos
Sistemas Operativos Sistemas Operativos
Sistemas Operativos
 
DIAPOSITIVAS UNIDAD3.pdf
DIAPOSITIVAS UNIDAD3.pdfDIAPOSITIVAS UNIDAD3.pdf
DIAPOSITIVAS UNIDAD3.pdf
 
Hilos
HilosHilos
Hilos
 
Procesos e Hilos en los Sistemas Operativos
Procesos e Hilos en los Sistemas OperativosProcesos e Hilos en los Sistemas Operativos
Procesos e Hilos en los Sistemas Operativos
 
Thread
ThreadThread
Thread
 
Implementación de hilos
Implementación de hilos Implementación de hilos
Implementación de hilos
 
855
855855
855
 

Uso de hilos

  • 2. Los hilos son mini procesos. cada hilo se ejecuta en forma estrictamente secuencial y tiene su propio contador de programa una pila para llevar un registro de su posición.
  • 3. Los hilos pueden crear hilos hijos, mientras un hilo esta bloqueado se puede ejecutar otra fila del mismo proceso en los distintos hilos de un proceso comparten un espacio de direcciones, y los hilos pueden tener distintos estados (en ejecución, bloqueado, listo y terminación).
  • 4.
  • 5. Sincronización de hilos Todos los hilos comparten el mismo espacio de direcciones y otros recursos como pueden ser archivos abiertos. Cualquier modificación de un recurso desde un hilo afecta al entorno del resto de los hilos del mismo proceso. Por lo tanto, es necesario sincronizar la actividad de los distintos hilos para que no interfieran unos con otros o corrompan estructuras de datos.
  • 6. Ventajas de los hilos • Las ventajas de los hilos se dan cuando hablamos de Multihilos, que es cuando un proceso tiene múltiples hilos de ejecución los cuales realizan actividades distintas, que pueden o no ser cooperativas entre sí. • Se tarda mucho menos tiempo en crear un hilo nuevo en un proceso existente que en crear un proceso. Algunas investigaciones llevan al resultado que esto es así en un factor de 10.
  • 7. • Se tarda mucho menos en terminar un hilo que un proceso, ya que cuando se elimina un proceso se debe eliminar el BCP del mismo, mientras que un hilo se elimina su contexto y pila. • Se tarda mucho menos tiempo en cambiar entre dos hilos de un mismo proceso. • Los hilos aumentan la eficiencia de la comunicación entre programas en ejecución.
  • 8. Usos de los hilos Los hilos se inventaron para permitir la combinación del paralelismo con la ejecución secuencial y el bloqueo de las llamadas al sistema.
  • 9. Modelo del servidor/trabajador • El servidor lee las solicitudes de trabajo del buzón del sistema. • Después de examinar la solicitud elige a un hilo trabajador inactivo (es decir, bloqueado) y le envía la solicitud, lo cual se puede realizar al escribir un apuntador al mensaje en una palabra especial asociada a cada hilo. • El servidor despierta entonces al trabajador dormido.
  • 10. • El hilo trabajador verifica si puede satisfacer la solicitud por medio del bloque caché compartido, al que tienen acceso todos los hilos. • Si no envía un mensaje al disco para obtener el bloque necesario y se duerme esperando el fin de la operación.
  • 11. Se llama:  Al planificador y se inicializa otro hilo, que tal vez sea el servidor, para pedir más trabajo; o.  A otro trabajador listo para realizar un trabajo.
  • 13. Modelo de equipo • Aquí todos los hilos son iguales y cada uno obtiene y procesa sus propias solicitudes. • No hay servidor. • A veces llega trabajo que un hilo no puede manejar, en particular si cada hilo se especializa en manejar cierto tipo de trabajo.
  • 14. • En este caso, se puede utilizar una cola de trabajo, la cual contiene todos los trabajos pendientes. • Con este tipo de organización, un hilo debe verificar primero la cola de trabajo antes de buscar en el buzón del sistema.
  • 16. Modelo de entubamiento • El primer hilo genera ciertos datos y los transfiere al siguiente para su procesamiento. • Los datos pasan de hilo en hilo y en cada etapa se lleva a cabo cierto procesamiento. • Esta puede ser una buena opción en cierto problemas. • Un programa diseñado adecuadamente y que utilice hilos debe funcionar bien: • En una única cpu con hilos compartidos. • En un verdadero multiprocesador.