unidad i
TRANSCRIPT
Concepto de los Sistemas DistribuidosUn sistema distribuido es una colección de computadoras independientes que aparecen ante los usuarios del sistema como una única computadora.
EEn esta definición cabe destacar dos aspectos:
1. El hardware. La definición habla de máquinas autónomas, es decir, que pueden operar sin la supervisión de ninguna otra.
2. El software, que debe conseguir que los usuarios del sistema lo vean como una máquina central convencional única.
Ventajas de los Sistemas Distribuidos
Economía - Compartir recursos
Velocidad - Mayor capacidad de computo
Distribución - Aplicaciones que utilizan máquinas que están separadas
Confiabilidad - Si una máquina no funciona no afecta al resto
Crecimiento por -Se puede añadir incremento de pequeño incremento Incremento
Desventajas de los Sistemas Distribuidos
Software - Complejidad del software
Redes - Problemas causados por la utilización de un medio físico de comunicación.
Seguridad - El acceso fácil a todos los datos
Concepto de Hardware Múltiple Instrucción, Múltiple dato
El software es inmaterial ⇒ Más difícil de clasificar que el hardware
Sistemas Operativos en Red
Son un ejemplo de Software DA y Hardware DAProporcionan servicios remotos de forma relativamente transparenteEjemplos1. %> rlogin ceres2. %> rcp pizarro:/usr/f2 ceres:/home/f23. Sistema de ficheros remoto:
Sistemas Realmente Distribuidos
Consisten en Software FA sobre Hardware DA Objetivo: Ocultar al usuario el HW subyacente y percibir este como un máquina única. Requisitos1. Mecanismo PC homogéneo para procesos locales y remotos.2. Mecanismo unificado de gestión de procesos.3. Conjunto de llamadas al sistema únicas ⇒ Núcleos idénticos.4. Cada núcleo gestiona únicamente sus propios recursos (páginas, ...).5. El sistema de ficheros es único para todas las máquinas.
Sistemas Multiprocesador de Tiempo Compartido
CConsisten en Software FA sobre Hardware FA
EEjemplo: Sistemas Unix multiprocesador.
O
Objetivo: Ocultar a las aplicaciones que ejecutan sobre más de un procesador. A
Aspectos consideradosL
- La cola de procesos dispuestos es única para todos los procesadores.I
- Influencia de la caché en los cambios de contexto.
Transparencia, flexibilidad, confiabilidad, prestaciones y escalabilidad.
Transparencia:Un SOD es transparente cuando es visto por el usuario y el programador como un sistema convencional de tiempo compartido.
1. Transparencia a la ubicaciónLos nombres de los recursos no están ligados a máquinas concretas:
Se prohíbe /pc_1/home/file4
2. Transparencia a la replicaciónLos nombres de los ficheros son independientes de si están o no están replicados y en que máquinas .
Aspectos clave en diseño de los S.O.D.
AAspectos clave en diseño de los S.O.D.
11. Transparencia a la concurrencia
• Un usuario no debe notar otros usuarios en el sistema.• El acceso a un fichero debe ser independiente de que otros usuarios accedan al
fichero simultáneamente.2
2. Transparencia al paralelismoL
La más difícil de lograr:• El compilador y el S.O. detectan el paralelismo intrínseco de la aplicación.• Asignan los procesadores a las actividades del programa sin el concurso del
programador.
Aspectos clave en diseño de los S.O.D.Flexibilidad Dos escuelas de sistemas operativos: Sistemas operativos monolíticos
Sistemas operativos microkernel
Los sistemas operativos microkernel son más apropiados para los S.O.D.
Aspectos clave en diseño de los S.O.D.Confiabilidad
Una de las motivaciones de los S.O.D. es mejorar la confiabilidad global del sistema.
Aspectos
a) Inconsistencia
Fiabilidad ⇒ Disponibilidad ⇒ Replicación (HW y SW) ⇒ InconsistenciaAumenta número de copias ⇒ Aumenta la probabilidad de inconsistencia
b) Seguridad
Crecen los problemas de seguridad en los S.O.D. porque aumenta el número de mensajes en la red.
Aspectos clave en diseño de los S.O.D.PrestacionesLos S.O.D. pueden ser lentos(Enviar un marco Ethernet tarda ≈ 1 ms) ⇒ No se venden
Solución:
Minimizar el número de mensajes en la red. ¿Cómo?
1. Identificando actividades con fuerte cohesión.2. Estas actividades ejecutan en un máquina única.
Aspectos clave en diseño de los S.O.D.
Escalabilidad• Los actuales sistemas abarcan≈ cientos de máquinas
⇒¿ Los métodos y algoritmos utilizados en los sistemas actuales escalan adecuadamente ?• Los actuales sistemas abarcarán
≈ cientos de miles de máquinas
• Evitar SW centralizado:
1. Ninguna máquina debe tener toda la información sobre todo el sistema2. Las máquinas toman decisiones basadas en su información local3. El fallo de una de las máquinas no malogra el algoritmo.
No exige un reloj común.