Sistemas Operativos
Es
un conjunto de sistemas y procedimientos que actúa como intermediario entre el
usuario y el hardware de un computador y su propósito es proporcionar un
entorno en el cual el usuario pueda ejecutar programas. El objetivo principal
de un sistema operativo es lograr que el sistema de computación se use de
manera cómoda, y el objetivo secundario es que el hardware del computador se
emplee de manera eficiente.
Sistemas Operativos Distribuidos
Los sistemas operativos
distribuidos desempeñan las mismas funciones que un sistema operativo normal,
pero con la diferencia de trabajar en un entorno distribuido. Su Misión
principal consiste en facilitar el acceso y la gestión de los recursos
distribuidos en la red.
En un sistema operativo
distribuido los usuarios pueden acceder a recursos remotos de la misma manera
en que lo hacen para los recursos locales. Permiten distribuir trabajos, tareas
o procesos, entre un conjunto de procesadores. Puede ser que este conjunto de
procesadores esté en un equipo o en diferentes, lo cual es transparente para el
usuario.
Los sistemas
distribuidos deben de ser muy confiables y estables ya que si un componente del
sistema se descompone otro componente debe de ser capaz de reemplazarlo
inmediatamente y no afectar los procesos del sistema.
Entre los diferentes
Sistemas Operativos distribuidos que existen tenemos los siguientes: Sprite,
Solaris-MC, Mach, Chorus, Spring, Amoeba, Taos, etc.
Características básicas
Los sistemas operativos
distribuidos están basados en las ideas básicas:
• Transparencia
• Eficiencia
• Flexibilidad
• Escalabilidad
Existen dos esquemas
básicos: Los Fuertemente Acoplados y los débiles. Un sistema fuertemente
acoplado es aquel que comparte la memoria y un reloj global, cuyos tiempos de
acceso son similares para todos los procesadores. En un sistema débilmente
acoplado los procesadores no comparten ni memoria ni reloj, ya que cada uno
cuenta con su memoria local.
Aspectos De Diseño
Transparencia
El concepto de
transparencia de un Sistema operativo distribuido va ligado a la idea de que
todo el sistema funcione de forma similar en todos los puntos de la red, debido
a esto queda como labor del sistema operativo coordinar el mecanismo que logre
la unificación de todos los sistemas y recursos totalmente transparente para el
usuario o aplicación.
El que el sistema
disponga de varios procesadores debe lograr un mayor rendimiento del sistema,
pero el sistema operativo debe controlar que tanto los usuarios como los
programadores vean el núcleo del sistema distribuido como un único procesador,
Es decir que la programación y la ejecución de los programas y tareas sean
exactamente iguales que las de los sistemas operativos normales en aspectos
visuales y de programación, pero mas rápidos y eficientes por la distribución
de la tareas.
Eficiencia
La idea base de los
sistemas operativos distribuido es la de obtener sistemas mucho mas rápidos que
los utilizados de procesador único, Y para lograr esto tenemos que olvidar la
idea antigua de ejecutar los programas en estos procesadores y pensar en distribuir
las tareas a los procesadores libres mas rápidos en cada momento.
El concepto global de
que un procesador haga todas las tareas y la desarrolle rápido depende de
muchos factores concretos: Velocidad, Memoria y tipo de procesamiento, Pero
para un sistema operativo distribuido esto es mucho mas fácil y eficiente, solo
buscara un procesador mas rápido y mas libre para que desarrolle las tareas y
hará un display de los resultados obtenidos.
Flexibilidad
La Flexibilidad dentro
de sistema operativo distribuido, describe su capacidad para soportar cambios,
actualizaciones y mejoras que le permitan irse desarrollando al mismo ritmo de
la evolución tecnológica.
Dicha capacidad es una
virtud y un conflicto. Una Virtud debido a las grandes necesidades de los sistemas
operativos de mejorar después de las primeras versiones y un conflicto que
surge entre los sistemas de con Núcleo Monolítico y los sistemas con Micro
núcleo las cuales son dos arquitecturas distintas del núcleo del sistema
operativo.
Núcleo Monolítico
Como ejemplo de sistema
operativo de núcleo monolítico esta UNIX, estos sistemas tienen en núcleo
grande y complejo, que engloba todos los servicios del sistema. Esta programado
de forma no modular, y tiene un rendimiento mayor que un micro núcleo. Sin
embargo, cualquier cambio a realzar en cualquiera de los servicios, requiere de
hacer un STOP a todos los servicios y la recopilación del núcleo.
Micro Núcleo.
La arquitectura ofrece
la alternativa al núcleo monolítico, se basa en una programación altamente
modular y tiene un tamaño mucho menor que el núcleo monolítico. Como
consecuencia, el refinamiento y el control de errores son mas rápidos y
sencillos. Además, la actualización de los servicios es más sencilla y ágil. Ya
que solo es necesario la recopilación del servicio y no de todo el núcleo. Como
desventaja, El rendimiento se ve afectado negativamente.
En la actualidad la
mayoría de los sistemas operativos distribuidos en desarrollo tienden a un
diseño de micro núcleo el cual aun siendo un poco mas lento, garantiza una
estabilidad mayor y un aumento de la flexibilidad del sistema.
Escalabilidad
Un sistema operativo
distribuido debería funcionar tanto para una docena de computadoras como para
mil en una sola red, el tipo de red utilizada no debe de ser un problema ni su
topología (LAN o WAN) (TOKEN RING o ETHERNET) y mucho menos la distancia entre
los equipos. Sin embargo todo esto influye, Aunque estos puntos serian muy
deseables, pude que la solución valida para unas cuantas computadoras no sean
aplicables como para mil. Del mismo modo el tipo de red condiciona grandemente
el rendimiento del sistema y puede que lo funcione para un tipo de red requiera
modificaciones para otro.
Sincronización
La sincronización es un
punto clave para los sistemas operativos distribuidos. Para computadores únicos
no es nada importante, pero en el caso de los recursos compartidos de la red,
la sincronización es sumamente importante. Los sistemas operativos
distribuidos tienen un reloj por cada ordenador del sistema, con lo que es
fundamental una coordinación entre todos los relojes para mostrar una hora
única. Los osciladores de cada ordenador son ligeramente diferentes, y como
consecuencia todo los relojes sufren un desfase y deben ser sincronizados
continuamente. La sincronización no es trivial, porque se realiza a través de
mensajes por la red. Cuyo tiempo de envió pude ser variable y depender de
muchos factores como la distancia, la velocidad de transmisión y la propia
estructura de la red.
El Reloj.
La sincronización del
reloj no tiene que ser exacta y bastara con que sea aproximadamente igual en
todos los ordenadores. Hay que tener en cuenta eso si. El modo de actualizar la
hora de un reloj es particular. Es fundamenta no retrasar nunca la hora, aunque
el reloj adelante. En vez de eso, hay que atrasar la actualizaron del reloj.
Frenarlo. Hasta que alcance la hora aproximada. Existen diferentes algoritmos
de actualizan de la hora.
El Reloj es únicamente
uno de los tantos problemas de sincronización que existen en los sistemas
operativos distribuidos.
Sistema Operativo Distribuido vs Sistema Distribuido
Existe una diferencia
vital entre los sistemas operativos distribuidos y los sistemas distribuidos.
Podríamos llamar a un Sistema Distribuido una capacidad del Sistema operativo
Distribuido, es decir: Un sistema distribuido es la relación que existe entre
una computadora independiente y un servidor de archivos o dispositivos
compartidos. Cada computadora ejecuta sus programas en su memoria propia
haciendo uso de su único microprocesador y memoria, este no comparte memoria ni
asigna tareas a otros procesadores de la red.
Sin embargo, un Sistema
operativo distribuido tiene acceso a todos los dispositivos compartidos de la
red incluyendo procesadores y memoria RAM.
Ventajas de los Sistemas
Operativos Distribuido
Economía: es la razón
numero 1 de la tendencia hacia los sistemas distribuidos ya que estos sistemas
tienen en potencia una proporción precio/desempeño mucho mejor de la de un
sistema centralizado.
Velocidad: un sistemas
distribuido puede tener un mayor poder de computo que un mainframe.
Distribución Inherente:
otra razón para la construcción de un sistema distribuido es que ciertas
aplicaciones son distribuidas en forma inherente; es decir, algunas
aplicaciones utilizan maquinas que están separadas a ciertas distancia.
Confiabilidad: un
sistema distribuido ofrece mayor confiabilidad, al distribuir la carga de
trabajo en muchas maquinas, la falla de un circuito descompondrá a lo mas una
maquina y el resto seguirá intacto.
Desventajas de los Sistemas Operativos Distribuido
Por muy maravillosos que
nos puedan pareces los sistemas operativos distribuidos, también tienen sus
desventajas. La sincronización del sistema es una tarea Árdea de la cual nunca
se descansa y la estandarización del sistema es un tanto complicada y
limitante.
Debido a que no todos
los sistemas operativos son de de carácter distribuido enlazar los distintos
tipos de sistemas operativos es un poco complicado.
El interés de hacer el
SOD lo mas transparente posible lo hace muy complicado en su programación y el
lograr que el sistema operativo no tenga problemas para que no cause problemas
a otros equipos que le asignaron tareas es un poco dificultoso.
No hay comentarios.:
Publicar un comentario