Download Un sistema operativo distribuido debería

Document related concepts

Computación distribuida wikipedia , lookup

Middleware wikipedia , lookup

Plan 9 from Bell Labs wikipedia , lookup

Computación grid wikipedia , lookup

Clúster (informática) wikipedia , lookup

Transcript
INTRODUCCIÓN
CONCEPTOS BÁSICOS
•
Programa: Conjunto de instrucciones a realizar.
•
Proceso: Programa en ejecución
•
Multiproceso: Varios procesos ejecutándose con un solo procesador
•
Multitarea: Varias aplicaciones ejecutándose a la vez
•
Red de Computadoras: Conjunto de computadoras conectadas entre sí
•
Protocolo: es un conjunto de reglas e instrucciones que gobiernan la comunicación en un
sistema distribuido, es decir, el intercambio de mensajes.
¿QUÉ ES UN SISTEMA DISTRIBUIDO?
Un Sistema Distribuido es una colección de computadores independientes que aparecen ante los
usuarios como un único sistema coherente.
•
•
Físicos: Compartición de recursos de hardware, ejemplo: una impresora
Lógicos: Compartición de aplicaciones, memoria, etc, es decir, software
CARACTERÍSTICAS DE LOS SISTEMAS DISTRIBUIDOS
Las características más importantes de los Sistemas Distribuidos son:
Compartición de recursos:
 Acceso a recursos remotos.
 Modelo cliente-servidor
 Modelo basado en objetos
Transparencia: Todo el sistema funcione de forma similar en todos los puntos de la red,
independientemente de la posición del usuario.
Capacidad de crecimiento (ESCALABILIDAD): Un sistema operativo distribuido debería
funcionar tanto para una docena de ordenadores como varios millares. Igualmente, debería no ser
determinante el tipo de red utilizada (LAN o WAN) ni las distancias entre los equipos, etc.
Tolerancia a fallos, Disponibilidad: Replicación
Concurrencia: acceso concurrente a recursos compartidos sin interferencias
 Velocidad:
 Sistemas abiertos:
OBJETIVOS Y PROBLEMAS DE DISEÑO





Rendimiento
Capacidad de crecimiento
Transparencia
Consistencia
Fiabilidad:
– Tolerancia a fallos
– Disponibilidad
– Recuperación
– Consistencia
– Confidencialidad
– Rendimiento predecible, calidad de servicio
SISTEMAS DISTRIBUIDOS Y PARALELOS
• Sistemas distribuidos
– Objetivo: compartir recursos y colaborar.
– Redes de computadores
• Sistemas paralelos
– Objetivo: ejecutar un programa muy rápido (speedup).
– Máquinas paralelas (arquitecturas dedicadas)
- Multiprocesadores
• Multicomputadores
– Redes de estaciones de trabajo trabajando como un multicomputador (clúster)
PROBLEMAS DE DISEÑO
NOMBRADO:
 Los usuarios designan a los objetos mediante un nombre.
 Los programas designan a los objetos mediante un identificador.
 Resolver un nombre implica obtener el identificador a partir del nombre.
COMUNICACIÓN Y SINCRONIZACIÓN ENTRE PROCESOS:
 Forma básica de C y S: paso de mensajes.
– Mecanismos síncronos
– Mecanismos asíncronos
 Comunicación cliente-servidor
– Primitivas de comunicación básicas (send, receive)
– Llamadas a procedimientos remotos
– Invocación de objetos remotos
ESTRUCTURA DE SOFTWARE:
 Estructura software típica de un sistema centralizado
 El sistema operativo
– Gestiona los recursos
– Ofrece servicios
REPARTO DE LA CARGA:
 Existen tres posibilidades para estructurar el software de unsistema distribuido
– Emplear sistemas operativos en red
– Utilizar un sistema operativo distribuido
– Utilizar middlewares o entornos distribuidos
 Lo importante es ofrecer un soporte para la programación de aplicaciones distribuidas
fácil y transparente

CALIDAD DE SERVICIO:
– RENDIMIENTO
– FIABILIDAD