Tema 4: SISTEMAS BASADOS EN PASO DE MENSAJES

Tema 4: SISTEMAS BASADOS EN PASO DE MENSAJES Tema 4: SISTEMAS BASADOS EN PASO DE MENSAJES

27.01.2015 Views

2.1. Sentencias Bloqueantes 2.1.2. Send-Receive bloqueante buferizado • Emisor/Receptor tienen búfer preasignado para comunicación. – Emisor copia datos a búfer y continúa tras copia (es seguro). – Cuando receptor encuentra “receive”, comprueba si el mensaje está disponible en el búfer de recepción y copia datos en dirección destino. a) Con hardware de comunicación: Transferencia se inicia tras copia a búfer. b) Sin hardware especializado: sólo se buferiza un lado ---> menor sobrecarga • Emisor interrumpe receptor y ambos procesos intervienen en transferencia. • Receptor encuentra “receive” y mensaje es copiado al búfer de recepción. • También posible al revés (receptor interrumpe emisor). a) Emisor Receptor b) Emisor Receptor send datos receive send datos Copia en búfer de recepción receive

2.1. Sentencias Bloqueantes 2.1.2. Send-Receive bloqueante buferizado • Alivia sobrecargas de espera ociosa a costa de gestión de búfer. • Sólo menos ventajosas en programas altamente síncronos o cuando la capacidad del búfer sea un asunto crítico. • Impacto de búfer finito: Escribir programas con requisitos de búfer acotados – P1 más lento que P0 ⇒ P0 podría continuar siempre que hubiese búfer. – Búfer agotado ⇒ P0 se bloquearía. P0 for (i=0;i

2.1. Sentencias Bloqueantes<br />

2.1.2. Send-Receive bloqueante buferizado<br />

• Emisor/Receptor tienen búfer preasignado para comunicación.<br />

– Emisor copia datos a búfer y continúa tras copia (es seguro).<br />

– Cuando receptor encuentra “receive”, comprueba si el mensaje está disponible en el búfer de<br />

recepción y copia datos en dirección destino.<br />

a) Con hardware de comunicación: Transferencia se inicia tras copia a búfer.<br />

b) Sin hardware especializado: sólo se buferiza un lado ---> menor sobrecarga<br />

• Emisor interrumpe receptor y ambos procesos intervienen en transferencia.<br />

• Receptor encuentra “receive” y mensaje es copiado al búfer de recepción.<br />

• También posible al revés (receptor interrumpe emisor).<br />

a)<br />

Emisor<br />

Receptor<br />

b)<br />

Emisor<br />

Receptor<br />

send<br />

datos<br />

receive<br />

send<br />

datos<br />

Copia en búfer<br />

de recepción<br />

receive

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!