Programación concurrente

Solo disponible en BuenasTareas
  • Páginas : 2 (482 palabras )
  • Descarga(s) : 0
  • Publicado : 9 de noviembre de 2010
Leer documento completo
Vista previa del texto
PRACTICA CONCURRENTE

Bender 2.0
Jesus Monterde Arriaza y Eduardo Couto Álvarez

2008

Para realizar el diseño de nuestra práctica hemos tomado como referencia el ejercicio del productor –consumidor que se ha realizado en clase, el archivo leertodo y el archivo de solución del examen del primer parcial (ejercicio 5).

Primera parte de la práctica.
Con el archivo leertodo que se nos hadejado, nosotros lo hemos dividido en dos partes, una que utilizara el consumidor y otra el productor. Nuestro programa funcionara con un productor, que es el encargado de recoger los datos que seenvían desde el robot y almacenarlos en el buffer (estructura que hemos creado para guardar los datos). Necesitamos también un consumidor que será el encargado de recoger los datos del buffer ymostrarlos por pantalla, el consumidor también será el encargado de enviar los datos al programa dibujo (muestra los movimientos de los sonares).

Segunda parte de la práctica (opcional). Esta parte es unaampliación de lo que hemos realizado anteriormente. Necesitamos construir un monitor estadístico que será el encargado de almacenar los datos en una matriz y realizar las operaciones media, mediana ydesviación típica. Para la sincronización del hilo consumidor y el estadístico creamos dos variables de condición y una variable mutex dentro del monitor. También hemos añadido cuatro funciones: Copia-> copia en la matriz los datos de los sonares Puede extraer -> comprueba que el número de elementos es suficiente para realizar las operaciones o si se ha actualizado la matriz avisa al hiloestadístico para que realice los cálculos. Calcula-> realiza los cálculos de la media, mediana y desviación típica Avisar_terminado -> esta función se utiliza si el usuario pulsa CONTROL+C, si un hilo se haquedado esperando en un proceso, envía una señal para desbloquearlo. A su vez, hemos creado una estructura para conseguir la sincronización entre los 3 procesos que contiene un objeto de tipo buffer...
tracking img