Академический Документы
Профессиональный Документы
Культура Документы
Tecnologas de comunicaciones:
Protocolos de comunicaciones.
Redes de rea local (LAN): Coste y prestaciones.
Internet
Factores comerciales:
Comercio electrnico: e-comerce.
Informacin distribuida (WWW).
Reduccin de costes.
Caractersticas de un Sistema
Distribuido
Definicin:
Un sistema distribuido es una coleccin de computadoras independientes que
aparece ante los usuarios del sistema como una nica computadora.
Tradicionalmente (1972):
Clasificacin de Flynn: SISD, SIMD, MISD, MIMD
Caractersticas de un Sistema
Distribuido
Un sistema distribuido implica las siguientes
consecuencias:
No existe un reloj comn: Afecta a cualquier aspecto de
coordinacin y mensajes.
Concurrencia global: Los elementos del sistema se
ejecutan realmente en paralelo.
Fallos independientes: Los modos de fallo del sistema
pueden ser locales a un subconjunto de sus componentes.
Evolucin de los Sistemas
Operativos
Sistema Objetivos
Gestin de recursos,
Sistema Operativo
Mquina extendida,
Centralizado
(Virtualidad)
Sistema Operativo Comparticin de recursos,
en Red (Interoperabilidad)
Vista nica de varias
Sistema Operativo
computadoras
Distribuido
(Transparencia)
Sistema Trabajo cooperativo,
Cooperativa (Autonoma)
Capas de un Sistema Operativo
La visin esquemtica de un
sistema operativo comprende Usuarios
los siguientes niveles: Aplicaciones
Servicios
Kernel
Hardware
Responsabilidades del Kernel
Servicios Kernels Monolticos:
Muchas funcionalidades dentro del kernel:
Kernel
planificador, gestin de memoria, drivers,...
Computadora
m-Kernels:
Se sacan funcionalidades del kernel. Slo quedan: Servicios
(i) comunicacin entre procesos, (ii) administracin m-Kernel
de memoria, (iii) administracin y planificacin de
Computadora
bajo nivel y (iv) entrada/salida de bajo nivel
Servicios Distribuidos:
Servicios Estructura de sistema distribuido. Dependiendo
del nivel se habla de: Sistema Operativo
m-Kernel m-Kernel m-Kernel
Distribuido, Sistema en Red o (Cooperativo).
Heterogeneidad de un Sistema
Distribuido
Un sistema distribuido puede estar formado por multitud de elementos
conectados por redes LAN o WAN:
Terminales X y Estaciones Java (Network Computer).
PCs y estaciones de trabajo.
Sistemas porttiles (redes mviles: GSM, WAP y ...)
Minicomputadores.
Supercomputadores.
Multiprocesadores con memoria compartida o no.
Servidores especializados (de almacenamiento, de impresin, ...).
Sistemas empotrados.
Fomentada por los siguientes factores:
Extensibilidad de los sistemas distribuidos.
Especializacin de los servidores.
Ventajas de los Sistemas Distribuidos
Caractersticas:
Ligeras variaciones sobre versiones tradicionales.
Slo hay una copia del sistema operativo.
Concurrencia se traduce en paralelismo real ( tiempo compartido).
Comercialmente aceptados (Linux, WinNT, Solaris, AIX, ...).
Plantea retos para: la ejecucin del ncleo en varios procesadores
(llamadas al sistema concurrentes) , los mecanismos de sincronizacin
(spin-locks), optimizacin y planificacin (afinidad al procesador), ...
Sistemas Operativos Distribuidos
(SOD)
Definicin:
Un sistema operativo distribuido es un conjunto de procesadores interconectados por
redes que ocultan dicha caracterstica mostrando una visin al usuario de
uniprocesador virtual.
Caractersticas:
Ejecuta sobre un sistema distribuido haciendo creer a los usuarios que se
trata de un sistema centralizado.
Trasparencia: Debe ocultar factores derivados de la distribucin.
Es fcil de decir pero no de hacer.
Cada sistema alcanza hasta cierto punto esta meta.
Los fracasos pueden generar frustraciones en los usuarios.
Sistemas Operativos Distribuidos
(SOD)
Problemtica:
Cada nodo tiene su copia del sistema operativo: Qu tareas se realizan
localmente y cules son globales?
Cmo lograr exclusin mutua sin memoria compartida?
Cmo tratar los interbloqueos sin un estado global?
Planificacin de procesos: Cada copia del sistema operativo tiene su cola de
planificacin (migracin de procesos).
Cmo crear un rbol de ficheros nico?
Implicaciones de la falta de reloj nico, la presencia de fallos o la
heterogeneidad.
Principal aportacin:
Se han desarrollado nuevos conceptos y planteamientos que se han podido
trasladar a los otros modelos de sistemas distribuidos.
Evolucin de los SOD
Primeros SO de red:
Incluir servicios de red en SO convencional
Ejemplo: UNIX 4BSD (1980)
Paulatina incorporacin de ms funcionalidad:
ONC de Sun (1985): incluye NFS, RPC, NIS
Primeros SOD:
Nuevos SO pero basados en arquitecturas convencionales (monolticas)
Ejemplo: Sprite de la Universidad de Berkeley (1988)
SOD basados en m-kernel. Ejemplos:
Mach de CMU (1986)
Amoeba diseado por Tanenbaum (1984)
Chorus de INRIA en Francia (1988)
Sistemas Operativos en Red
Definicin:
Red de computadoras dbilmente acopladas en las que no existe un control externo
directo sobre el hardware/software de cada computadora para la comparticin de
recursos.
Caractersticas:
No dan la visin de uniprocesador virtual (mquinas independientes).
Cada una ejecuta una copia de sistema operativo (distinto).
Sistema operativo convencional + utilidades de red.
Protocolos de comunicacin para intercambio de recursos y acceso a servicios
de alto nivel.
Desde rcp/rlogin hasta Open Network Computing (ONC) de Sun.
Sistemas Cooperativos
Definicin:
Sistemas software orientados a servicios de alto nivel que requieren el
soporte de mecanismos de comunicacin en base a los cuales los protocolos
de comunicaciones de alto nivel se construyen.
Caractersticas:
Se mantiene el grado de trasparencia sacrificando la visin de
nico sistema. Son sistemas autnomos independientes.
Se construyen en base a middlewares (CORBA, DCE, DCOM, ...)
Los sistemas resultan de la integracin de mltiples servicios
proporcionados por diferentes elementos de la red.
Middleware
Middleware:
Capa de software que ejecuta sobre el sistema operativo local ofreciendo
unos servicios distribuidos estandarizados.
Sistema abierto independiente del fabricante.
No depende del hardware y sistema operativo subyacente.
Ejemplos:
DCE (Open Group). Middleware
CORBA (OMG).
SO SO SO
...
Hardware Hardware Hardware
Objetivos de un Sistema Distribuido
Factores:
Mayor nmero de procesadores
Elementos crticos:
Especialmente la red: Latencia de la comunicacin, uso de caches, ...
Grano de paralelismo (relacin proceso/comunicacin).
Replicacin de elementos/tareas.
Equilibrado de carga.
Capacidad de Crecimiento
Diseo de un sistema distribuido debe evitar cuellos de botella:
Componentes centralizados
Tablas centralizadas
Algoritmos centralizados
Definicin de responsabilidades:
Sistemas con -kernel:
Comunicacin entre procesos.
Cierta administracin de memoria.
Administracin y planificacin de procesos (limitada y de bajo nivel).
Entrada/salida de bajo nivel.
Tecnologas de comunicacin:
Paso de mensajes: Berkeley sockets.
Llamada a procedimientos remotos: RPC.
Tecnologas de objetos distribuidos: CORBA, DCOM, EJB
Cdigo mvil: Entornos de agentes.
Sistemas de Ficheros Distribuidos
Comprende:
Sistemas de ficheros distribuidos (SFD): NFS, AFS.
Servicios de nombres: DNS, COS-Naming (CORBA).
Servicios de directorio: X.500, LDAP, JNDI.
Cuestiones:
Arquitectura de los servicios.
Almacenamiento intermedio: caching.
Replicacin y coherencia.
Servicios de Sincronizacin y
Coordinacin
Comprende los conceptos de:
Tiempo en entornos distribuidos: Sincronizacin de relojes y relojes
lgicos.
Concurrencia y Paralelismo: Exclusin mutua e interbloqueos.
Algoritmos distribuidos: Eleccin de lder, coordinacin, ...
Transacciones: Propiedades ACID, modelos de commit/rollback.
Modelos de consistencia
Gestin de Procesos
Taxonoma de los procesos:
Niveles de granularidad.
Congelacin de procesos (persistencia).
Migracin de procesos (estado/cdigo).
Planificacin de procesos:
Planificacin interna: Procesos y threads.
Planificacin global.
Migracin y equilibrado de carga.
Aprovechamiento de mquinas inactivas.
Servicio de Seguridad
Tipologa de los ataques:
Privacidad y confidencialidad.
Autenticacin (spoofing).
Denegacin de servicio.
Gracias
por su atencin
Yallerco