Foros del Web » Programación para mayores de 30 ;) » C/C++ »

problema productor consumidor

Estas en el tema de problema productor consumidor en el foro de C/C++ en Foros del Web. ayuda quiero que me asesoren en un programa que tengo que realizar y quiero aprender sobre semaforos y los procesos concurrentes para poder estudiar, el ...
  #1 (permalink)  
Antiguo 11/01/2012, 01:33
 
Fecha de Ingreso: enero-2012
Ubicación: Barquisimeto
Mensajes: 1
Antigüedad: 12 años, 3 meses
Puntos: 0
problema productor consumidor

ayuda quiero que me asesoren en un programa que tengo que realizar y quiero aprender sobre semaforos y los procesos concurrentes para poder estudiar, el problema es el suiguiente:
se requiere relaizar una aplicaion en lenguaje c o java donde el algoritmo consta de 3 modulos:
1) Maestro(amo).
2) Productor.
3) Consumidor.

cuando el mudulo maestro es ejecutado este pide los suiguientes datos:
1) el tamaño del bufer.
2) el numero de secuencis de productos consumidores.
3) el numero de productores y consumidores en cada secuecia.

el programa maestro genera los procesos productores y consumidores. dependiendo por una secuencia determinada por uno de los datos de estrada, el programa maestro ejecuta un procedimiento que interactua con los mudulos de productor y consumidor. si por ejemplo la secuencia de entrada es PPPPCPCPPC hay 3 secuencias 1) PPPPC, 2)PC ,3)PPC. estas secuencias son las que determinan el orden que seran eecutados los procedimientos mencionados.

el maestro envia al proceso productor un valor que indica la posicion del buffer donde puede colocar lo producido, el tamaño, el estado del vector buffer, posteriormente el el maesrto espera los datos del proceso, uno indica que el proceso completo su codigo y el otro indica el estado delen que encontro el buffer, si el estado esta en 0 indicaes indicacion que el porductor pudo producir, si essenal de que encontro el buffer lleno. en este ultimo caso el maestro le da el control del bufer al consumidor para que consuma y despues se lo devuelva al productor . si el maestro no encuentra ningun consumidor al cual darle el control elimina el proceso productor (solo ese proceso).

si el proceso productro ouede producir entonces envia al maestro el estado en cero, despues modifica el bufer y envia al maestro el estado del buffer yla posicion que modifico. el maestro recibe los mensajes del productor e imprime el estado del buffer.

para el consumidor el manejo es simiar con la diferencia que si el consumidor encuentra el buffer vacio, el maestro llama a un productor y luego devuelve el control al consumidor,. si el maestro no encuentra mas procesos productores entonces cancela el proceso consumidor.

cuando el consumidor puedo consumir sin problemas envia los mensajes correspondientes al maestro(posicion consumida y valor consumido)y este recibe los mensaje sy e imprime los valores consumidos.

la implementacion elejida debe garantizar que solamente un proceso productor y consumidor acceden al buffer.

en realida no se ni como empezar y entiendo poco, por no decir nada de lo que tengo que realizar asi que no me cae nada mal una ayudita gracias.

Última edición por fare63; 11/01/2012 a las 22:11
  #2 (permalink)  
Antiguo 11/01/2012, 23:52
 
Fecha de Ingreso: abril-2008
Ubicación: Santa Fe, Argentina
Mensajes: 41
Antigüedad: 16 años
Puntos: 14
Respuesta: problema productor consumidor

Cita:
Iniciado por fare63 Ver Mensaje
quiero aprender sobre semaforos y los procesos concurrentes para poder estudiar
Cita:
Iniciado por fare63 Ver Mensaje
en realida no se ni como empezar y entiendo poco, por no decir nada
No hay manera de que te salga esto sin saber nada. No es complejo, pero tenés que entender de comunicación entre procesos y concurrencia de procesos. "Una ayudita" no te va a servir para nada.

Leete el capítulo 2.3, "Comunicación entre procesos", del libro Sistemas Operativos Modernos, de Tanenbaum.
  #3 (permalink)  
Antiguo 12/01/2012, 05:45
 
Fecha de Ingreso: abril-2010
Ubicación: Rosario
Mensajes: 1.850
Antigüedad: 14 años
Puntos: 228
Respuesta: problema productor consumidor

Un foro no es para aprender un tema completo, sino para resolver dudas y/o terminar de afianzar conociminetos. Deberias buscar en internet que hay un monton de manuales sobre el tema.

Saludos

Etiquetas: consumidor, programa
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:17.