Вы находитесь на странице: 1из 6

Bibliografa Sistemas Operativos Distribuidos

Sistemas Operativos Distribuidos


Andrew S. Tanenbaum. 1996, Prentice-Hall Captulo 1

ltima edicin en ingls:


Ing. Alfonso Guijarro Rodrguez alfonso_guijarro@yahoo.es
Distributed Systems: Principles and Paradigms 2002, Prentice-Hall

Sistemas Operativos Una visin aplicada


Jess Carretero Prez 2001, McGrawHill
1 2

Temas fundamentales del Curso


Conceptos bsicos de Sistemas Distribuidos. Caractersticas de los sistemas distribuidos. Concurrencia en Sistemas Distribuidos. La programacin de aplicaciones en sistemas distribuidos. Mecanismos de comunicacin y sincronizacin. Lenguajes para Programacin Distribuida. Administracin de recursos en Sistemas Distribuidos. Esquemas de comunicacin. Sistemas Operativos Distribuidos. Modelos de administracin de procesos y datos. Datos distribuidos. Transacciones distribuidas. Problemas de seguridad, consistencia y replicacin BDD.

Terminologa
Definicin de Redes Redes por su extensin geogrfica CSMA/CD TCP/IP ISO OSI POSIX Ethernet Internet Intranet Extranet
3 4

Sistemas Distribuidos
El concepto de sistema distribuido se opone al de sistema centralizado.

Definicin de sistema distribuido


Definicin: Es un conjunto de procesadores, posiblemente heterogneos, sin memoria ni reloj comn que se encuentra conectados a travs de una red de interconexin. Los Sistemas Distribuidos dan la apariencia de ser un solo computador.

Estos dos sistemas operativos son definidos por el manejo o uso de recursos:
Centralizado: Permite utilizar los recursos de un solo computador (memoria, CPU, disco, perifricos... ) Distribuido: Permite utilizar los recursos de ms de un ordenador al mismo tiempo.

Sistema Distribuido segn dos puntos de vista:


Fsico: Es un conjunto de procesadores, posiblemente heterogneos, sin memoria ni reloj comn que se encuentra conectados a travs de una red de interconexin.

Caractersticas de un Sistema Distribuido.


Posibilidad de Compartir recursos Hardware Software Datos Ejemplo: una impresora en red Capacidad de Crecimiento Alto Rendimiento Mltiples procesadores permiten construir un sistemas de altas prestaciones Fiabilidad y Disponibilidad Mltiples procesadores conectados a una red Ejemplo: un servidor de archivos replicado en dos nodos.
o
7 8

Lgico: Es un conjunto de procesos que se ejecutan en una o mas computadores y que colaboran o se comunican entre ellos mediante el intercambio de mensajes.

Sistemas Distribuidos de Alto Rendimiento

Ventajas de un s.d. frente a un s.centralizado


Mejor relacin prestaciones/precio Ms velocidad total Crecimiento incremental Soporte a servicios i h S t i i inherentemente t t distribuidos (ej. correo, web, P2P) Mayor fiabilidad y disponibilidad

10

Ventajas de un s.d. frente a un s.centralizado


Con respecto a Sistemas Centralizados:
Una de las ventajas de los sistemas distribuidos es la economa, pues es mucho ms barato, aadir servidores y clientes cuando se requiere aumentar la potencia de procesamiento procesamiento. El trabajo en conjunto. Por ejemplo: en una fbrica de ensamblado, los robots tienen sus CPUs diferentes y realizan acciones en conjunto, dirigidos por un sistema distribuido.

Ventajas de un s.d. frente a un s.centralizado


Tienen una mayor confiabilidad. Al estar distribuida la carga de trabajo en muchas mquinas la falla de una de ellas no afecta a las dems, el sistema sobrevive como un todo. Capacidad de crecimiento incremental. Se puede aadir procesadores al sistema incrementando su potencia en forma gradual segn sus necesidades.

Ventajas de un s.d. frente a un s.centralizado


Con respecto a PCs Independientes:
Se pueden compartir recursos, como programas y perifricos, muy costosos. Ejemplo: Impresora , p , Lser, dispositivos de almacenamiento masivo, etc. Al compartir recursos, satisfacen las necesidades de muchos usuarios a la vez. Ejemplo: Sistemas de reservas de aerolneas. Se logra una mejor comunicacin entre las personas. Ejemplo: el correo electrnico.

Ventajas de un s.d. frente a un s.centralizado


Tienen mayor flexibilidad, la carga de trabajo se puede distribuir entre diferentes ordenadores.

Ventajas (2)
Prestaciones relativas: Resulta ms rentable aumentar la potencia del sistema CPU comprando ms ordenadores, que comprando una CPU ms potente. Velocidad: Un solo procesador no puede alcanzar tanta velocidad como queramos (existen lmites fsicos) Escalabilidad: Si se desea ms potencia, en un s.d. basta con comprar ms microprocesadores. Adems, los equipos antiguos pueden seguir dando servicio.
15

Ventajas (3)
Aplicaciones distribuidas: Muchas aplicaciones slo se conciben como distribuidas (correo electrnico, sistemas de , j p , informacin en Internet, trabajo corporativo, etc.) Fiabilidad: Si una sola mquina se viene abajo, el sistema en conjunto puede continuar dando servicio.

16

Ventajas ( 4)
Comparticin de recursos (discos, CPUs, impresoras, internet,...) Comparticin de informacin Facilidad de comunicacin interpersonal Flexibilidad de uso: todos los servicios estn disponibles desde cualquier puesto

Desventajas de un sistema distribuido


El principal problema es el software, es el diseo, implantacin y uso del software distribuido, pues presenta numerosos inconvenientes. Los principales interrogantes son los siguientes:
Q Qu tipo de S. O., lenguaje de p g p , g j programacin y aplicaciones son p adecuados para estos sistemas?. Cunto deben saber los usuarios de la distribucin?. Qu tanto debe hacer el sistema y qu tanto deben hacer los usuarios?.

La respuesta a estos interrogantes no es uniforme entre los especialistas, pues existe una gran diversidad de criterios y de interpretaciones al respecto.
17

Desventajas de un sistema distribuido


Problemas de comunicacin:
Fiabilidad (prdidas, corrupcin, desorden) Seguridad (No hay confianza, no toda la informacin viaja en la red esta cifrada) Ms coste en la comunicacin entre procesos

Desventajas de un sistema distribuido


Otro problema tiene que ver con las redes de comunicacin. Por ejemplo: -Perdida de mensajes, saturacin en el trfico, etc. Un problema que puede surgir al compartir datos es la seguridad de los mismos.

Fallos:
Ms probabilidad de fallos en algn punto Nuestro sistema local puede verse afectado por fallos en mquinas de otros lugares.

Heterogeneidad de los nodos (hw, SO) Imposibilidad de mantener un estado global Necesidad de software ms complejo
19

Conclusin Sistemas Distribuidos


En general se considera que las ventajas superan a las desventajas, si estas ltimas se administran seriamente.

Protocolos de Comunicacin
Mensaje: Objeto lgico que se intercambia entre dos o ms procesos. Paquete: Unidad de informacin que intercambia dos dispositivos de comunicacin. Protocolo: Conjunto de reglas que gobiernan el intercambio de paquetes y mensajes. Pila de Pil d protocolos: l Segmentado y ensamblado Encapsulado Control de conexin Control de flujo Control de errores Direccionamiento
22

Ejemplos de Redes y Pilas de protocolos

Objetivos de diseo de los sistemas distribuidos


Tasa de transferencia (KB/s, MB/s) Latencia (tiempo necesario para transferir un mensaje vaco) Tiempo de transferencia p
Latencia + (tamao mensaje)/tasa de transferencia

Paquetes/Segundos Capacidad de Crecimiento (mx 1024 nodos)

23

24

Objetivos de diseo de los sistemas distribuidos


Calidad de servicio (Ofrece un servicios segn las caractersticas dadas) Fiabilidad (Ofrecer mecanismos de deteccin d errores) d t i de ) Seguridad (Asegurar los datos que viajan por la red)

Evolucin histrica
Preliminares: arquitecturas paralelas(Multiproceso, escalabilidad, clustering), redes de ordenadores... Sistemas operativos en red
servicios especficos (sistemas de archivos, impresoras compartidas, RPC, etc.)

Sistemas operativos distribuidos


experimentos de los 70-80, sin xito

Middleware para sistemas distribuidos


Corba, Java, .Net, etc.

Web: explosin de servicios distribuidos


Buscadores, directorios, P2P, juegos en red

25

26

Evolucin histrica

Evolucin histrica

Sistema Operativo de Red

Sistema Operativo Distribuido

30

Middleware y Entornos Distribuidos

Servicios distribuidos y sistemas operativos distribuidos


Hasta hace una dcada, se planteaba como objetivo construir un sistema operativo distribuido.
La base estndar para construir cualquier sistema distribuido. distribuido

Lo que se ha conseguido es algo ms modesto, pero que s era viable:


definir arquitecturas estandarizadas para construir servicios distribuidos Implementar aquellos servicios concretos que sean ms necesarios y rentables
31 32

Administracin de un s.d.
La administracin se vuelve ms complicada
Cmo lanzamos un servicio distribuido? Cmo monitorizamos el servicio? Tenemos permiso para actuar sobre todos los servidores?

Fallos en un s.d.
Tipos de fallos:
fallo de un enlace fallo de una mquina prdida de mensajes fallos de ft f ll d software

Conclusin: el enfoque tradicional de administracin centralizada no es el ms adecuado en un sistema distribuido.

En un sistema asncrono, es imposible conocer con certeza si una mquina ha fallado. La deteccin de fallos se basa en suposiciones. Problema aadido: desconexiones temporales (particiones en la red)
33 34

Modelos de diseo de componentes distribuidos


El modelo natural en un s.d. es la interaccin cliente-servidor Enfoques:
Procesos/aplicaciones distribuidas Objetos distribuidos Servicios distribuidos

Tecnologas:
Paso de mensajes (tecnologa ms bsica) Llamada a procedimiento remoto (RPC) Llamadas a objetos remotos Servicios Web (Web Services, SOAP)
35

Вам также может понравиться