16.04.2014 Views

Administración avanzada de GNU/Linux (PDF) - SW Computación

Administración avanzada de GNU/Linux (PDF) - SW Computación

Administración avanzada de GNU/Linux (PDF) - SW Computación

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.

Administración <strong>avanzada</strong> <strong>de</strong> <strong>GNU</strong>/<strong>Linux</strong><br />

ª FUOC • XP04/90785/00019<br />

2) Son sistemas heterogéneos con sistemas operativos <strong>de</strong> tipo NOS<br />

(Networked Operating System) que ofrecen una serie <strong>de</strong> servicios<br />

distribuidos y remotos.<br />

3) La programación <strong>de</strong> aplicaciones distribuidas se pue<strong>de</strong> efectuar a<br />

diferentes niveles:<br />

a) Utilizando un mo<strong>de</strong>lo cliente-servidor y programando a bajo nivel<br />

(sockets).<br />

b) El mismo mo<strong>de</strong>lo, pero con API <strong>de</strong> “alto” nivel (PVM, MPI).<br />

c) Utilizando otros mo<strong>de</strong>los <strong>de</strong> programación como, por ejemplo,<br />

programación orientada a objetos distribuidos (RMI, CORBA,<br />

Agents...).<br />

PVM, Parallel Virtual Machine<br />

PVM [Pro03e] es una API que permite generar, <strong>de</strong>s<strong>de</strong> el punto <strong>de</strong> vista<br />

<strong>de</strong> la aplicación, una colección dinámica <strong>de</strong> or<strong>de</strong>nadores, que<br />

constituyen una máquina virtual (VM). Las tareas pue<strong>de</strong>n ser creadas<br />

dinámicamente (spawned) y/o eliminadas (killed) y cualquier tarea<br />

PVM pue<strong>de</strong> enviar un mensaje a otra. No existe un límite en el tamaño<br />

o número <strong>de</strong> mensajes (según las especificaciones, aunque pue<strong>de</strong>n<br />

existir combinaciones hardware/sistema operativo que <strong>de</strong>n<br />

como resultado limitaciones en el tamaño <strong>de</strong>l mensaje) y el mo<strong>de</strong>lo<br />

soporta: tolerancia a fallos, control <strong>de</strong> recursos, control <strong>de</strong> procesos,<br />

heterogeneidad en las re<strong>de</strong>s y en los hosts.<br />

El sistema (VM) dispone <strong>de</strong> herramientas para el control <strong>de</strong> recursos<br />

(agregar o quitar hosts <strong>de</strong> la máquina virtual), control <strong>de</strong> procesos<br />

(creación/eliminación dinámica <strong>de</strong> procesos), diferentes mo<strong>de</strong>los <strong>de</strong> comunicación<br />

(blocking send, blocking/nonblocking receive, multicast),<br />

grupos <strong>de</strong> tareas dinámicos (una tarea pue<strong>de</strong> anexarse a un grupo<br />

o no dinámicamente) y tolerancia a fallos (la VM <strong>de</strong>tecta el fallo y se<br />

pue<strong>de</strong> reconfigurar).<br />

La estructura <strong>de</strong> PVM se basa por un lado en el daemon (pvm3d) que<br />

resi<strong>de</strong> en cada máquina y se interconectan utilizando UDP y por el<br />

otro, la biblioteca <strong>de</strong> PVM (libpvm3.a), que contiene todas las rutinas<br />

para enviar/recibir mensajes, crear/eliminar procesos, grupos, sincronización,<br />

... y que utilizará la aplicación distribuida.<br />

ANOTACIONES<br />

421

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

Saved successfully!

Ooh no, something went wrong!