Documente Academic
Documente Profesional
Documente Cultură
-PRODUCTOR Y CONSUMIDOR
SO Distribuidos
Ma. de Jess Snchez J. Lucero Vzquez Gonzlez
/* Nmero de proceso */ /* A Quin le toca ? */ /* Todos los valores son inicialmente FALSE*/
ingresar_region(proceso) int proceso; /* Nmero del proceso */ { int otro; /* Nmero de otro proceso */ otro = 1 proceso; /* El opuesto del proceso */ interes[proceso] = TRUE; /* inters por ingresar a la seccin crtica */ turno = proceso; /* Colocar seal */ while ((turno == proceso) && (interes[otro] == TRUE)); /* Posicin nula */ } salir_region(proceso) int proceso; { interested[proceso] = FALSE; }
Ing. Computacin.
6 semestre
08/06/2011
SO Distribuidos
Ma. de Jess Snchez J. Lucero Vzquez Gonzlez
#define N 100 typedef int semforo; semaforo exclusion=1; semaforo vacio=N; semforo lleno=0; productor() { int item; while (TRUE) { procedimiento_item(&item); down(vacio); down(exclusion); ingrese_item(item); up(exclusion); up(lleno); } } consumidor() { int item; while(TRUE) { down(lleno); down(exclusion); remover_item(&item); up(exclusion); up(vacio); consume_item(item); } }
/* Nmero de ranuras del buffer */ /* tipo semforo como entero */ /* controla el acceso a la seccin crtica */ /* cuenta las ranuras vacas del buffer */ /* cuenta las ranuras llenas del buffer */
/* ciclo infinito */ /* generar algo para colocarlo en el buffer */ /* disminuir el conteo vaco */ /* meter en la seccin critica */ /* colocar el nuevo elemento en el buffer */ /* salir de la seccin crtica */ /* incrementar el conteo de ranuras llenas */
/* ciclo infinito */ /* disminuir el conteo lleno */ /* meter en la seccin crtica */ /* tomar el elemento del buffer */ /* salir de la seccin crtica */ /* incrementar el conteo de ranuras vacas */ /* hacer algo con el elemento */
Ing. Computacin.
6 semestre
08/06/2011
SO Distribuidos
Ma. de Jess Snchez J. Lucero Vzquez Gonzlez
Productor y el consumidor
Uno o ms productores generan datos y los sitan en un bfer, Un nico consumidor saca elementos del bfer de uno en uno. Slo un productor o consumidor puede acceder al bfer en un instante dado.
Producto-consumidor [4]
Bibliografa [1] Algoritmo de Peterson pro-concurrente.galeon.com/invc/alg-peterson.doc [2] Apuntes Sistemas de Operativos, Abril/2003. 1http://www.inf.uct.cl/~amellado/archivos/SOperativos2.pdf [3] El problema del productor y el consumidor http://www.monografias.com/trabajos14/administ-procesos/administ-procesos.shtml
Ing. Computacin.
6 semestre
08/06/2011
SO Distribuidos
Ma. de Jess Snchez J. Lucero Vzquez Gonzlez [4] Concurrencia https://belenus.unirioja.es/~secarcam/sistemas_operativos/procesos/comunicacion_procesos.ht ml
Ing. Computacin.
6 semestre
08/06/2011