Escolar Documentos
Profissional Documentos
Cultura Documentos
CAPTULO I
Sistemas distribuidos
Historia
Los comienzos: la dcada de 1940
de
los
actuales
sistemas
de
Microsoft),
Sistemas distribuidos
Proyecto SETI:
SETI@Home es un experimento cientfico de la Universidad Berkeley de California
que combina el poder de computo de millones de computadoras alrededor del
mundo conectadas a travs de la Internet para analizar datos obtenidos por un
radio
telescopio
que
capta
ondas
provenientes
del
espacio.
al
publico
en
el
ao
1999,
actualmente
INTERNET.
Internet es una vasta coleccin de redes de computadas de diferentes tipos
interconectados.
El diseo y la construccin de los mecanismos de comunicacin Internet (los
protocolos Internet) es una
INTRANETS.
Una Intranet es una porcin de Internet que es administrada separadamente y que
tiene un lmite que puede ser configurado para hacer cumplir polticas de
seguridad local. Est compuesta de varias redes de rea local (LANs) enlazadas
Descripcin
Economa
Velocidad
Distribucin inherente
Confiabilidad
Descripcin
Datos compartidos
Dispositivos
compartidos
Comunicacin
Flexibilidad
Descripcin
Software
Redes
Seguridad
Alto rendimiento. Una aplicacin paralela puede ser tambin distribuida. Por
ejemplo, puede utilizarse una red local para distribuir los procesos de la tarea
entre los nodos de la red con el fin de aprovechar los recursos de cmputo
disponibles (generalmente PCs de bajo coste) para reducir el tiempo de
finalizacin. Precisamente, este tipo de esquema de cmputo (computacin en
cluster) ofrece hoy una excelente relacin rendimiento/coste y se encuentra en
expansin frente a los tradicionales supercomputadores. Aunque hoy en da se
siguen utilizando sistemas basados en paso de mensajes (por ejemplo, MPI) con
mecanismos de distribucin no transparentes, la tendencia es clara hacia la
integracin transparente de los recursos de cmputo, y en ese sentido estn
apareciendo nuevos productos (por ejemplo, MOSIX9 ). La memoria compartida
distribuida (DSM) es uno de los retos para proporcionar la integracin completa.
En redes de rea amplia se habla de computacin en grid. En este caso, la
disponibilidad de recursos para la aplicacin es abierta y abarca unidades de
cmputo dispersas que en ese momento estn ociosas. Un ejemplo de software
para soportar computacin en grid es el Globus Toolkit10 .
flujo
de
varias
instrucciones
un
flujo
de
datos.
medida
por
el
software
del
sistema
operativo,
no
por
el
hardware.
Se pueden distinguir dos tipos de sistemas operativos para los de varios CPU:
los dbilmente acoplados y los fuertemente acoplados.
usuario
domine
su
propia
estacin de trabajo.
lo
que
facilita
clarifica
el
diseo
del
sistema.
Una disposicin muy comn son los sistemas multicapa en los que el servidor se
descompone en diferentes programas que pueden ser ejecutados por diferentes
computadoras
aumentando
as
el
grado
de
distribucin
del
sistema.
distribucin,
tanto
nivel
fsico
como
nivel
lgico.
Las
redes
P2P
Tienen
las
siguientes
caractersticas:
Escalabilidad
Las redes P2P tienen un alcance mundial con cientos de millones de usuarios
potenciales. En general, lo deseable es que cuantos ms nodos estn conectados
a una red P2P, mejor ser su funcionamiento
Robustez
La naturaleza distribuida de las redes peer-to-peer tambin incrementa la robustez
en caso de haber fallos la rplica de los datos permite que se pueda obtener la
informacin de otra fuente casi inmediatamente.
Descentralizacin
Estas redes por definicin son descentralizadas y todos los nodos son iguales. No
existen nodos con funciones especiales, y por tanto ningn nodo es imprescindible
para el funcionamiento de la red.
que
se
necesita
para
referenciarlo
listando
todas
sus
como
concurrencia,
seguridad
actividades
relacionadas
con
Otras nuevas caractersticas del modelo incluyen: Claves primarias: valores que
identifican a los componentes unvocamente. Atributos y configuracin:
expuestos para permitir la configuracin del componente. Interfaces Home: que
proporcionan funcionamiento de factora y operaciones de bsqueda de
componentes. El marco de trabajo para implementacin de componentes CCM
proporciona un gran nmero de interfaces para soportar la estructura y
funcionalidad de los componentes. La implementacin para muchas de estas
interfaces puede ser generada automticamente. El CORBA Component
Implementation Framework (CIF) est diseado para desarrollar estas tareas y
que los programadores no tengan que preocuparse de ellas. Por ejemplo, la
gestin del ciclo de vida y estados de los componentes podra ser resuelta con
este marco de trabajo. CCM define un lenguaje declarativo, el Component
Implementation
Definition
Language
(CIDL)
que
permite
describir
estn
incluso
en
mquinas
distintas,
con
el
grado
de
impredecibilidad que ello aporta). Y adems, presenta los mismos problemas del
estndar CORBA, que no permite acotar el tiempo de ejecucin de una invocacin
remota. Este modelo presenta mltiples interfaces mediante las facetas. Con esta
caracterstica se pueden conseguir distintas QoS, interfaces funcionales y
especiales para tiempo real, distintas interfaces para una utilizacin esttica o
dinmica (por ejemplo, mediante una prueba de aceptacin) de los componentes y
la posibilidad de implementar un mecanismo de reconfiguracin dinmica.
para
Transacciones,
cuatro
Persistencia,
Seguridad
Notificacin.
usados, como
Sera
son
aconsejable
en
[Hsiung
et
al.,
2002].
Dispone
de
cinco
herramientas:
configuracin; adems de la
de
OSA+
en
Windows
NT
VxWorks;
utilizacin
de
[Pfeffer et al., 2002] los autores continan con la arquitectura OSA sobre
microprocesadores Java, exponiendo adems las posibles formas de planificacin
que utilizan directamente sobre hardware: RMA, EDF, GP (porcentaje garantizado
de CPU). Finalizando con las plataformas de ejecucin, en [Yen et al., 2002] se
propone un mecanismo integrado basado en componentes para el desarrollo de
software empotrado; haciendo especial nfasis en dos problemas identificados por
los autores: identificacin de componentes junto con su recuperacin, y
composicin. Sin embargo, este trabajo no est centrado en tiempo real, aunque
la sintaxis presentada es interesante y puede ser ampliada para componentes en
tiempo real. En el trabajo presentado en [Yau y Zhou, 2002] se utilizan modelos
desde las primeras fases del diseo de una aplicacin, hasta su implementacin;
pensando que la utilizacin de modelos facilita el desarrollo de aplicaciones de
tiempo real frente a la utilizacin de los resultados de investigaciones tericas que
se centran ms en modelos basados en tareas en lugar de en modelos basados
en objetos o componentes como suelen ser gran parte de las aplicaciones
actuales. Adems de los modelos, se utilizan tambin aspectos para indicar el
cdigo de planificacin, pudiendo realizarse anlisis de planificabilidad durante el
diseo. Este trabajo est centrado pues en planificabilidad y orientacin a
aspectos. Para disear sistemas distribuidos de tiempo real predecibles se
requieren especificaciones de los componentes en el dominio del tiempo, adems
de las interfaces funcionales. El trabajo desarrollado en [Kopetz y Obermaisser,
2002] trata la especificacin temporal de interfaces y establece los principios de la
composicin. Se presenta una nueva interfaz aadida a los componentes
denominada Temporal firewall: interfaz para intercambios unidireccionales de
informacin de estado entre emisor y receptor. Son indicados adems los cuatro
principios que debe cumplir una arquitectura para que pueda realizarse una
composicin correcta: Desarrollo independiente de nodos. Estabilidad de los
servicios primordiales. El sistema de comunicacin debe ser eficiente. Las
rplicas deben ser deterministas. La interfaz presentada por los autores soporta
composicin temporal y garantiza el cumplimiento de los plazos. El trabajo
presentado en [Wellings et al., 2002] intenta demostrar cmo se puede tratar el