Está en la página 1de 34

Sistemas Distribuidos

Arquitecturas y Sistemas Operativos - Lic. en Bioinformtica - F.I. U.N.E.R.

Virtualizacin
Una computadora puede tener varias mquinas
virtuales
Cada mquina virtual (VM) puede tener un S.O.
distinto
La falla de una VM no afecta a las otras
(Tolerancia a fallas)
Posibles aplicaciones ?
Otras ventajas ?
Arquitecturas y Sistemas Operativos - Lic. en Bioinformtica - F.I. U.N.E.R.

Virtualizacin
El nico software que se ejecuta en el modo del
kernel es el hipervisor (de la VM)
Tiene 100 veces menos lneas de cdigo que un
sistema operativo (100 veces menos errores)

Arquitecturas y Sistemas Operativos - Lic. en Bioinformtica - F.I. U.N.E.R.

Virtualizacin - Tipos
Hipervisor tipo 1 (monitor de VM)
Es un S.O. que se ejecuta en modo kernel
Su trabajo es soportar N copias del hardware
actual, conocidas como Maquinas Virtuales
Hipervisor tipo 2
Es un programa de usuario (Ejec. modo usuario)
Se ejecuta sobre un S.O. anfitrin
Interpreta el conjunto de instrucciones de la
mquina
Arquitecturas y Sistemas Operativos - Lic. en Bioinformtica - F.I. U.N.E.R.

Virtualizacin - Requisitos
Instrucciones Sensibles: Solo se pueden ejecutar
en M. Kernel
Instrucciones Privilegiadas: Si se ejecutan en
M. Usuario, producen interrupciones
Una mquina se puede virtualizar slo si las
instrucciones sensibles son un subconjunto de las
instrucciones privilegiadas (Popek y Goldberg)
Intel y AMD introdujeron la virtualizacin segura
(VT y SVM) en sus CPUs (contenedores para VM)
Arquitecturas y Sistemas Operativos - Lic. en Bioinformtica - F.I. U.N.E.R.

Virtualizacin - Requisitos
Instrucciones Sensibles: Solo se pueden ejecutar
en M. Kernel
Instrucciones Privilegiadas: Si se ejecutan en
M. Usuario, producen interrupciones
Una mquina se puede virtualizar slo si las
instrucciones sensibles son un subconjunto de las
instrucciones privilegiadas (Popek y Goldberg)
Intel y AMD introdujeron la virtualizacin segura
(VT y SVM) en sus CPUs (contenedores para VM)
Arquitecturas y Sistemas Operativos - Lic. en Bioinformtica - F.I. U.N.E.R.

Virtualizacin Tipo 1
El S.O. huesped se ejecuta en M. Usuario creyendo que
est en M. Kernel
El Hipervisor tipo 1 atrapa la instruccin privilegiada, si
hay VT, se ejecuta. Sino, simplemente se ignora para
evitar una interrupcin.

Arquitecturas y Sistemas Operativos - Lic. en Bioinformtica - F.I. U.N.E.R.

Virtualizacin Tipo 2
Hipervisor tipo 2: Se ejecuta como un
programa de usuario encima del S.O. anfitrin
Se explora el cdigo para ver si tiene
instrucciones sensibles, en ese caso se sustituyen
por llamadas a procedimiento que las emulan
Esto posibilita virtualizaciones tipo 2 incluso en
hardware sin tecnologa VT

Arquitecturas y Sistemas Operativos - Lic. en Bioinformtica - F.I. U.N.E.R.

Paravirtualizacin
Se modifica el cdigo del S.O. husped para
evitar instrucciones sensibles, las que se
reemplazan por llamadas al hipervisor
El S.O. se ejecuta ahora sobre un mikrokernel
Esta tecnologa no fue posible en sistemas
privativos (Windows)

Arquitecturas y Sistemas Operativos - Lic. en Bioinformtica - F.I. U.N.E.R.

Sistemas de mltiples procesadores

Se requieren ms ciclos de CPU


La solucin fue aumentar la velocidad del reloj
Segn T. de la Relatividad
Ninguna seal elctrica se puede propagar ms
rpido que la luz
30 cm/nseg en el vaco y 20 cm/nseg en el
alambre de cobre o la fibra ptica

Arquitecturas y Sistemas Operativos - Lic. en Bioinformtica - F.I. U.N.E.R.

Sistemas de mltiples procesadores


Con un reloj de 10 GHz, las seales no pueden
viajar ms de 2 cm en total
Con 100 GHz la longitud total de la ruta es
cuando mucho de 2 mm
Esto implica CPUs ms pequeos
Y capacidad para disipar mucho calor
Otra solucin: Computadoras en paralelo

Arquitecturas y Sistemas Operativos - Lic. en Bioinformtica - F.I. U.N.E.R.

Sistemas de mltiples procesadores

(a)Un multiprocesador con memoria compartida.


(b)Una multicomputadora con paso de mensajes.
(c) Un sistema distribuido de rea amplia.

Arquitecturas y Sistemas Operativos - Lic. en Bioinformtica - F.I. U.N.E.R.

Sistemas de mltiples procesadores

En los multiprocesadores, cada CPU puede leer y escribir palabras


en la memoria
En los multicomputadores se intercambian mensajes
La diferencia fundamental reside en la latencia (retardo) en el paso
de mensajes

Arquitecturas y Sistemas Operativos - Lic. en Bioinformtica - F.I. U.N.E.R.

Multicomputadoras
El nodo bsico es una computadora bsica
La clave est en disponer de una buena red de
interconexin
Las computadoras (nodos) disponen de una
interfaz de red (NIC)
Los nodos se interconectan mediante fibra
ptica o cable utp mediante switches
Se pueden utilizar diversas topologas de red
Arquitecturas y Sistemas Operativos - Lic. en Bioinformtica - F.I. U.N.E.R.

Sistemas Distribuidos
No hay consenso en una nica definicin. Algunas son:
Un SD es una coleccin de computadoras independientes
que aparecen ante los usuarios del sistema como una
nica computado
Un SD es un sistema de procesamiento descentralizado
de datos que ejecutan sobre un conjunto de procesadores
dbilmente acoplados, interconectados por una red
cuyos nodos estn dispersos geogrficamente
Un SD es aqul en el que los componentes localizados en
computadores, conectados en red, comunican y
coordinan sus acciones nicamente mediante el paso de
mensajes
Arquitecturas y Sistemas Operativos - Lic. en Bioinformtica - F.I. U.N.E.R.

Sistemas Distribuidos, razones para


utilizarlos

Economa: Mejor relacin precio/rendimiento que sistemas


centralizados
Distribucin inherente: Por ej. cuando hay sucursales,
servidores dispersos, etc.
Confiabilidad: Una falla en un nodo no afecta al resto
Crecimiento incremental: No hay que cambiar todo para
crecer.
Compartir recursos: Compartir en instalaciones remotas
Flexibilidad: Permiten distribuir la carga de trabajo
Aceleracin de clculos: Los clculos se pueden dividir y
reunificar para ganar tiempo
Arquitecturas y Sistemas Operativos - Lic. en Bioinformtica - F.I. U.N.E.R.

Sistemas Distribuidos
Cada nodo tiene su propia memoria privada
Se entiende por acoplamiento del software a
la integracin que tengan todos los elementos
software que existan en cada nodo. Gran parte
de la integracin del sistema la produce la
comunicacin entre los nodos, y es por esta
razn por la que se define el acoplamiento
Ejs. Una nica imagen del kernel para todos los
nodos, o cada nodo con su imagen.
Arquitecturas y Sistemas Operativos - Lic. en Bioinformtica - F.I. U.N.E.R.

Sistemas Distribuidos
Los Sistemas Distribuidos requieren:
Transparencia: se define a la transparencia a
la tcnica de ocultamiento de la separacin de
funciones que debe proveer un SD
Tcnicas de Comunicacin: Para poder
vincular los distintos componentes que se
encuentran separados
Integracin y manejo explcito del
sistema: Para tener un control real de todo el
sistema
Arquitecturas y Sistemas Operativos - Lic. en Bioinformtica - F.I. U.N.E.R.

Sistemas Distribuidos
Comparativa de sistemas multi cpu

Arquitecturas y Sistemas Operativos - Lic. en Bioinformtica - F.I. U.N.E.R.

Sistemas Distribuidos
Los sistemas distribuidos agregan un paradigma
(modelo) comn que ofrece una manera
uniforme de ver todo el sistema
Dnde podemos ver un paradigma unificador
en Linux?
Los Sistemas Distribuidos (SD) tienen una capa
de software llamada Middleware que otorga
uniformidad frente a la diversidad de sistemas
operativos y el hardware subyacente
Arquitecturas y Sistemas Operativos - Lic. en Bioinformtica - F.I. U.N.E.R.

El middleware es como el S.O. del Sistema Distribuido


Las aplicaciones interactan con un paradigma nico
Arquitecturas y Sistemas Operativos - Lic. en Bioinformtica - F.I. U.N.E.R.

Sistemas Distribuidos - Ejemplos

Arquitecturas y Sistemas Operativos - Lic. en Bioinformtica - F.I. U.N.E.R.

Sistemas Distribuidos - Ejemplos

Arquitecturas y Sistemas Operativos - Lic. en Bioinformtica - F.I. U.N.E.R.

Sistemas Distribuidos - Ejemplos

Arquitecturas y Sistemas Operativos - Lic. en Bioinformtica - F.I. U.N.E.R.

Clster
Un conjunto de mquinas unidas por una red de
comunicacin trabajando por un servicio
conjunto

Arquitecturas y Sistemas Operativos - Lic. en Bioinformtica - F.I. U.N.E.R.

Clster

Arquitecturas y Sistemas Operativos - Lic. en Bioinformtica - F.I. U.N.E.R.

Clsteres, caractersticas:
Un clster consta de 2 o ms nodos
Los nodos de un clster estn conectados entre
s por al menos un canal de comunicacin
Los clster necesitan software de control
especializado (de aplicacin y de control del
sistema)
Pueden tolerar fallas de componentes
Requieren capacidad para balancear carga
Se pueden agregar componentes sin interrumpir
(hot deploy)
Arquitecturas y Sistemas Operativos - Lic. en Bioinformtica - F.I. U.N.E.R.

Clster - Caractersticas
Un clster consta de 2 o ms nodos
Los nodos de un clster estn conectados entre
s por al menos un canal de comunicacin
Los clster necesitan software de control
especializado (de aplicacin y de control del
sistema)
Pueden tolerar fallas de componentes
Requieren capacidad para balancear carga
Se pueden agregar componentes sin interrumpir
(hot deploy)
Arquitecturas y Sistemas Operativos - Lic. en Bioinformtica - F.I. U.N.E.R.

Clsteres Tipos de control


Control centralizado: se hace uso de un nodo
maestro desde el cual se puede configurar el
comportamiento de todo el sistema. Este nodo es un
punto crtico del sistema aunque es una ventaja para una
mejor gestin del clster
Control descentralizado: en un modelo distribuido
donde cada nodo debe administrarse y gestionarse.
Tambin pueden ser gestionados mediante aplicaciones
de ms alto nivel de manera centralizada, pero la
mayora de la gestin que hace el nodo local es leer
archivos de configuracin de su propio nodo
Arquitecturas y Sistemas Operativos - Lic. en Bioinformtica - F.I. U.N.E.R.

Clsters Clasificacin
Alto rendimiento (HP, high performance)
Los clsteres de alto rendimiento han sido creados para
compartir el recurso ms valioso de un ordenador, es
decir, el tiempo de proceso. Cualquier operacin que
necesite altos tiempos de CPU puede ser utilizada en un
clster de alto rendimiento, siempre que se encuentre un
algoritmo que sea paralelizable.

Arquitecturas y Sistemas Operativos - Lic. en Bioinformtica - F.I. U.N.E.R.

Clsteres Clasificacin
Alta disponibilidad (HA, high availability)
Los clsteres de alta disponibilidad son bastante
ortogonales en lo que se refieren a funcionalidad a un
cluster de alto rendimiento. Los clsteres de alta
disponibilidad pretenden dar servicios 7/24 de cualquier
tipo, son clsteres donde la principal funcionalidad es
estar controlando y actuando para que un servicio o
varios se encuentren activos durante el mximo periodo
de tiempo posible
Arquitecturas y Sistemas Operativos - Lic. en Bioinformtica - F.I. U.N.E.R.

Clsteres Clasificacin
Alta confiabilidad (HR, high reliability)
Por ultimo, estn los clsteres de alta confiabilidad.
Estos clster tratan de aportar la mxima confiabilidad
en un entorno, en la cual se necesite saber que el sistema
se va a comportar de una manera determinada. Puede
tratarse por ejemplo de sistemas de respuesta a tiempo
real.

Arquitecturas y Sistemas Operativos - Lic. en Bioinformtica - F.I. U.N.E.R.

Clsteres Problemas que resuelven


Generalmente los problemas de computo suelen estar
ligados a clculos matemticos

Renderizaciones de grficos
Compilacin de programas
Compresin de datos
Descifrado de cdigos
Rendimiento del sistema operativo, (incluyendo en l, el
rendimiento de los recursos de cada nodo)
Simulaciones In Sillico (interacciones entre protenas,
molculas, acidos nuclicos, fluidos, estructuras, etc.)
Arquitecturas y Sistemas Operativos - Lic. en Bioinformtica - F.I. U.N.E.R.

Clsteres
Fin

Arquitecturas y Sistemas Operativos - Lic. en Bioinformtica - F.I. U.N.E.R.

También podría gustarte