Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Concurrencia
Conjunto de procesos cooperativos Red de cajeros automticos. Sistema de reserva de billetes. Servidor de impresin.
Qu es concurrencia?
Definicin de diccionario: coincidir en el espacio o en el tiempo dos o ms personas o cosas. En Informtica, se habla de concurrencia cuando hay una existencia simultnea de varios procesos en ejecucin.
El hecho de que un recurso no sea compartible deriva de una de las dos razones siguientes: La naturaleza fsica del recurso hace que sea imposible compartirlo. Un ejemplo lo constituye una impresora. El recurso es tal que si es usado por varios procesos de forma concurrente la accin de uno de ellos puede interferir con la de otro. Un ejemplo comn lo constituye un archivo.
Dentro de la categora de recursos no compartibles se incluirn la mayora de los perifricos (los discos no), los ficheros de escritura y las zonas de memoria sujetas a modificacin. Los recursos compartibles incluirn la CPU, los archivos de lectura, y las zonas de memoria que contengan rutinas puras o bien datos que no estn sujetos a modificacin
Da la posibilidad de que el otro proceso entre en su seccin crtica una segunda vez si lo hace antes que el proceso que acaba de dejar el bucle de espera, asigne el valor cierto a su intencin de entrar.
Pero cuando de nuevo tiene el procesador, realiza la asignacin y es su turno, as que se ejecuta. En consecuencia, no produce aplazamiento indefinido.
Inicializacin: Un semforo slo puede inicializarse una vez, normalmente en el momento en que se define.
wait(s): Si s vale 0 provoca el bloqueo del proceso hasta que otro proceso realice una operacin signal sobre s. Si existen varios procesos bloqueados en un semforo, slo uno de ellos podr pasar a listo tras una operacin signal sobre l. signal(s): Si no hay procesos bloqueados en s, provoca el incremento de s en una unidad. Si hay procesos bloqueados en s (que valdr cero), provoca la transicin a listo de uno de estos procesos.