post

Ejercicios | Hilos

 ejercicios | hilos person encoding in laptop
Photo by Lukas on Pexels.com

A continuación se describe seis ejercicios sencillos que abordan los temas de introducción a la programación concurrente, conceptos de programación concurrente, arquitecturas paralelas y distribuidas, así como algoritmos paralelos y distribuidos.

  • Escribe un programa en el lenguaje de programación de tu elección que cree dos hilos. Cada hilo debe imprimir un mensaje simple, como “Hola desde Hilo 1” y “Hola desde Hilo 2”.
  • Modifica el programa anterior para que ambos hilos intenten acceder y modificar una variable compartida. Utiliza un mecanismo de exclusión mutua (por ejemplo, mutex) para garantizar que solo un hilo pueda modificar la variable a la vez.
  • Crea un programa que simule la producción y el consumo de un recurso compartido utilizando monitores. Puedes elegir un escenario simple, como un productor que agrega elementos a un búfer y un consumidor que los retira.
  • Diseña un programa que utilice semáforos para sincronizar la ejecución de tres hilos. Cada hilo debe imprimir un mensaje en un orden específico, por ejemplo, “Hilo 1”, “Hilo 2” y “Hilo 3” en ese orden.
  • Desarrolla un programa MPI simple en el que un proceso maestro envíe un mensaje a varios procesos esclavos, y estos procesos esclavos respondan al maestro. Puedes usar funciones MPI como MPI_Send y MPI_Recv.
  • Implementa un problema clásico de productor-consumidor utilizando hilos y semáforos. El productor debe agregar elementos a un búfer compartido, y el consumidor debe retirarlos. Utiliza semáforos para evitar condiciones de carrera.

Estos ejercicios están diseñados para abordar conceptos básicos en hilos, exclusión mutua, monitores, semáforos y MPI. Se pueden adaptar al lenguaje de programación que se este utilizando.

Leave a Reply

Your email address will not be published. Required fields are marked *