Sistemas Operativos Distribuidos

Anuncio
Sistemas Operativos Distribuidos
Los sistemas operativos distribuidos abarcan los servicios de los de red, logrando integrar
recursos (impresoras, unidades de respaldo, memoria, procesos, unidades centrales de
proceso) en una sola máquina virtual que el usuario aceza en forma transparente. Es decir,
ahora el usuario ya no necesita saber la ubicación de los recursos, sino que los conoce por
nombre y simplemente los usa como si todos ellos fuesen locales a su lugar de trabajo
habitual.
Todo lo anterior es el marco teórico de lo que se desearía tener como sistema operativo
distribuido, pero en la realidad no se ha conseguido crear uno del todo, por la complejidad
que suponen: distribuir los procesos en las varias unidades de procesamiento, reintegrar
sub-resultados, resolver problemas de concurrencia y paralelismo, recuperarse de fallas de
algunos recursos distribuidos y consolidar la protección y seguridad entre los diferentes
componentes del sistema y los usuarios.
Los avances tecnológicos en las redes de área local y la creación de microprocesadores de
32 y 64 bits lograron que computadoras mas o menos baratas tuvieran el suficiente poder en
forma autónoma para desafiar en cierto grado a los mainframes, y a la vez se dio la
posibilidad de intercomunicarlas, sugiriendo la oportunidad de partir procesos muy pesados
en cálculo en unidades más pequeñas y distribuirlas en los varios microprocesadores para
luego reunir los sub-resultados, creando así una máquina virtual en la red que exceda en
poder a un mainframe.
El sistema integrador de los microprocesadores que hacer ver a las varias memorias,
procesadores, y todos los demás recursos como una sola entidad en forma transparente se le
llama sistema operativo distribuido.
Las razones para crear o adoptar sistemas distribuidos se dan por dos razones principales:
por necesidad (debido a que los problemas a resolver son inherentemente distribuidos) o
porque se desea tener más confiabilidad y disponibilidad de recursos. En el primer caso
tenemos, por ejemplo, el control de los cajeros automáticos en diferentes estados de la
república.
Ahí no es posible ni eficiente mantener un control centralizado, es más, no existe capacidad
de cómputo y de entrada/salida para dar servicio a los millones de operaciones por minuto.
En el segundo caso, supóngase que se tienen en una gran empresa varios grupos de trabajo,
cada uno necesita almacenar grandes cantidades de información en disco duro con una alta
confiabilidad y disponibilidad.
La solución puede ser que para cada grupo de trabajo se asigne una partición de disco duro
en servidores diferentes, de manera que si uno de los servidores falla, no se deje dar el
servicio a todos, sino sólo a unos cuantos y, más aún, se podría tener un sistema con discos
en espejo (mirror) a través de la red, de manera que si un servidor se cae, el servidor en
espejo continúa trabajando y el usuario ni cuenta se da de estas fallas, es decir, obtiene
acceso a recursos en forma transparente.
Un sistema distribuido es solo un sistema expandido en toda la red, pero visto como un
solo sistema para todos los elementos que existen en la red. Los usuarios no necesitan saber
de la multiplicidad de máquinas y pueden acceder a los recursos remotos de la misma
manera que lo hacen para los recursos locales. La tolerancia a fallas es más alta, pero
también podemos decir que el control y las decisiones son tomados globalmente, los
recursos conectados a la red son administrados de una forma global usando mecanismos
distribuidos en lugar de mecanismos locales.
Ventajas De Los Sistemas Distribuidos

Compartir Recursos
Si varias computadoras están conectadas entre sí, entonces un usuario puede utilizar en una
computadora los recursos disponibles en otra. Por ejemplo, en la computadora 1 se puede
utilizar una impresora láser solo disponible en la máquina 2,al mismo tiempo en la 2 es
posible tener acceso a un archivo que reside en la 1.En general el compartimiento de
recursos en un sistema distribuido ofrece los mecanismos para compartir archivos en
instalaciones remotas, procesar información ,imprimir archivos y utilizar diferentes
dispositivos remotos de hardware.

Aceleración De Cálculos
Sin un cálculo determinado puede dividirse en varios subcálculos para que se ejecuten
concurrentemente, un sistema operativo distribuido permitirá distribuir los cálculos entre
las distintas computadoras y también ejecutarlos concurrentemente. Además si una
computadora está sobrecargada de trabajos, algunos de ellos pueden pasarse a otra
máquina.

Confiabilidad
Si falla una computadora en un sistema distribuido, las restantes pueden continuar
trabajando. Si el sistema se compone de computadoras de gran tamaño la falla de una no
debería afectar a las demás; si son computadoras pequeñas las que forman el sistema donde
cada una es responsable de alguna función, entonces un solo error puede detener el
funcionamiento de todo el sistema. En general si hay suficiente hardware y software en el
sistema éste puede continuar su trabajo normalmente.
El sistema debe detectar la falla de una computadora y tomar las medidas necesarias. El
sistema no debe utilizar los servicios de esa máquina; además otra máquina puede hacerse
cargo de la función que falló. Por último decimos que cuando la máquina que falló se
repara deben llevarse a cabo mecanismos para reintegrarla de nuevo al sistema.

Comunicación
Si varias máquinas están interconectadas por medio de una red, los usuarios tienen la
posibilidad de intercambiar in formación. A través de el pasaje de mensajes la
funcionalidad en una máquina independiente se puede ampliar a un sistema distribuido.
Algunos de los beneficios que podemos obtener son la transferencia de archivos y el uso
del correo.
La ventaja de un sistema operativo distribuido es que muchas de las funciones mencionadas
pueden efectuarse a grandes distancias. Dos personas en diferentes zonas geográficas
pueden trabajar en un mismo proyecto. Con la transferencia de archivos se pueden
transferir programas e intercambiar correspondencia para coordinar el trabajo.
Otras ventajas que podemos mencionar de los sistemas distribuidos es la que tienen con
respecto a los sistemas centralizados y son:
1.-) Economía: Es mucho más barato instalar un sistema distribuido(o sea varias
computadoras conectadas entre si) y no un gran mainframe ya sea por el costo que este
tiene o por la imposibilidad de compartir los datos entre varios usuarios.
2.-) Velocidad: Al instalar un sistema distribuido, obtenemos más velocidad que en un
mainframe ya que podemos realizar las distintas tareas entre los procesadores del sistema.
3.-) Distribución Inherente: Se refiere a la posibilidad de descomponer las tareas del
sistema entre varios procesadores y no recargar a uno solo con agobiantes instrucciones, en
consecuencia obtenemos mayor aceleración de cálculos.
4.-) Seguridad: Significa que si una máquina falla el sistema no se cae y continúa
trabajando normalmente.
5.-) Crecimiento por Incrementos: Sería algo así como la escalabilidad, es decir podemos
agregar componentes al sistema como más procesadores, multimedia etc. sin necesidad de
tener que cambiar todo el hardware cuando queremos hacer una actualización.
Desventajas De Los Sistemas Distribuidos
En todos los sistemas de computadoras existen múltiples fallas solo que en un sistema
distribuido resultan más visibles, dado que existen más componentes y por lo tanto mayor
interferencia e interconexiones, como así también fallas parciales (en cada máquina)estos
problemas causados por interconexión se denominan problemas del sistema. Veamos
algunos de estos problemas:

Estos problemas de sistema, se presentan cuando se interconectan entre si diferentes
componentes que por lo general trabajan independientemente. Este tipo de falla resulta más
fácil de apreciar cuando utilizamos correo electrónico o sistemas de archivos.

Otro problema se presenta cuando tenemos dos componentes en un sistema (cada uno
por separado) y presentan características funcionales, pero al combinarlos se
comportan de una manera no esperada.

También podemos encontrarnos con fallas de propagación, es decir que la falla que
sufra un nodo puede echar abajo toda la red. Por lo general este tipo de falla resulta de
algún error de diseño.

Podemos tener problemas en una red de comunicación, debido a que esta puede
perder mensajes, entonces es necesario contar con un software especial para controlar los
mensajes. Un detalle a tener en cuenta es que las redes sufren saturación por el gran número
de mensajes que se transmiten por ella.

Por último diremos que los sistemas distribuidos sufren de una gran vulnerabilidad es
decir la información esta disponible para todos los usuarios y puede carecer de privacidad.
Descargar