Inicio
Links
Webmistress
 
 
Sistemas Operativos Distribuidos
 

Unidad I. Introducción

1.1 Conceptos generales

Sistema. Conjunto de elementos, procedimientos, métodos que interactúan entre sí para lograr un fin en común.

Sistema Operativo. Conjunto de programas que controla, administra y regula las funciones de los elementos para cumplir un objetivo.

Sistema Operativo Distribuido. Conjunto de programas que administran y controlan las funciones de los elementos (hardware, software) que conforman un sistema. El cuál es transparente al usuario.

Conceptos de hardware (según Flynn)

Existen cuatro clasificaciones básicas:

  1. SISD (Single Instruction, Single Data) (PC normalitas). Son todas aquellas computadoras que tienen un solo procesador.
  2. SIMD (Single Instruction, Multiple Data) (SOR). Se refiere a computadoras entre sí, cada una con un procesador propio que cada una de ellas busca la instrucción e instruye a las demás para procesar en paralelo.
  3. MISD (Multiple Instruction, Single Data). Ninguna computadora conocida se ajusta a esta clasificación.
  4. MIMD (Multiple Instruction, Multiple Data). Son grupos de computadoras independientes cada una con su propio contador de programas y datos, todos los sistemas distribuidos son de este tipo.

1.2 Funciones del SOD

* Administrar:

  • Recursos de hardware (CD, HD, DVD, memoria, etc.) y software.
  • Procesos (mensajes).
  • Usuarios (¿Quién va usar?).

* Ofrece servicios:

  • Atiende las necesidades de un cliente. (cliente, es quien solicita, no necesariamente debe ser un usuario).
  • Solicitud de algo. Peticiones para resolver por el sistema.

* Transparente al usuario:

  • Moverse por cualquier punto y tener disponibilidad.
  • Obtener resultado.

1.3 SOD Vs SORed

SOD

SOR

Multiprocesador

Monoprocesador

Multitarea

Monotarea

Multiproceso

Monoproceso

Multiusuario

Multiusuario

Distribuido

Centralizado

Alto rendimiento de procesamiento

Bajo nivel de rendimiento de procesamiento

Tarea. Algo que tiene que hacer.

Proceso. Un programa que está ejecutándose en el procesador.

1.4 Características de diseño

* Interacción entre procesos

La interacción entre procesos se da a través del sistema operativo, es decir, el sistema operativo se encarga de mediar entre ellos. Aunque hay procesos que por su propia naturaleza se pueden enviar mensajes entre sí, pero esto es muy distinto a que entre ellos tomen una decisión.

* Transparencia

Los procesos y recursos debe ser transparente al usuario, esto se logra creando una capa de abstracción denominada máquina virtual, donde se engaña al usuario haciéndolo creer que está en un equipo centralizado.

* Heterogeneidad

Un sistema operativo distribuido puede estar conformado por un sin número de elementos totalmente distintos, sin que esto afecte el acoplamiento y el funcionamiento de la red. No basta recordar que esta heterogeneidad solo incumbe al hardware, también al software.

* Anatomía

El conjunto de procesadores se conforma como un solo procesador, dando la sensación de estar en una computadora monoprocesador haciendo elevar el poder de procesamiento y la operabilidad del sistema.

* Interdependencia

Los equipos presentan un cierto grado de interdependencia ya que pueden depender de otros procesadores para poder satisfacer una necesidad de procesamiento o bien una petición de algún usuario, si algún procesador falla reduce el rendimiento global del sistema, pudiendo caer en retrasos o en el colgamiento del sistema.

1.5 Componentes del SOD

* Hardware:

  • Procesadores
  • Memoria
  • Medio de comunicación
  • Dispositivos de almacenamiento

* Software:

  • Programas
  • Sistema operativo

Mantenimiento de la consistencia

Mantenimiento de la consistencia

Notas:

  • Que sea constante a un mismo nivel. Punto de equilibrio.
  • Atomicidad.- Dos posibilidades: se cumple o no se cumple.
  • La replicación consume mucho hardware.
  • No es bueno poner muchos procesadores, pues hay una sobrecarga.
  • Forma de transmitir ethernet: escucha el medio.
  • Entre más complejo y mejor queremos un sistema operativo distribuido es más difícil de administrar.

Multiprocesadores con conmutador

Multiprocesador con conmutador o cruceta
  • También se le llama conmutador de cruceta.
  • Se utiliza para más de 64 CPU's.
  • Se garantiza que cada bloque de memoria está disponible para cada CPU.
  • Para n CPU's y n memorias, se necesitan n^2 conmutadores en los puntos de cruce. Si n es grande este número puede ser prohibido.

Ejemplo: se tienen 246 CPU's con 100 memorias, ¿cuántos conmutadores se necesitan?

Respuesta: Ejercicioconmutadores se necesitan.

Multiprocesadores con red omega

Multiprocesadores con red omega
  • También se utiliza para más de 64 CPU's.
  • Se garantiza que cada bloque de memoria está disponible para cada CPU.
  • Por cada conmutador debe de tener 2 entradas, 2 salidas.
  • Para n CPU's y n memorias, se necesitan conmutadores en los puntos de cruce. Si n es grande este número puede ser prohibido.
  • En base a prácticas o estudios, es mejor la red omega, pues es más eficiente.

Conclusión:

La construcción de un multiprocesador grande, fuertemente acoplado y con memoria compartida es difícil y cara.

Bibliografía:

  • Apuntes tomados de la clase del Lic. Marco Antonio Salas Quiñonez del Instituto Tecnológico de Los Mochis.
  • Sistemas Operativos Distribuidos, Andrew S. Tanenbaum, editorial Prentice Hall.
Finanzas I