ASIGNATURA Sistemas Distribuidos
CARACTER cuatrimestral
CURSO 3
CUATRIMESTRE segundo
AÑO 2002-2003
CREDITOS 6  (3.0 T + 3.0 P)
PROFESORES César Llamas Bello
DEPARTAMENTO  Informática (ATC, CCIA, LSI)
OBJETIVOS
Los sistemas distribuidos son la forma de obtener mejores prestaciones y mejor calidad de servicio en los entornos abiertos de hoy en día. El alumno conocerá los modelos de sistemas distribuidos más importantes y realizará tareas de programación conducentes a la comprensión adecuada de este tipo de sistemas.
DESCRIPTOR
La obtención de aplicaciones distribuidas es una de las áreas de mayor interés en los entornos de red de hoy en día. Para poder construir este tipo de sistemas es necesario conocer los modelos y las técnicas de construcción apropiadas. Entre estas técnicas se encuentran los mecanismos modernos de comunicación entre procesos e invocación de métodos remotos. Así mismo, del estudio del diseño y las prestaciones de los sistemas reales se pueden deducir conclusiones de interés para construir sistemas distribuidos.
        Entre las aproximaciones al estudio de los sistemas distribuidos podemos encontrar el estudio basado en sistemas operativos distribuidos y la vertiente algorítmica. En el programa de esta asignatura se hace énfasis en la descripción de los modelos y el diseño basado en metas de diseño.
PROGRAMA TEÓRICO
1. Fundamentos de los sistemas operativos
2. Elementos de diseño de los sistemas operativos
3. Intercomunicación entre procesos
4. Invocación de métodos remotos
5. Sistemas de archivos distribuidos
6. Seguridad
PROGRAMA DE LABORATORIO
Las sesiones prácticas requieren la programación en dos lenguajes muy versátiles Perl y Java. El primero para la programación con ´sockets´ y en el segundo para experimentar con invocación de métodos remotos en Java. Ya en el laboratorio correspondiente,tendremos la oportunidad de probar los programas y resolver los problemas de implementación.
MÉTODOS Y CRITERIOS DE EVALUACIÓN
La evaluación tiene en cuenta dos elementos, que habrán de ser cumplimentados por separado. El primero es una prueba objetiva de tipo test con 30 apartados de elección múltiple. El segundo es la cumplimentación de las prácticas de laboratorio. Con este fin, se distribuyen en tiempo y forma (página web y reprografía) los objetivos y herramientas con que llevar a cabo la consecución de
cada práctica. Las prácticas deberán ser entregadas en los plazos estipulados.
          En el caso de no superar el apartado de prácticas en la convocatoria ordinaria, es posible realizar una práctica adicional que se realizará por cuenta del alumno durante el periodo vacacional.
          La evaluación podrá tener en cuenta, también, los posibles trabajos opcionales, que a petición de los alumnos se puedan desarrollar en grupos reducidos, sobre cuestiones relativas a los puntos del temario.
BIBLIOGRAFÍA
Colouris, G.; Dollimore, J. y Kindberg, T. "Sistemas Distribuidos. Conceptos y Diseño" Addison-Wesley, 2001.
BIBLIOGRAFÍA COMPLEMENTARIA
Fuentes complementarias:
Tanenbaum, A.S. “Sistemas Operativos Distribuidos” Prentice-Hall, 1996.
Sinha, P.K. “Distributed Operating Systems. Concepts and Design” IEEE Press, 1997.
FUENTES DE CONSULTA ADICIONALES
Christiansen, T. y Torkington, N. “Perl Cookbook”. O’Reilly, 1998.
Farley, J. “Java Distributed Computing”. O’Reilly, 1997.
CONOCIMIENTOS PREVIOS

Entre los requisitos recomendables para esta asignatura se encuentra el conocimiento y la habilidad de programación sobre sistemas operativos, y un conocimiento básico de redes de comunicación.