necesito un cable
Sea una central de distribuci贸n el茅ctrica a la que se pueden conectar generadores y
consumidores. Por requerimientos t茅cnicos, s贸lo puede conectarse un m谩ximo de Ng
generadores, mientras que no hay l铆mite en la conexi贸n de consumidores, aunque para evitar
sobrecargas, s贸lo se aceptan nuevas conexiones de consumidores mientras el n煤mero de
consumidores no supere el triple de los generadores conectados en ese momento. El c贸digo del
monitor que sincroniza las peticiones de conexi贸n de generadores y consumidores, es el que
aparece en el siguiente cuadro
Se pide:
1. Implementar el c贸digo de los hilos generadores y consumidores el siguiente esquema:
Generador Consumidor
while (1){
// Espera aleatoria
Central.conexion_generadores()
// Uso de la central
Central.desconexion_generadores()
}
while (1){
// Espera aleatoria
Central.conexion_consumidores()
// Uso de la piscina
Central.desconexion_consumidores()
}
2. Implementar el c贸digo del programa main para que lance tantos hilos generadores e
hilos consumidores como el usuario le indique al invocar el programa (par谩metros argc
y argv).
3. Implementar un hilo de ejecuci贸n inspector que se dedique a imprimir por pantalla cada
cierto tiempo el estado de la central, es decir, el n煤mero de generadores y de
consumidores que hay en ella. Para poder obtener esta informaci贸n se deber谩 incluir
una funci贸n inspecciona en el monitor que devuelva los valores de n_gen y n_cons. La
cabecera de esta funci贸n podr铆a ser:
consumidores. Por requerimientos t茅cnicos, s贸lo puede conectarse un m谩ximo de Ng
generadores, mientras que no hay l铆mite en la conexi贸n de consumidores, aunque para evitar
sobrecargas, s贸lo se aceptan nuevas conexiones de consumidores mientras el n煤mero de
consumidores no supere el triple de los generadores conectados en ese momento. El c贸digo del
monitor que sincroniza las peticiones de conexi贸n de generadores y consumidores, es el que
aparece en el siguiente cuadro
Se pide:
1. Implementar el c贸digo de los hilos generadores y consumidores el siguiente esquema:
Generador Consumidor
while (1){
// Espera aleatoria
Central.conexion_generadores()
// Uso de la central
Central.desconexion_generadores()
}
while (1){
// Espera aleatoria
Central.conexion_consumidores()
// Uso de la piscina
Central.desconexion_consumidores()
}
2. Implementar el c贸digo del programa main para que lance tantos hilos generadores e
hilos consumidores como el usuario le indique al invocar el programa (par谩metros argc
y argv).
3. Implementar un hilo de ejecuci贸n inspector que se dedique a imprimir por pantalla cada
cierto tiempo el estado de la central, es decir, el n煤mero de generadores y de
consumidores que hay en ella. Para poder obtener esta informaci贸n se deber谩 incluir
una funci贸n inspecciona en el monitor que devuelva los valores de n_gen y n_cons. La
cabecera de esta funci贸n podr铆a ser:
