1. INGENIERÍA EN SISTEMA COMPUTACIONALES
Procesos y modelos arquitectónicos
de Software
INTRODUCCIÓN A LOS
SISTEMAS DISTRIBUIDOS
octubre 2019
2. En el año de 1972, el profesor de la
universidad de Stanford, Michael J.
Flynn propuso una categorización de los
sistemas computacionales basado en la
cantidad de flujos de datos y flujos de
instrucciones que dichos sistemas
podían procesar de manera simultanea.
3. Taxonomía de Flynn
Simple Multiple
Simple SISD SIMD
Múltiple MISD MIMD
FLUJOS
DE
INSTRUCCIONES
FLUJOS DE DATOS
4. Sistemas SISD (Single Instruction Single Data)
Sistemas monoprocesador capaces de procesar
instrucciones de forma secuencial sobre un único
conjunto de datos.
Estos sistemas son el ejemplo más claro del modelo de
Von Neumann. Hasta el año de 2004 este fue el tipo de
arquitectura más popular entre los sistemas de cómputo
domésticos y en la mayoría de los sistemas comerciales.
5. Sistemas SIMD (Single Instruction Multiple Data)
Estos sistemas son capaces de enviar una
misma instrucción a múltiples unidades de
datos. Este tipo de sistemas son capaces de
poner en práctica el paralelismo a nivel de
datos, lo que permite procesar una misma
consulta u operación sobre una gran cantidad
de datos.
6. Sistemas MISD (Multiple Instruction Single Data)
Este tipo de sistemas procesan distintos flujos de
instrucciones sobre un mismo conjunto de datos, lo
cual proporciona paralelismo a nivel de instrucciones.
A nivel práctico este tipo de arquitecturas carece se
interés por lo cual no se cuenta con ejemplos de
ellos.
7. Sistemas MIMD (Multiple Instruction Multiple Data)
Estos sistemas proporcionan la capacidad de paralelismo
tanto a nivel de instrucciones como de datos. Lo cual
supone un potencial de procesamiento superior
directamente relacionado con la cantidad de flujos de
instrucciones y flujos de datos que sean capaces de
procesar.
Algunos de los principales ejemplos de este tipo de
arquitecturas son los Sistemas de Clúster y los Sistemas
Distribuidos.
8. Un clúster es un conjunto de procesadores semi
independientes interconectados para compartir su
capacidad de procesamiento.
En un clúster los procesadores trabajan de forma
independiente una vez que les ha sido asignada una
tarea por el sistema central de control, una vez
generados los resultados, éstos son enviados de vuelta al
control central.
Se llama nodos a los puntos de interconexión de un
clúster y estos no pueden operar si ha fallado el sistema
central de control.
9. Un sistema distribuido esta conformado por
sistemas autónomos funcionales que se
coordinan para compartir sus recursos tanto de
hardware como de software.
Estos sistemas no dependen de un sistema
central de control sino que comparten las
funciones de coordinación del trabajo
colaborativo.
10. Los elementos que integran un sistema
distribuido se denominan sitios ya que a
diferencia de los nodos del clúster, cada sitio
puede seguir operando aun cuando haya
quedado completamente aislado del resto del
sistema distribuido.
11. CARACTERÍSTICAS DE LOS SISTEMAS DISTRIBUIDOS
• Transparencia: Visión de sistema único.
• Tolerancia a Fallos : Sistemas autónomos colaborando.
• Escalabilidad: Capacidad de crecer o decrecer.
• Confiabilidad: Estado global del sistema.
• Heterogeneidad: Múltiples arquitecturas de hardware y
software locales, múltiples tipos de red.
12. Muchas gracias por su atención.
“Educación para Transformar la Vida”
M.C. GRACIELA ALICIA VIZCAINO PAZ