25.07.2013 Views

Práctico 5 - Departamento de Ciencias e Ingeniería de la ...

Práctico 5 - Departamento de Ciencias e Ingeniería de la ...

Práctico 5 - Departamento de Ciencias e Ingeniería de la ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>Departamento</strong> <strong>de</strong> <strong>Ciencias</strong> e <strong>Ingeniería</strong> en Sistemas<br />

<strong>Ingeniería</strong> <strong>de</strong> <strong>la</strong> Computación <strong>de</strong> Computación<br />

1. Problemas<br />

Sistemas Distribuidos<br />

Segundo Cuatrimestre <strong>de</strong> 2012<br />

Trabajo <strong>Práctico</strong> N ō 5<br />

1. La abstracción <strong>de</strong> memoria compartida distribuida (DSM) es implementada utilizando<br />

los servicios <strong>de</strong>l sistema <strong>de</strong> comunicación <strong>de</strong> pasaje <strong>de</strong> mensajes. En principio, <strong>la</strong> performance<br />

<strong>de</strong> <strong>la</strong>s aplicaciones que usan DSM es esperable que sea peor que <strong>la</strong> utilización<br />

<strong>de</strong> pasaje <strong>de</strong> mensaje directamente. A pesar <strong>de</strong> esto, ¿porqué diseñadores <strong>de</strong> sistemas<br />

operativos distribuidos soportan <strong>la</strong> abstracción <strong>de</strong> DSM en sus sistemas? ¿Hay aplicaciones<br />

que presentan mejor performance en un sistema con facilida<strong>de</strong>s DSM que en<br />

un sistema que tiene so<strong>la</strong>mente <strong>la</strong> facilidad <strong>de</strong> pasaje <strong>de</strong> mensajes? Si <strong>la</strong> respuesta es<br />

afirmativa, brin<strong>de</strong> el tipo <strong>de</strong> aplicaciones, sino justifique.<br />

2. Discuta si pasaje <strong>de</strong> mensajes o Memoria Compartida Distribuida es preferible para<br />

aplicaciones tolerantes a fal<strong>la</strong>.<br />

3. ¿Cómo resolvería el problema <strong>de</strong> diferentes representaciones <strong>de</strong> datos para una implementación<br />

DSM basada en middleware sobre computadoras heterogéneas? ¿Cómo se<br />

abordaría el problema en una implementación basada en páginas? ¿Su solución pue<strong>de</strong><br />

exten<strong>de</strong>rse a punteros?<br />

4. Explique cuáles son <strong>la</strong>s principales razones para consi<strong>de</strong>rar mo<strong>de</strong>lo <strong>de</strong> consistencias<br />

débiles.<br />

5. ¿Qué es consistencia causal? Brin<strong>de</strong> un ejemplo <strong>de</strong> una aplicación para el cual consistencia<br />

causal es <strong>la</strong> mejor elección.<br />

6. Consi<strong>de</strong>rando <strong>la</strong> figura ??, ¿es legal <strong>la</strong> salida 000000 para un sistema <strong>de</strong> memoria<br />

compartida distribuida que so<strong>la</strong>mente presenta consistencia FIFO (PRAM)? Explique<br />

su respuesta.<br />

Proceso P1 Proceso P2 Proceso P3<br />

x=1; y=1 z=1;<br />

print(y,z) print(x,z) print(x,y)<br />

Figura 1: Tres procesos ejecutando concurrentemente


Sistemas Distribuidos 2<br />

7. Tres computadores juntas proveen un servicio replicado. El fabricante estima que cada<br />

computadora tiene un tiempo medio <strong>de</strong> fal<strong>la</strong> <strong>de</strong> cinco días, una fal<strong>la</strong> típicamente toma<br />

solucionar<strong>la</strong> 4 horas. ¿Cuál es <strong>la</strong> disponibilidad <strong>de</strong>l servicio replicado?<br />

8. En un juego multi-usuario, los jugadores mueven <strong>la</strong>s figuras sobre una escena común.<br />

El estado <strong>de</strong>l juego se replica en <strong>la</strong>s estaciones <strong>de</strong> trabajo y en un servidor, que contiene<br />

servicios que contro<strong>la</strong>n el juego en su globalidad, tales como <strong>la</strong> <strong>de</strong>tección <strong>de</strong> colisiones.<br />

Las actualizaciones se multi transmiten a todas <strong>la</strong>s réplicas.<br />

a) Las figuras pue<strong>de</strong>n arrojarse proyectiles entre el<strong>la</strong>s, y cada impacto <strong>de</strong>bilita,<br />

por un tiempo limitado, al infortunado receptor. ¿Qué tipo <strong>de</strong> or<strong>de</strong>nación <strong>de</strong><br />

actualizaciones se requiere aquí? Piense en los eventos <strong>de</strong> arroja, colisiona, revive.<br />

b) El juego incorpora dispositivos mágicos que pue<strong>de</strong>n ser escogidos por un jugador<br />

para ayudarle. ¿Qué tipo <strong>de</strong> or<strong>de</strong>nación <strong>de</strong>bería aplicarse a <strong>la</strong> operación <strong>de</strong> toma<br />

<strong>de</strong>l dispositivo?<br />

9. Una operación X sobre un objeto o provoca que o invoque una operación sobre otro<br />

objeto o’. Se propone replicar a o pero no a o’. Explique <strong>la</strong> dificultad que surge<br />

asociada a <strong>la</strong>s invocaciones sobre o’, y proponga una solución.<br />

10. Consi<strong>de</strong>re un sistema distribuido basado en objetos que soporta replicación <strong>de</strong> objetos,<br />

en el cual todas <strong>la</strong>s invocaciones a métodos se realizan en completo or<strong>de</strong>n. También<br />

suponga que <strong>la</strong> invocación a un método es atómica (por ejemplo, porque cada objeto<br />

se bloquee automáticamente cuando es invocado). ¿Este tipo <strong>de</strong> sistema proporciona<br />

consistencia entry? ¿Y en cuánto a consistencia secuencial?<br />

11. En los servidores X, Y y Z, los cuales mantienen réplicas <strong>de</strong> los datos A y B, se usa<br />

<strong>la</strong> replicación con consenso con quórum <strong>de</strong> Gifford. Los valores iniciales <strong>de</strong> todas <strong>la</strong>s<br />

réplicas <strong>de</strong> A y B son 100, y los votos para A y B son 1 en cada servidor X, Y y Z.<br />

También se tiene L=E=2, tanto para A como para B. Un cliente lee el valor <strong>de</strong> A y<br />

entonces lo escribe en B.<br />

a) En el momento en el que el cliente realiza estas operaciones, una partición separa<br />

los servidores X e Y <strong>de</strong> Z. Descríbase los quórum obtenidos y <strong>la</strong>s operaciones que<br />

tienen lugar si el cliente pue<strong>de</strong> acce<strong>de</strong>r a los servidores X e Y.<br />

b) Descríbase los quórum obtenidos y <strong>la</strong>s operaciones que tienen lugar si el cliente<br />

pue<strong>de</strong> acce<strong>de</strong>r sólo al servidor Z.<br />

c) La partición se repara y a continuación se produce otra partición, <strong>de</strong> tal modo que<br />

X y Z son separadas <strong>de</strong> Y. Descríbanse los quórum obtenidos y <strong>la</strong>s operaciones<br />

que tienen lugar si el cliente pue<strong>de</strong> acce<strong>de</strong>r a los servidores X y Z.

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

Saved successfully!

Ooh no, something went wrong!