Saltar al contingut Menu
Mapa
  • Inicio
  • Información
  • Contacto
  • Mapa

Sistemas Operativos Distribuidos y en Red (SODX)

Créditos Dept.
7.5 (6.0 ECTS) AC

Profesores

Responsable:  (-)
Otros:(-)

Objectivos Generales

En esta asignatura el estudiante se centrará en el conocimiento de los sistemas operativos y su relación con las redes de computadores y en los servicios avanzados que debe conocer para obtener la intensificación en Sistemas. El estudiante será capaz de construir aplicaciones utilizando los principales paradigmas de programación sobre sistemas distribuidos y los recursos que proporcionan estos sistemas.

Objectivos Específicos

Conocimientos

  1. Conocer en profundidad los principales paradigmas de programación sobre sistemas distribuidos, el modelo cliente/servidor.
  2. Conocer las diferencias entre un sistema operativo en red y un sistema operativo distribuido.
  3. Servicios distribuidos básicos y avanzados.
  4. Propiedades consecuencia del comportamiento colectivo de un sistema: tolerancia a fallos, mayor capacidad, seguridad.
  5. Conocer las últimas tendencias en soluciones a las necesidades de distribución.

Habilidades

  1. El estudiante será capaz de analizar los problemas y elegir soluciones que puede plantear el diseño o el funcionamiento de una aplicación distribuida.
  2. Optimización de los recursos del sistema y la red.
  3. Capacidad de desarrollar sistemas o mecanismos que solucionen problemas de tolerancia a fallos, rendimiento, escala, movilidad.

Competencias

  1. Capacidad para trabajar efectivamente en grupos pequeños de personas para la resolución de un problema de dificultad media.
  2. Capacidad para hacer presentaciones convincentes de manera oral, tanto formales como informales.
  3. Capacidad para estudiar de varias fuentes, identificando cuándo la información recibida a clase no es suficiente y buscando información complementaria.
  4. Capacidad para aprender autónomamente.

Contenidos

Horas estimadas de:

T P L Alt L Ext. Est O. Ext.
Teoria Problemas Laboratorio Otras actividades Laboratorio externo Estudio Otras horas fuera del horario fijado

1. Conceptos de sistemas distribuidos
T      P      L      Alt    L Ext. Est    O. Ext. Total 
4,0 0 0 0 0 4,0 4,0 12,0
Conceptos y modelos básicos de sistemas distribuidos; ideas de orden, causalidad, tiempo, fallos, escala. Objetivos: conexión, transparencia, apertura y escalabilidad; técnicas básicas de replicación, caching, distribución; estilos arquitectónicos, arquitecturas de sistema: centralizadas, descentralizadas; modelos de programación.
  • Otras actividades fuera del horario fijado:
    Actividades de trabajo en grupo y/o lectura dirigida de artículos.

2. Comunicación entre procesos
T      P      L      Alt    L Ext. Est    O. Ext. Total 
4,0 0 4,0 0 4,0 4,0 4,0 20,0
Invocación de operaciones remotas; Invocación de objetos remotos; comunicación basada en mensajes; comunicación basada en canales (streams).



  • Laboratorio:
    Modificar y ampliar una aplicación de comunicación remota de procesos. Evaluar y comparar varias alternativas.

  • Actividades de laboratorio adicionales:
    Análisis previo y elaboración de conclusiones posterior.

  • Otras actividades fuera del horario fijado:
    Actividades de trabajo en grupo y/o lectura dirigida de artículos.

3. Tiempo y estados globales
T      P      L      Alt    L Ext. Est    O. Ext. Total 
2,0 0 2,0 0 2,0 2,0 2,0 10,0
Sincronización de relojes; tiempo, ordenación, relojes lógicos; estados globales consistentes, predicados, snapshot distribuido.

  • Laboratorio:
    Uso del tiempo lógico para la coordinación entre varios nodos.
  • Actividades de laboratorio adicionales:
    Análisis previo y elaboración de conclusiones posterior.

  • Otras actividades fuera del horario fijado:
    Actividades de trabajo en grupo y/o lectura dirigida de artículos.

4. Coordinación y consenso
T      P      L      Alt    L Ext. Est    O. Ext. Total 
2,0 0 2,0 0 2,0 2,0 2,0 10,0
Exclusión mutua; elección, comunicación en grupo multicast, consenso.



  • Laboratorio:
    Evaluar un algoritmo de coordinación entre varios nodos.

  • Actividades de laboratorio adicionales:
    Análisis previo y elaboración de conclusiones posterior.

  • Otras actividades fuera del horario fijado:
    Actividades de trabajo en grupo y/o lectura dirigida de artículos.

5. Transacciones distribuidas
T      P      L      Alt    L Ext. Est    O. Ext. Total 
2,0 0 2,0 0 2,0 2,0 2,0 10,0
Transacciones, commit distribuido, control de concurrencia


  • Laboratorio:
    Implementar y evaluar un algoritmo de control de concurrencia entre varios nodos.

  • Actividades de laboratorio adicionales:
    Análisis previo y elaboración de conclusiones posterior.

  • Otras actividades fuera del horario fijado:
    Actividades de trabajo en grupo y/o lectura dirigida de artículos.

6. Consistencia y replicación
T      P      L      Alt    L Ext. Est    O. Ext. Total 
4,0 0 4,0 0 4,0 4,0 4,0 20,0
Modelos y mecanismos de consistencia; Distribución y replicación; membresía de grupo.

  • Laboratorio:
    Probar y evaluar mecanismos de replicación de datos entre varios nodos.

  • Actividades de laboratorio adicionales:
    Análisis previo y elaboración de conclusiones posterior.

  • Otras actividades fuera del horario fijado:
    Actividades de trabajo en grupo y/o lectura dirigida de artículos.

7. Sistemas y servicios de nombres
T      P      L      Alt    L Ext. Est    O. Ext. Total 
2,0 0 2,0 0 2,0 2,0 2,0 10,0
Espacios de nombres y resolución; Servicios DNS, LDAP; sistemas móviles.
  • Laboratorio:
    Evaluar y comparar varias alternativas de servicios de nombres.
  • Actividades de laboratorio adicionales:
    Análisis previo y elaboración de conclusiones posterior.

  • Otras actividades fuera del horario fijado:
    Actividades de trabajo en grupo y/o lectura dirigida de artículos.

8. Sistemas de ficheros distribuidos
T      P      L      Alt    L Ext. Est    O. Ext. Total 
2,0 0 2,0 0 2,0 2,0 2,0 10,0
Sistemas NFS, CODA y otros; Características y comparación.
  • Laboratorio:
    Evaluar y comparar varias alternativas de servicios de ficheros.

  • Actividades de laboratorio adicionales:
    Análisis previo y elaboración de conclusiones posterior.

  • Otras actividades fuera del horario fijado:
    Actividades de trabajo en grupo y/o lectura dirigida de artículos.

9. Sistemas web distribuidos
T      P      L      Alt    L Ext. Est    O. Ext. Total 
2,0 0 2,0 0 2,0 2,0 2,0 10,0
Arquitectura; Web Services; Comunicación HTTP i SOAP; Caching, replicación, CDNs
  • Laboratorio:
    Evaluar el rendimiento de un servidor web.
  • Actividades de laboratorio adicionales:
    Análisis previo y elaboración de conclusiones posterior.
  • Otras actividades fuera del horario fijado:
    Actividades de trabajo en grupo y/o lectura dirigida de artículos.

10. Sistemas distribuidos de gran escala
T      P      L      Alt    L Ext. Est    O. Ext. Total 
4,0 0 4,0 0 4,0 6,0 6,0 24,0
Sistemas Grid, Cloud y descentralizados (Peer-to-Peer o P2P); DHTs; Gestión de recursos; Redes superpuestas (overlay); Infraestructuras actuales.
  • Laboratorio:
    Modificar y ampliar una aplicación basada en P2P. Evaluar y comparar varias alternativas.
  • Actividades de laboratorio adicionales:
    Análisis previo y elaboración de conclusiones posterior.
  • Otras actividades fuera del horario fijado:
    Actividades de trabajo en grupo y/o lectura dirigida de artículos.


Total por tipo T      P      L      Alt    L Ext. Est    O. Ext. Total 
28,0 0 24,0 0 24,0 30,0 30,0 136,0
Horas adicionales dedicadas a la evaluación 4,0
Total horas de trabajo para el estudiante 140,0

Metodología docente

- Actividades centradas en la adquisición de conocimientos teóricos.

- Actividades (sesiones) centradas en el laboratorio donde adquirir conocimientos por experimentación: poner en marcha sistemas, medir y comparar rendimiento y realizar modificaciones y pequeñas aplicaciones para adquirir las habilidades básicas.



Las clases de teoría podrían dividirse en (1) clases de exposición, (2) lecturas de artículos, (3) trabajo en grupo (AC).



Actividades de trabajo en grupo:

- parte presencial (profesor y alumnos),

- presencial (alumnos), (asistente?),

- no presencial (cada alumno por su cuenta) + herramienta (como bscw).



Teoría:

- Preparación: lecturas dirigidas (lectura papers/informes),

- Seguimiento clases exposición teoría,

- Elaboración: trabajo en grupo (posters).



Laboratorio:

- Preparación: lectura de enunciado y documentación adicional,

- Trabajo en el laboratorio, reservado, en grupo,

- Trabajo posterior para acabar (informe de evaluación del sistema producto).

Método de evaluación

A) Examen parcial escrito (control) individual de seguimiento sobre algunos conocimientos y habilidades.
B) Examen final escrito individual sobre los conocimientos y habilidades.
C) Evaluación de los informes de lectura, presentación y discusión de artículos y documentos recomendados, y del trabajo en grupo o cooperativo.
D) Evaluación sobre conceptos, habilidades y competencias en el laboratorio.

Nota Final = max(0.15 x A + 0.35 x B, 0.50 x B) + 0.25 x C + 0.25 x D

Bibliografía básica

  • TANENBAUM, Andrew S, VAN STEEN, Maarten, Distributed Systems: Principles and Paradigms, 2nd Edition, Prentice Hall, 2007.
  • COULOURIS, George F, DOLLIMORE, Jean, KINDBERG, Tim, Distributed Systems: Concepts and Design, 4th edition, Addison-Wesley, 2005.

Bibliografía complementaria

  • ARMSTRONG, Joe, Programming Erlang: Software for a Concurrent World, The Pragmatic Programmers, 2007.

Enlaces web

  1. http://docencia.ac.upc.es/FIB/SODX/


  2. http://dsonline.computer.org/


Capacidades previas

Conocimientos detallados de la estructura interna y el funcionamiento de un sistema operativo (asignatura SO), de una red de computadores (asignatura XC o XCA).


Compartir

 
logo FIB © Facultad de Informática de Barcelona - Contacto - RSS
Esta web utiliza cookies propias para ofrecerle una mejor experiencia y servicio. Si continúa la navegación, entendemos que acepta nuestra política de cookies. Versión clássica Versión móvil