Índice
Sistemas Operativos Distribuidos
Asignatura
| Modalidad | Electiva |
| Área | Especialización |
| U.C: | 3 |
| Código | 2120360001780 |
Justificación
La mayoría de las empresas y organizaciones tienen un cierto número de computadoras conectadas por redes de alta velocidad. Los sistemas operativos existentes están diseñados para computadoras individuales, con la capacidad a acceder explícitamente a los recursos que ofrecen otras computadoras en la red. Los sistemas operativos distribuidos permiten utilizar los recursos de muchas computadoras conectadas en red como si fueran una única computadora, de manera transparente para los usuarios. El diseño e implementación de estos sistemas operativos presenta dificultades y problemas que no se presentan en sistemas operativos convencionales. El estudio de estos problemas y sus posibles soluciones es un área de estudio de gran interés en la actualidad.
Objetivos del Curso
Dominar los conocimientos fundamentales de sistemas operativos distribuidos y conocer los dificultades que se presentan en relación con las áreas clásicas de sistemas operativos, tales como comunicación entre procesos, manejo de procesos y administración de memoria, cuando se trabaja en ambientes distribuidos y las posibles soluciones.
- Dominar los conceptos fundamentales de sistemas operativos distribuidos.
- Dominar los aspectos más importante del diseño de sistemas operativos distribuidos.
- Conocer los problemas relacionados con la comunicación y sincronización de procesos en ambientes distribuidos y sus posibles soluciones.
- Conocer los problemas relacionados con el manejo de procesos y administración de memoria en ambientes distribuidos.
Prerequisitos
Haber aprobado los cursos Técnicas de Programación, Matemáticas para la Computación, Estructura de Datos y Algoritmos, Redes de Computadoras y Sistemas Operativos.
Contenido Programático
Unidad 1: Introducción
- Concepto de sistema operativo distribuido.
- Conceptos de hardware.
- Multiprocesadores.
- Multicomputadoras.
- Conceptos de software.
- Sistemas operativos de red.
- Sistemas realmente distribuidos.
- Sistemas de multiprocesador con tiempo compartido.
Unidad 2: Aspectos de diseño
- Transparencia.
- Flexibilidad.
- Confiabilidad.
- Rendimiento.
- Escalabilidad.
- Tipos parametrizados.
Unidad 3: Comunicación en los sistemas distribuidos
- Protocolos con capas.
- Redes asíncronas.
- El modelo cliente servidor.
- Llamadas de procedimiento remoto.
- Objetos distribuidos.
- Comunicación en grupo.
Unidad 4: Sincronización en sistemas distribuidos
- Sincronización de relojes.
- Relojes lógicos.
- Relojes Físicos.
- Algoritmos para la sincronización de relojes.
- Uso de relojes sincronizados.
- Exclusión mutua.
- Algoritmos de elección.
- Transacciones atómicas.
- Bloqueos en sistemas distribuidos.
Unidad 5: Procesos y procesadores en sistemas distribuidos
- Hilos.
- Modelos de sistemas.
- El modelo de estación de trabajo.
- Uso de estaciones de trabajo inactivas.
- El modelo de la pila de procesadores.
- Un modelo híbrido.
Unidad 6: Asignación de procesadores
- Modelos de asignación.
- Aspectos del diseño de algoritmos de asignación de procesadores.
- Planificación en sistemas distribuidos.
- Tolerancia a fallas.
- Sistemas distribuidos de tiempo real.
Unidad 7: Sistemas de archivos distribuidos
- Diseño de los sistemas archivos distribuidos.
- Implementación de un sistema de archivos distribuidos.
- Tendencias en los sistemas de archivos distribuidos.
Unidad 8: Memoria compartida distribuida
- Introducción.
- Modelos de consistencia.
- Memoria compartida distribuida con base en páginas.
- Memoria compartida distribuida con variables.
- Memoria compartida distribuida basada en objetos.
- Casos de estudio.
Metodología de la Enseñanza
Entre las estrategias instruccionales empleadas se incluyen la exposición por parte del docente del contenido teórico y ejemplos de aplicación, y se asignarán trabajos prácticos.
Intensidad Horaria
La intensidad horaria es de 3 horas/semana durante 16 semanas (48 horas/semestre).
Bibliografía
- Tennenbaum, Adrew. Sistemas Operativos Distribuidos. Prentice Hall. 1996.
- Tennenbaum, Anrew. Sistemas Operativos, Diseño e Implementación. Segunda Edición. Prentice Hall.1997.
- Milenkovic, Milan. Sistemas Operativos, Conceptos y Diseño. Segunda Edición. McGraw Hill. 1994.
