Escolar Documentos
Profissional Documentos
Cultura Documentos
Tiempo Real
Fundamentos bsicos
Info a Copia
Mensaje
compartir de info
Mecanismo de comunicacin
entre procesos (IPC) del
Espacio de direcciones sistema operativo Espacio de direcciones
de p0 de p1
Fundamentos bsicos
Cola de mensajes
Fundamentos bsicos
Proceso 1 Proceso 2
while (1) { while (1) {
// W_previo_1 // W_previo_2
send ('*', P2) receive (&msg, P1)
// W_restante_1 // W_restante_2
} }
Fundamentos bsicos
SECCIN_ENTRADA
SECCIN_CRTICA
SECCIN_SALIDA
SECCIN_RESTANTE
while(1);
La cola de mensajes
receive (buzn, &msg)
acta de
semforo!
SECCIN_CRTICA
SECCIN_RESTANTE
Semforo contador
~
while(1); Cola n msg
Ver qt_notify ()
Esquema beeper
Buzn Beeper
1 e( ) r ec
ce iv receive () eiv
re e ()
Esquema beeper
Buzn Beeper
Garantiza
no bloqueo!
r ec
e iv
receive ()
e ()
Buzn A Buzn B
Productor/Consumidor
Se bloquea si no hay
while (1) {
// Producir... elementos (mensajes)
producir();
// Nuevo item...
send (buzn, msg);
}
while (1) {
recibir (buzn, &msg)
// Consumir...
consumir();
Se bloquea si la }
cola est llena
Filsofos comensales
Proceso filsofo
while (1) {
// Pensar...
wait(palillos[i]);
wait(palillos[(i+1) % 5]);
// Comer...
signal(palillos[i]);
signal(palillos[(i+1) % 5]);
}
Filsofos comensales
Proceso filsofo
while (1) {
// Pensar...
receive(mesa, &m);
receive(palillo[i], &m);
receive(palillo[i+1], &m);
// Comer...
send(palillo[i], m);
send(palillo[i+1], m);
send(mesa, m);
}
Tabaco
Papel Agente Tabaco Papel
Fsforos
Ejemplo:
26.27.2.1.56 122 65 98 97 63 = zZba?
TRADUCCIN
Puntuacin
4 5
Buzn Buzn
Puntuacin Notificacin
3 6
1 2
Buzn
Cliente Traduccin
Traduccin
8 7
Buzn
Cliente