Publicado el 9 de Mayo del 2019
619 visualizaciones desde el 9 de Mayo del 2019
1,7 MB
45 paginas
Creado hace 10a (02/05/2013)
Sistemas de Operación II
Arquitecturas de Hardware
en Sistemas Distribuidos
Prof. Carlos Figueira
Basado en material de
Yudith Cardinale (USB)
Andrew Tanembaum y Marteen van Steen
Contenido
● Definición de Sistemas Distribuidos
● Aspectos de software
● Aspectos de hardware
● Aspectos de diseño
Carlos Figueira/USB
2
Definición de Sistemas
Distribuidos
Colección de computadores independientes
que se presentan ante los usuarios como un
único sistema coherente
Aspectos de hardware: Los computadores son
independientes
Aspectos de software: los usuarios piensan que
existe un único sistema
Carlos Figueira/USB
3
Definición de Sistemas
Distribuidos
Consecuencias de los sistemas
distribuidos:
Concurrencia
Inexistencia de reloj global
Fallas independientes
Carlos Figueira/USB
4
Aspectos de Software:
Conceptos
Los sistemas de operación para sistemas
distribuidos se dividen en:
Software débilmente acoplado:
Permite a los usuarios y máquinas ser
fundamentalmente independientes unos de otros
Los componentes interactúan cuando es necesario
Software fuertemente acoplado:
Se requiere la colaboración de todos los elementos
del software para llevar a cabo un objetivo común
Comunicación intensiva
Carlos Figueira/USB
5
Aspectos de Software:
Conceptos
SISTEMAS DE OPERACIÓN DISTRIBUIDOS:
Colección de componentes de software que
simplifican las tareas de programación y soportan un
amplio rango de aplicaciones
Son modulares y extensibles: se pueden agregar
respuesta a nuevas
nuevos componentes en
necesidades
Poseen mecanismos de comunicación y esquemas
de protección globales
Software fuertemente acoplado
Usados para sistemas homogéneos
Carlos Figueira/USB
6
Aspectos de Software:
Conceptos
SISTEMAS PARALELOS:
Buscan obtener máxima velocidad en problema(s)
determinado(s)
Software fuertemente acoplado
SISTEMAS DE OPERACIÓN DE REDES:
Conjunto de computadores conectados por una red
Existe autonomía en cada estación
Software débilmente acoplado
Usados para sistemas heterogéneos
Localización de los objetos no es transparente
Carlos Figueira/USB
7
Aspectos de Software:
Conceptos
SISTEMAS DE OPERACIÓN PARA
MULTIPROCESADORES
Conjunto de procesadores conectados por un
bus
Existe una sola memoria (memoria
compartida)
Existe un único sistema de operación
Sincronización con semáforos y monitores
Carlos Figueira/USB
8
Aspectos de Software:
Conceptos
SISTEMAS DE OPERACIÓN PARA
MULTICOMPUTADORES
Conjunto de máquinas conectadas por una
red
Desarrollado para multicomputadores
homogéneos
La comunicación se realiza a través de pase
de mensajes
Carlos Figueira/USB
9
Aspectos de Software:
Conceptos
SISTEMAS DE MEMORIA COMPARTIDA
DISTRIBUIDA:
Sobre sistemas multicomputadores, de
memoria distribuida, se simula memoria
compartida
Se usan los mecanismos de comunicación y
sincronización de sistemas multiprocesadores
Carlos Figueira/USB
10
Aspectos de Software:
Conceptos
Capas intermedias (Middlewares)
Componentes (no son sistemas) que toman las
ventajas de los sistemas de operación distribuidos
(transparencia y facilidad de uso) y los sistemas de
operación de redes (escalabilidad y flexibilidad)
Se monta sobre sistemas de operación locales
diferentes
Integra total heterogeneidad
Carlos Figueira/USB
11
Aspectos de Hardware
● Hardware fuertemente acoplado:
El retardo del envío de un mensaje es poco:
baja latencia
La tasa de transferencia de datos es alta: buen
ancho de banda
Generalmente son de memoria compartida
● Hardware débilmente acoplado:
Latencia alta
Bajo ancho de banda
Carlos Figueira/USB
12
Aspectos de Hardware
● Taxonomía de Flynn (1972): - Basada en el
Nro. de flujos de instrucciones y en el Nro.
de flujos de datos.
SISD: Single Instruction, Single Data
Computadores de 1 CPU.
SIMD: Single Instruction, Multiple Data
Computadores vectoriales.
Computadores paralelos.
Carlos Figueira/USB
13
Aspectos de Hardware
Multiple
MISD:
Data.
No hay computadores en esta clasificación.
Instruction, Single
Instruction, Multiple
Multiple
MIMD:
Data.
Sistemas Distribuidos.
Computadores paralelos.
Clusters de PCs y estaciones de trabajo
Carlos Figueira/USB
14
Aspectos de Hardware
● Clasificación de Tanenbaum para los Sistemas
MIMD.
Carlos Figueira/USB
15
Aspectos de Hardware
Multiprocesadores basados en Buses
Alivia la
sobrecarga del
bus y aumenta el
rendimiento
Problema con el cache: Memoria Incoherente
Solución:
–Cache de escritura (write-through cache)
–Cache Monitor (snoopy cache)
–Software de consistencia
Carlos Figueira/USB
16
Aspectos de Hardware
Multiprocesadores
basados
en
conmutadores:
Útil para conectar alrededor de 64
procesadores
Se basan en
Dividir la memoria en módulos
Conectar los CPUs a la memoria a través de
conmutadores
Carlos Figueira/USB
17
Aspectos de Hardware
Con conmutador de cruceta (crossbar switch)
N memorias
N procesadores
– Problema: El Nro.
de puntos de cruce
puede ser alto: N2
– Solución: Redes
bloqueantes (p.e.,
Omega)
Carlos Figueira/USB
18
Aspectos de Hardware
Usando una Red
Omega
– Nro. de etapas:
log2N
– Nro. de
conmutadores por
etapa: N/2
– Nro. Total de
conmutadores: N/2 *
log2N
– Problema: Retardo
Carlos Figueira/USB
19
Aspectos de Hardware
Usando un Sistema jerárquico o Acceso
no uniforme a Memoria (NUMA)
– Cada CPU
tiene su memoria
Acceso rápido a su propia memoria y
lento a la memoria de otros CPUs
– Otro Problema: Distribución de
los
programas y datos para que los accesos
sean rápidos.
local
Carlos Figueira/USB
20
Aspectos de Hardware
Multicomputadores basados en Buses:
Estaciones
de Trabajo
Ventaja frente a esquemas anteriores: sólo hay que
resolver los problemas de comunicación entre
CPUs y no entre CPUs - Memoria.
Carlos Figueira/USB
21
Aspectos de Hardware
Multicomputadores con conmutadores:
Malla (Parsytec)
– El último elemento en una fila está conectado al
primero en la próxima.
Hipercubos (Ncube)
Carlos Figueira/USB
22
Aspectos de Hardware
Multicomputadores con conmutadores:
MPPs (Massively Parallel Processors)
Clusters
Multicomputadores heterogéneos conectados con
conmutadores
Clusters Heterogéneos
Carlos Figueira/USB
23
Aspectos de Hardware
Massively Parallel Processors
Computadores paralelos con cientos de procesadores
Top 500
Aspectos de Hardware
Procesadores masivamente paralelos
Lista de las máquinas más rápidas (TOP 500, www.top500.org)
Aspectos de Hardware
CLUSTERS
Computadoras genéricas unidas por red de alta
velocidad y bajo retardo
Clusters y MPP dominan la lista TOP500
Cómo construir clusters:
Conjunto de estaciones de trabajos, PCs
En Racks
Sin disco
Con Disco
Carlos Figueira/USB
26
Aspectos de Hardware
Cluster Miranda, Lab. CAR, USB
Carlos Figueira/USB
27
Aspectos de Hardware
Ventajas de los clusters:
Alto rendimiento
Alta disponibilidad
Balance de carga
Mejor relación costo/beneficio
Escalabilidad
Reutilización
Disponibilidad de herramientas Open source (Ej.
Gluster, MOSIX, etc.)
Carlos Figueira/USB
28
Los Sistemas Distribuidos proveen:
● Transparencia
● Concurrencia
● Compartir recursos
● Inexistencia de un reloj global
● Integración de heterogeneidad
● Fallas independientes
● Ejemplos: Internet, Intranets, Computación móvil,
Computación Ubicua.
Carlos Figueira/USB
29
Aspectos del Diseño de los SOD
HETEROGENEIDAD
● En aspectos como redes, hardware,
sistemas de operación, lenguajes de
programación e implementaciones de
diferentes desarrolladores
● Se puede ocultar con una capa
middleware.
Carlos Figueira/USB
30
Aspectos del Diseño de los SOD
COMPARTIR RECURSOS
● Importante para reducir costos y por
necesidades específicas
● Se requiere de administradores de recursos
para acceder, manipular y actualizar los
recursos en forma confiable y consistente
Carlos Figueira/USB
31
Aspectos del Diseño de los SOD
TRANSPARENCIA
● No debe hacer distinciones entre recursos
locales y remotos
● Debe facilitar la movilidad del usuario
● Puede ser alcanzada en dos niveles:
Ocultar la distribución a los usuarios
Haciendo que el sistema luzca transparente a
los programas
Carlos Figueira/USB
32
Aspectos del Diseño de los SOD
TRANSPARENCIA
● Tipos de Transparencia:
De localización. Esconde dónde se localizan los
recursos
Los usuarios no pueden indicar la ubicación de los
recursos de hardware o software
machine1: proc.c
De acceso. Esconde diferentes representaciones de
datos y cómo son accedidos los recursos
Permite acceder los recursos locales y remotos
empleando las mismas operaciones
Carlos Figueira/USB
33
Aspectos del Diseño de los SOD
TRANSPARENCIA
De migración: No hay cambio de nombres cuando
se moviliza un recurso
De replicación
El SO copia los archivos más usados en los
diferentes servidores sin que lo noten los
usuarios
Cada servidor tiene toda la estructura del árbol
de directorios
Carlos Figueira/USB
34
Aspectos del Diseño de los SOD
TRANSPARENCIA
De concurrencia
Los usuarios no deben notar la existencia de otros
cuando accedan a un mismo recurso.
De paralelismo
Ideal: Los programadores y usuarios no necesitan indicar
en forma explícita cómo se van a distribuir sus procesos
y datos (El Sistema de Operación se ayuda con el
compilador).
Frente a fallas: esconde la falla y recuperación de
un recurso
Carlos Figueira/USB
35
Aspectos del Diseño de los SOD
FLEXIBILIDAD
● Posibilidad de que el sistema pueda ser
extendido de varias formas.
● Núcleo Monolítico vs. Micro-núcleo
Núcleo Monolítico (Sprite):
Propo
Comentarios de: Arquitecturas de Hardware en Sistemas Distribuidos - Sistemas de Operación II (0)
No hay comentarios