introduccion.ppt

Upload: bolivar-castillo-mendieta

Post on 12-Oct-2015

11 views

Category:

Documents


0 download

TRANSCRIPT

  • 5/21/2018 introduccion.ppt

    1/46

    Sistemas Operativos Distribuidos

    Presentacin

  • 5/21/2018 introduccion.ppt

    2/46

    Fernando Prez CostoyaJos Mara Pea Snchez

    Sistemas Operativos Distribuidos

    1

    Referencias Bsicas

    Distributed Operating SystemsA. S. TanenbaumPrentice-Hall, 1995

    Distributed Systems: Concepts and Design

    G. Coulouris, J. Dollimore, T. KindbergAddison-Wesley, 2001

    Pattern-Oriented Software Architecture: Patterns for

    Concurrent and Networked Objects (Vol 2).D. Schmidt, M. Stal, H. Rohnert, F. BruschmannWiley, 2000

  • 5/21/2018 introduccion.ppt

    3/46

    Fernando Prez CostoyaJos Mara Pea Snchez

    Sistemas Operativos Distribuidos

    2

    Referencias Bsicas

    Distributed Operating Systems: Concepts & PracticeD. L. GalliPrentice-Hall, 2000

    Distributed Operating Systems & Algorithms

    R. Chow, T. JohnsonAddison-Wesley, 1997

    Traduccin al Castellano Sistemas Operativos Distribuidos

    A. S. Tanenbaum

    Prentice-Hall, 1996

  • 5/21/2018 introduccion.ppt

    4/46

    Fernando Prez CostoyaJos Mara Pea Snchez

    Sistemas Operativos Distribuidos

    3

    ndice del Curso

    ndice de Temas Introduccin y conceptos Comunicacin en sistemas

    distribuidos

    Sistemas de ficheros distribuidosy servicios de directorio. Sincronizacin y coordinacin Sistemas de memoria distribuida

    Gestin de procesos Seguridad en sistemasdistribuidos

    TecnologasCORBA

    DCOMDCEJava:

    Jini

    RMIEJB

    En

    tornosDistri

    buidos

    y

    C

    asosdeEstudio

  • 5/21/2018 introduccion.ppt

    5/46

    Fernando Prez CostoyaJos Mara Pea Snchez

    Sistemas Operativos Distribuidos

    4

    Objetivos

    Conceptos

    (Objetivo Principal) Diseo de sistemas distribuidos (No slo sistemas operativos). Problemtica de sistemas distribuidos:

    Transacciones y concurrencia. Nombrado y organizacin.

    Seguridad. Configuracin y optimizacin.

    Tcnicas (Objetivo Secundario) Tecnologas y entornos de desarrollo distribuidos. Herramientas de desarrollo. Gua de referencias.

  • 5/21/2018 introduccion.ppt

    6/46

    Fernando Prez CostoyaJos Mara Pea Snchez

    Sistemas Operativos Distribuidos

    5

    Direcciones de Contacto

    Informacin Actualizada: Pgina de la asignatura:

    http://laurel.datsi.fi.upm.es/~ssoo/SOD/

    Profesores Responsables: Fernando Prez Costoya

    Jos Mara Pea Snchez

  • 5/21/2018 introduccion.ppt

    7/46

    Sistemas Operativos Distribuidos

    Introduccin yConceptos

  • 5/21/2018 introduccion.ppt

    8/46

    Fernando Prez CostoyaJos Mara Pea Snchez

    Sistemas Operativos Distribuidos

    7

    Contenidos del Tema

    Evolucin de los sistemas operativos: Definicin de sistema centralizado. Definicin de sistema distribuido.

    Ventajas y desventajas de los sistemas distribuidos.

    Sistemas operativos distribuidos. Sistemas operativos de red. Middlewares. Objetivos de un sistema distribuido. Componentes de un sistema distribuido. Notacin y formalismos.

  • 5/21/2018 introduccion.ppt

    9/46

    Fernando Prez CostoyaJos Mara Pea Snchez

    Sistemas Operativos Distribuidos

    8

    Arquitectura de Sistemas Centralizados

    nico computador (caro y de gran potencia) con terminalesalfanumricos directamente conectados.

    Entornos de empresa: Soporte multiusuario

    Uso de mainframeso minicomputadores Entornos cientficos:

    Ejecucin eficiente de aplicaciones Uso de supercomputadores

    Uso ocasional de la red: Transferir ficheros o logins remotos Interfaz de usuario poco amigable

    Interfaces grficas gastan muchos recursos

  • 5/21/2018 introduccion.ppt

    10/46

    Fernando Prez CostoyaJos Mara Pea Snchez

    Sistemas Operativos Distribuidos

    9

    Arquitectura de Sistemas Distribuidos

    Conjunto de procesadores conectados por una red Cada usuario tiene capacidad de procesamiento local que

    permite interfaces de usuario sofisticadas. Uso intensivo de la red para compartir recursos:

    dispositivos datos procesadores (migracin de procesos)

    Capacidad global de procesamiento disponible para:

    Servicio a mltiples usuarios Ejecucin paralela de una aplicacin

  • 5/21/2018 introduccion.ppt

    11/46

    Fernando Prez CostoyaJos Mara Pea Snchez

    Sistemas Operativos Distribuidos

    1

    Nacimiento de los Sistemas Distribuidos

    Causas: Tecnologa de microprocesadores: relacin potencia/coste.

    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.

  • 5/21/2018 introduccion.ppt

    12/46

    Fernando Prez CostoyaJos Mara Pea Snchez

    Sistemas Operativos Distribuidos

    11

    Caractersticas de un Sistema Distribuido

    Definicin:[Tan95]Un sistema distribuido es una coleccin de computadoras

    independientes que aparece ante los usuarios del sistema como

    una nica computadora.

    Recursos distribuidos para un trabajo comn.NcomputadorasUn servicionico a los usuarios.

    Tradicionalmente (1972): Clasificacin de Flynn: SISD, SIMD, MISD, MIMD

  • 5/21/2018 introduccion.ppt

    13/46

    Fernando Prez CostoyaJos Mara Pea Snchez

    Sistemas Operativos Distribuidos

    12

    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.

  • 5/21/2018 introduccion.ppt

    14/46

    Fernando Prez CostoyaJos Mara Pea Snchez

    Sistemas Operativos Distribuidos

    13

    Evolucin de los Sistemas Operativos

    Sistemas OperativosCentralizados.

    Sistemas Operativos

    en Red

    Sistemas Operativos

    Distribuidos

    SistemasCooperativos

    Sistema Objetivos

    Sistema OperativoCentralizado

    Gestin de recursos,Mquina extendida,(Virtualidad)

    Sistema Operativoen Red Comparticin de recursos,(Interoperabilidad)

    Sistema OperativoDistribuido

    Vista nica de variascomputadoras

    (Transparencia)

    SistemaCooperativa

    Trabajo cooperativo,(Autonoma)

  • 5/21/2018 introduccion.ppt

    15/46

    Fernando Prez CostoyaJos Mara Pea Snchez

    Sistemas Operativos Distribuidos

    14

    Capas de un Sistema Operativo

    La visin esquemtica de un sistema operativo comprende lossiguientes niveles:

    Hardware.

    Ncleo (kernel). Servicios del sistema. Programas de aplicacin.

    Usuarios.Hardware

    Kernel

    Servicios

    Aplicaciones

    Usuarios

  • 5/21/2018 introduccion.ppt

    16/46

    Fernando Prez CostoyaJos Mara Pea Snchez

    Sistemas Operativos Distribuidos

    15

    Responsabilidades del Kernel

    Kernel

    Servicios

    Kernel

    Servicios

    Computadora

    Computadora

    Kernel Kernel Kernel

    Servicios

    Kernels Monolticos:

    Muchas funcionalidades dentro del kernel:planificador, gestin de memoria, drivers,...

    Kernels:

    Se sacan funcionalidades del kernel. Slo quedan:(i) comunicacin entre procesos, (ii) administracinde memoria, (iii) administracin y planificacin debajo nivel y (iv) entrada/salida de bajo nivel

    Servicios Distribuidos:

    Estructura de sistema distribuido. Dependiendodel nivel se habla de: Sistema OperativoDistribuido, Sistema en Red o (Cooperativo).

  • 5/21/2018 introduccion.ppt

    17/46

    Fernando Prez CostoyaJos Mara Pea Snchez

    Sistemas Operativos Distribuidos

    16

    Heterogeneidad de un SistemaDistribuido

    Un sistema distribuido puede estar formado por multitud deelementos 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.

  • 5/21/2018 introduccion.ppt

    18/46

    Fernando Prez CostoyaJos Mara Pea Snchez

    Sistemas Operativos Distribuidos

    17

    Ventajas de los Sistemas Distribuidos

    Economa: Buena relacin rendimiento/coste Ley de Grosch (obsoleta):

    Prestaciones = cte x (Precio)2

    Alto rendimiento: Procesamiento paralelo.

    Soporte de aplicaciones inherentemente distribuidas. Por ejemplo: empresa distribuida geogrficamente Capacidad de crecimiento: Escalabilidad. Fiabilidad y disponibilidad: Tolerancia a (ciertos) fallos.

    Carcter abierto y heterogneo: Estndares de interoperabilidad.

    Compartir recursos y datos.

  • 5/21/2018 introduccion.ppt

    19/46

    Fernando Prez CostoyaJos Mara Pea Snchez

    Sistemas Operativos Distribuidos

    18

    Desventajas de los Sistemas Distribuidos

    Necesidad de un nuevo tipo de software: Ms complejo. No hay todava un acuerdo sobre cmo debe ser.

    Red de interconexin introduce nuevos problemas: Prdida de mensajes y saturacin. Latencia puede provocar que al recibir un dato ya est obsoleto. La red es un elemento crtico.

    Seguridad y confidencialidad

  • 5/21/2018 introduccion.ppt

    20/46

    Fernando Prez CostoyaJos Mara Pea Snchez

    Sistemas Operativos Distribuidos

    19

    Aplicaciones de los Sistemas Distribuidos

    Servicios Internet: correo, noticias, Web, ... nuevos servicios. Redes corporativas e intranets. Procesamiento paralelo:

    Procesamiento masivo (solucin a la eficiencia).

    Topologa distribuida (problemas de naturaleza distribuida) Sistemas distribuidos de gestin de bases de datos y

    explotacin de los mismos: e.g. Data Warehousing. Aplicaciones multimedia. Sistemas industriales distribuidos y aplicaciones de control. Sistemas distribuidos de tiempo real. ..... < y muchos ms >

  • 5/21/2018 introduccion.ppt

    21/46

    Fernando Prez CostoyaJos Mara Pea Snchez

    Sistemas Operativos Distribuidos

    2

    Distribucin de los Sistemas Operativos

    Sistemas operativos para multiprocesadores con memoriacompartida (SMP): Software fuertementeacoplado sobre Hardware fuertementeacoplado

    Sistema operativo distribuido (SOD): Software fuertementeacoplado sobre Hardware dbilmenteacoplado

    Sistema operativo en red: Software dbilmenteacoplado sobre Hardware dbilmenteacoplado

  • 5/21/2018 introduccion.ppt

    22/46

    Fernando Prez CostoyaJos Mara Pea Snchez

    Sistemas Operativos Distribuidos

    21

    Sistemas Operativos para SMPs

    Arquitecturas de varios procesadores (2 a 8) con memoriacompartida de acceso uniforme (SMP: Simetric Multiprocesors)

    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 desincronizacin (spin-locks), optimizacin y planificacin (afinidad alprocesador), ...

  • 5/21/2018 introduccion.ppt

    23/46

    Fernando Prez CostoyaJos Mara Pea Snchez

    Sistemas Operativos Distribuidos

    22

    Sistemas Operativos Distribuidos (SOD)

    Definicin:[Gal00]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.

  • 5/21/2018 introduccion.ppt

    24/46

    Fernando Prez CostoyaJos Mara Pea Snchez

    Sistemas Operativos Distribuidos

    23

    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 sucola 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.

  • 5/21/2018 introduccion.ppt

    25/46

    Fernando Prez CostoyaJos Mara Pea Snchez

    Sistemas Operativos Distribuidos

    24

    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)

  • 5/21/2018 introduccion.ppt

    26/46

    Fernando Prez CostoyaJos Mara Pea Snchez

    Sistemas Operativos Distribuidos

    25

    Sistemas Operativos en Red

    Definicin:[Cho97]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/rloginhasta Open Network Computing(ONC) de Sun.

  • 5/21/2018 introduccion.ppt

    27/46

    Fernando Prez CostoyaJos Mara Pea Snchez

    Sistemas Operativos Distribuidos

    26

    Sistemas Cooperativos

    Definicin:[Cho97]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.

  • 5/21/2018 introduccion.ppt

    28/46

    Fernando Prez CostoyaJos Mara Pea Snchez

    Sistemas Operativos Distribuidos

    27

    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). CORBA (OMG). ...

    Hardware

    SO

    Hardware

    SO

    Hardware

    SO

    iddlew re

  • 5/21/2018 introduccion.ppt

    29/46

    Fernando Prez CostoyaJos Mara Pea Snchez

    Sistemas Operativos Distribuidos

    28

    Objetivos de un Sistema Distribuido

    En general el desarrollo de sistemas distribuidos intenta ponersolucin a los siguientes objetivos:

    Transparencia. Fiabilidad. Rendimiento. Capacidad de crecimiento. Flexibilidad. Seguridad.

    Sistemas operativos distribuidos, sistemas en red y sistemascooperativos requieren diferentes facetas de estos objetivos.

  • 5/21/2018 introduccion.ppt

    30/46

    Fernando Prez CostoyaJos Mara Pea Snchez

    Sistemas Operativos Distribuidos

    29

    Transparencia

    Existen varios perfiles de trasparencia: Acceso: Manera de acceder a recurso local igual que a remoto. Posicin: Se accede a los recursos sin conocer su localizacin. Migracin: Recursos pueden migrar sin afectar a los usuarios. Concurrencia: Acceso concurrente no afecta a los usuarios.

    Replicacin: La existencia de rplicas no afecta a los usuarios. Fallos: La ocurrencia de fallos no afecta a los usuarios. Crecimiento: El crecimiento del sistema no afecta a los usuarios. Heterogeneidad:Carcter heterogneo no afecta a los usuarios.

    Es buena tanta transparencia? A veces el usuario precisa conocer cmo es el sistema subyacente

  • 5/21/2018 introduccion.ppt

    31/46

    Fernando Prez CostoyaJos Mara Pea Snchez

    Sistemas Operativos Distribuidos

    3

    Fiabilidad

    Fiabilidad como disponibilidad: Tericamente: OR-lgico de sus componentes. En ciertos casos: AND-lgico de varios componentes. Mecanismos: redundancia y evitar componentes crticos. Tolerancia a fallos: Los componuentes pueden no caerse pero

    funcionan de forma errnea.Fiabilidad como coherencia:

    Se dificulta con la redundancia: inconsistencias

    La fiabilidad est relacionada con la seguridad (otro objetivo).

  • 5/21/2018 introduccion.ppt

    32/46

    Fernando Prez CostoyaJos Mara Pea Snchez

    Sistemas Operativos Distribuidos

    31

    Rendimiento

    Rendimiento para un servicio multiusuario: Objetivo: Rendimiento no peor que un sistema centralizado

    Rendimiento para la ejecucin paralelade aplicaciones: Objetivo: Rendimiento proporcional a procesadores empleados

    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.

  • 5/21/2018 introduccion.ppt

    33/46

    Fernando Prez CostoyaJos Mara Pea Snchez

    Sistemas Operativos Distribuidos

    32

    Capacidad de Crecimiento

    Diseo de un sistema distribuido debe evitar cuellos de botella: Componentes centralizados Tablas centralizadas Algoritmos centralizados

    Problemtica agravada por el nmero de elementos: Ninguna mquina tiene informacin completa del estado del sistema Las decisiones se basan slo en informacin disponible localmente El fallo de una mquina no debe invalidar el algoritmo No debe asumir la existencia de un reloj global

  • 5/21/2018 introduccion.ppt

    34/46

    Fernando Prez CostoyaJos Mara Pea Snchez

    Sistemas Operativos Distribuidos

    33

    Flexibilidad

    Capacidad para ampliarlo o extenderlo con nuevasfuncionalidades de forma sencilla.

    Definicin de responsabilidades:

    Sistemas con m-kernel: Comunicacin entre procesos. Cierta administracin de memoria. Administracin y planificacin de procesos (limitada y de bajo nivel). Entrada/salida de bajo nivel.

    El resto, servicios a nivel de usuario.

  • 5/21/2018 introduccion.ppt

    35/46

    Fernando Prez CostoyaJos Mara Pea Snchez

    Sistemas Operativos Distribuidos

    34

    Flexibilidad

    Un elemento fundamental de la flexibilidad son los sistemasabiertos.

    El desarrollo de estos sistemas requiere:

    Sus interfaces y protocolos deberan ser pblicos. Contrario a tecnologa propietaria. Uso de estndares siempre que sea posible. Disponibilidad de su cdigo fuente (libremente o no). Regulacin por parte de un colectivo (usuarios u organizaciones) y

    no por particulares (fabricantes).

  • 5/21/2018 introduccion.ppt

    36/46

    Fernando Prez CostoyaJos Mara Pea Snchez

    Sistemas Operativos Distribuidos

    35

    Componentes de un Sistema Distribuido

    El desarrollo de un sistema distribuido complejo requiere el usode las siguientes funciones y servicios:

    Servicios de comunicacin. Sistemas de ficheros y nombrado distribuido. Servicios de sincronizacin y coordinacin.

    Memoria compartida distribuida. Gestin de procesos. Servicio de seguridad.

    Estas funcionalidades se plasman en elementos concretos delsistema: componentes, protocolos, algoritmos, soportehardware/software, ...

  • 5/21/2018 introduccion.ppt

    37/46

    Fernando Prez CostoyaJos Mara Pea Snchez

    Sistemas Operativos Distribuidos

    36

    Servicios de Comunicacin

    Modelos de interaccin: Cliente/servidor: (2-niveles, 3-niveles o n-niveles) Peer-to-peer: Equilibrio de roles. Intermediarios: Proxy, Dispacher, Caches, ... Unicastvs Multicast

    Fiabilidad. Sncronos vs Asncronos

    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.

  • 5/21/2018 introduccion.ppt

    38/46

    Fernando Prez CostoyaJos Mara Pea Snchez

    Sistemas Operativos Distribuidos

    37

    Sistemas de Ficheros Distribuidos

    Identificacin, localizacin y acceso a elementos del entornodistribuido.

    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

  • 5/21/2018 introduccion.ppt

    39/46

    Fernando Prez CostoyaJos Mara Pea Snchez

    Sistemas Operativos Distribuidos

    38

    Servicios de Sincronizacin yCoordinacin

    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.

    Afecta a otros servicios: Nombrado e identificacin. Seguridad y fiabilidad. Comunicaciones. ...

  • 5/21/2018 introduccion.ppt

    40/46

    Fernando Prez CostoyaJos Mara Pea Snchez

    Sistemas Operativos Distribuidos

    39

    Memoria Compartida Distribuida (DSM)

    Hardware: Memoria fsicamente compartida. Memoria distribuida (lgicamente compartida). Acceso uniforme vs acceso no uniforme.

    Distributed Shared Memory: Basada en pginas. Basada en variables compartidas. Basada en objetos.

    Modelos de consistencia

  • 5/21/2018 introduccion.ppt

    41/46

    Fernando Prez CostoyaJos Mara Pea Snchez

    Sistemas Operativos Distribuidos

    4

    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.

  • 5/21/2018 introduccion.ppt

    42/46

    Fernando Prez CostoyaJos Mara Pea Snchez

    Sistemas Operativos Distribuidos

    41

    Servicio de Seguridad

    Tipologa de los ataques: Privacidad y confidencialidad. Autenticacin (spoofing). Denegacin de servicio.

    Modelos y herramientas de seguridad: Cifrado: clave pblica (RSA) y privada (DES). Protocolos de seguridad: IPsec, SSL. Certificados y firmas digitales: X.509. Elementos de seguridad: Firewalls.

    Entornos seguros: e.g. Kerberos.

  • 5/21/2018 introduccion.ppt

    43/46

    Fernando Prez CostoyaJos Mara Pea Snchez

    Sistemas Operativos Distribuidos

    42

    Notacin

    La asignatura tiene dos partes: Parte de la asignatura dependiente de ciertas tecnologas:

    API de sockets. RPCs. CORBA.

    DCOM. Java: RMI, EJB y Jini. Parte de la asignatura independiente de tecnologas:

    Conceptos. Tcnicas.

    Algoritmos. Estrategias de diseo.

  • 5/21/2018 introduccion.ppt

    44/46

    Fernando Prez CostoyaJos Mara Pea Snchez

    Sistemas Operativos Distribuidos

    43

    Notacin y Formalismos

    Objetivo de la notacin: No atar ninguna solucin a unatecnologa concreta.

    Notaciones y formalismos usados:

    Pseudocdigo: Algoritmos y ejemplos. Objetos: Escenarios de interaccin, patrones distribuidos. Formalismos matemticos: Seguridad, sincronizacin. Metodologas y arquitecturas: Nomenclatura y semntica.

    Se optar por el ms apropiado en cada caso. No debe ser un impedimento para entender el concepto.

  • 5/21/2018 introduccion.ppt

    45/46

    Fernando Prez CostoyaJos Mara Pea Snchez

    Sistemas Operativos Distribuidos

    44

    Wrapper Facade

    Patrn de diseo que encapsula los factores y caractersticasdependientes de las APIs de desarrollo del sistema operativo otecnologa usada. [SSR00]

    Escenario:Aplicacin

    API FuncinA

    API FuncinB

    API FuncinC

    Wrapper Facade

    Datos

    mtodo1()...

    metodoN()

    mtodo1(){funcinA();

    funcinB();}

    mtodoN(){

    funcinC();}

    llamadasllamadas

    llamadas

    llamadas

  • 5/21/2018 introduccion.ppt

    46/46

    Wrapper Facade

    Ejemplo: Semforo genrico.

    Protege un regin deexclusin mtua

    acquire(): entrada

    en la regin. release(): salida

    de la regin.

    Implementacin:Depende del SO.

    class Thread_Mutex

    {

    public:

    Thread_Mutex();

    Thread_Mutex();

    void acquire();

    void release();};