Modelos de Sistemas Operativos Distribuidos Asociados a Procesos

Esta clasificación también se refiere a una visión externa, que en este caso se refiere a la del usuario, el cómo aceza los servicios. Bajo esta clasificación se pueden detectar dos tipos principales: sistemas operativos de red y sistemas operativos distribuidos.

Sistemas Operativos de Red

Los sistemas operativos de red se definen como aquellos que tiene la capacidad de interactuar con sistemas operativos en otras computadoras por medio de un medio de transmisión con el objeto de intercambiar in1formación, transferir archivos, ejecutar comandos remotos y un sin fin de otras actividades.

El punto crucial de estos sistemas es que el usuario debe saber la sintaxis de un conjunto de comandos o llamadas al sistema para ejecutar estas operaciones, además de la ubicación de los recursos que desee acezar. Por ejemplo, si un usuario en la computadora hidalgo necesita el archivo matriz.pas que se localiza en el directorio /software/código en la computadora modelos bajo el sistema operativo UNIX, dicho usuario podría copiarlo a través de la red con los comandos siguientes: hidalgo % hidalgo % rcp modelos:/software/código/matriz.pas . hidalgo%

En este caso, el comando rcp que significa "remote copy" trae el archivo indicado de la computadora modelos y lo coloca en el directorio donde se ejecutó el mencionado comando. Lo importante es hacer ver que el usuario puede acezar y compartir muchos recursos.

Existen dos tipos básicos de redes: Las redes locales(LAN) y las redes de área ancha(WAN).La principal diferencia entre ambas es su distribución geográfica. Las redes locales están compuestas por procesadores distribuidos en un área geográfica pequeña, como un edificio o varios edificios adyacentes; en cambio las redes de área ancha, están formadas por varios procesadores autónomos distribuidos en un área geográfica extensa(como todo un país).Estas diferencias radican en la velocidad y confiabilidad de la red de comunicaciones y se ven reflejadas en el diseño del sistema operativo.

Redes Locales

Las redes locales(LAN) surgieron a principios de los años setenta como sustituto de los grandes sistemas de computación central. En ese momento muchas empresas consideraron que era más económico tener varias computadoras pequeñas, cada una con sus aplicaciones que un solo sistema de gran tamaño.

Como las redes locales están diseñadas para abarcar una pequeña área geográfica, las instalaciones están a poca distancia entre si, los enlaces de comunicación tienen mayor velocidad y menor tasa de errores que los de área ancha.Los enlaces más comunes son el par trenzado, el cable coaxial y la fibra óptica.

Una típica red local puede consistir en varias máquinas diferentes, dispositivos periféricos compartidos(como impresoras láser) estaciones de trabajo etc.Para construir éstas redes debemos emplear un esquema Ethernet, donde el medio de comunicación es un cable coaxial multiacceso con un esquema de detección de colisiones.

Redes de Area Ancha

Estas redes(WAN) surgieron a finales de los años setenta como un proyecto académico de investigación para ofrecer una comunicación eficiente entre instalaciones, permitiendo compartir de manera eficiente y económica el hardware y el software entre una extensa red de usuarios.

La primera red que se diseño y desarrolló fue Arpanet. Los trabajos de Arpanet comenzaron en 1968 y ha crecido notablemente, de una red de 4 máquinas a una red mundial de redes como lo es Internet que hoy comprende miles de máquinas conectadas entre si.

Debido a que las instalaciones en una red de área ancha están distribuidas físicamente en una extensa área geográfica, los enlaces de comunicación son normalmente lentos y poco confiables. Los enlaces típicos son líneas telefónicas, enlaces por microondas y canales de satélite y se controlan mediante procesadores de comunicación especiales responsables de definir la interfaz por medio del cual las instalaciones se comunican en la red.

Si tomamos una red de área ancha como internet, el sistema permite que se comuniquen entre si las instalaciones separadas llamadas anfitriones; las máquinas anfitriones generalmente se diferencian del resto en cuanto a su tipo, velocidad, sistema operativo etc.

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.

Diferencias entre Sistemas

La diferencia fundamental entre un sistema en red y uno distribuido se puede explicar a través del análisis de la localización del módulo de comunicaciones entre procesos.

Un sistema en red típico es una colección de sistemas operativos locales, acompañado de servidores de impresión y de archivos, conectados por medio de una red. Los usuarios están enterados de la multiplicidad de máquinas y para el acceso a los recursos necesitan conectarse a la máquina remota o transferir datos de la máquina remota a la propia. Podemos decir que todos los sistemas en red se ejecutan como funciones locales autónomas a la administración de dispositivos, de procesos, de entradas y salidas, de archivos y recursos en general.

Estas funciones deben interactuar, pero tomando decisiones locales sin tener en cuenta procesos y recursos remotos. Las decisiones y el control orientado a operaciones remotas, son tomadas solo a nivel de la comunicación de la red.

Por otro lado podemos decir que 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 tomadas globalmente, los recursos conectados a la red son administrados de una forma global usando mecanismos distribuidos en lugar de mecanismos locales.

 Base Histórica

El comienzo potencial de la utilización de sistemas distribuidos es a principios de los 70. Tras el emergimiento de los minicomputadores; la utilización de estos como estaciones de trabajo gráficas uniusuario fue una gran éxito, sobre todo en el desarrollo de SW. Este éxito condujo a pensar en la posibilidad de conseguir los mismos resultados desde un punto de vista multiusuario.

Problema: la tecnología necesaria para transformar aquel sistema uniusuario en otro coopoerativo no existía en aquellos momentos. Uno de los primeros éxitos en desarrollo fue gracias al Xerox Palo Alto Research Center (Xerox PARC), en 1971-1980:

Servidores de impresión y de ficheros.

Primera red local de alta velocidad (Ethernet).

Sistemas distribuidos experimentales.

Primera estación de trabajo: Alto:

monitor monocromo de alta resolución.

128 Kb de memoria principal.

Disco duro de 2.5 Mb.

CPU microprogramada a la velocidad de 1 instrucción/2-6 microsegundos.

Xerox DFS (Distributed File System).

En primera época, también:

UNIX

ARPANet (padre de la Internet actual).

SmallTalk (primer concepto de programación orientada a objetos).

Después:

Berkeley UNIX.

Ethernet (ya comentada)

Sun NFS

AFS (Andrew File System)

Mach

Amoeba

Chorus

Modelos de Sistema Distribuído

Estaciones y servidores

Es el más común en la actualidad. A cada usuario se le asigna una estación. Las estaciones: ejecutan las aplicaciones. Dan soporte a la interfaz de usuario (GUI). Acceden a los servicios compartidos, mediante SW de comunicaciones.

Los servidores dan acceso a: Información compartida (servicio de ficheros) dispositivos HW compartidos (impresoras, scanners, ...) funciones del Sistema Operativo (autentificación, ...) Ejemplos:

XDS y Cedar, del Xerox PARC.

V-system de la Universidad de Stanford.

Argus, del MIT.

Banco de procesadores

Los procesadores del pool tienen un CPU, suficiente memoria, pero no tienen ni discos ni terminales. Los usuarios acceden al sistema desde terminales-X. Gestor de recursos: controla el acceso a los procesadores del pool (PP). El usuario especifica sus requerimientos (CPU, memoria, programa).

El Gestor de Recursos le asigna un procesador como ordenador personal. Ventajas con respecto a Estaciones y Servidores: mejor utilización de recursos: muchos puntos de entrada con pocas CPUs. mayor flexibilidad: se pueden dedicar procesadores para expandir servicios. compatibilidad con el SW preexistente. utilización de procesadores heterogeneos.

Incoveniente: mala respuesta interactiva: terminales conectados a una linea serie. Ejemplo: CDCS, basado en el anillo de Cambridge.

Miniordenadores Integrados

Basado en máquinas multiusuario. El usuario se conecta a una máquina específica. Enfoques históricos: acceso remoto mediante copias: de esta forma no se mezclan los espacios de nombramiento locales, pero no es distribuido. sistemas de ficheros contiguos:

superdirectorio virtual: "/../", esquema de nombramiento global.

no es distribuido: el nombre de los ficheros depende de su ubicación (máquina A, B, C????)

ejemplo: NETIX, Newcastle Connection.

Locus (UCLA):

Cada ordenador mantiene su autonomía (conjunto completo de SW estándar, aplicaciones y servicios propios). Esquema de nombramiento global: acceso independiente de la ubicación, posibilidad de migración de ficheros entre máquinas.

Modelos híbridos

AMOEBA, de la Universidad Libre de Amsterdam. Consiste en: sistema de estaciones y servidores más un pool de procesadores. Funcionalidad mixta: estaciones para las aplicaciones interactivas. procesadores variados. servidores especializados. Características:

Kernel pequeño: planificación y paso de mensajes.

el SO corre como procesos de usuario.

servicio de gateway a WAN.

gestión del pool mediante un servidor de carga y otro de procesos.

Ventajas:

recursos de procesamiento ajustados a las necesidades del usuario.

ejecución concurrente.

acceso a través de terminales (precio).

Requisitos y características de un SOD.

Características

Compartición de recursos (resource sharing)

Definición de recurso: rango de "cosas" que pueden ser compartidas en un sistema distribuido, de forma útil. Desde componentes HW (disqueteras, impresoras) a entidades SW (ficheros, ventanas, bases de datos).

Dispositivos HW: se comparten para reducir costes.

SW: compartición de herramientas de desarrollo, ficheros, facilidad de actualización.

Groupware.

Gestor de recursos: módulo SW que gestiona un conjunto de recursos de un tipo particular. Para cada conjunto de recursos existe un número de políticas diferentes, pero tambien características comunes.

Modelos de gestión de recursos:

Modelo Cliente/Servidor

UNIX.

Necesidad de centralización de gestión.

Necesidad de diferenciar entre servidor y servicio.

Inconveniente: algunas aplicaciones pueden requerir una cooperación más directa entre clientes.

Modelo orientado a objetos

Cada recurso es visto como un objeto, unívocamente identificado, y móvil.

Ventajas: simplicidad, flexibilidad. Los objetos pueden actuar como usuarios de recursos y como gestores de recursos.

Se necesita un gestor de objetos: colección de procedimientos y datos que caracterizan una clase de objetos.

Ejemplos: Argus, Amoeba, Mach.

Apertura (openness)

Definición: permite a un SOD expandirse en múltiples direcciones. Un sistema puede ser abierto o cerrado con respecto a HW o SW: La apertura se consigue especificando y documentando las interfaces fundamentales del sistema y poniéndolos disponibles a los desarrolladores, para, finalmente, estandarizar esas interfaces:

UNIX: los recursos del SO se acceden mediante System Calls, totalmente documentadas y disponibles a los desarrolladores. La apertura de UNIX está inherentemente asociada a sus System Calls.

Concurrencia (concurrency)

Varios procesos existen al mismo tiempo en una máquina: ejecución concurrente. Con un solo procesador, esto implica planificación de CPU.

Escalabilidad (scalability)

Definición: capacidad de un sistema de operar de manera efectiva independientemente de su tamaño. La existencia de crecimientos en el sistema no implican modificaciones de la arquitectura básica del mismo. Distribución de cargas. Se trata de evitar las siguientes centralizaciones:

componentes centralizados.

tablas centralizadas.

algoritmos centralizados. Características:

ninguna máquina tiene información completa del estado del sistema.

las máquinas toman decisiones basadas en información local.

el fallo de una máquina no implica la terminación en fallo del algoritmo.

no se asume la existencia de un reloj global.

Técnicas empleadas:

replicación de datos.

caching.

duplicación o complemento de tareas entre servidores.

Tolerancia a Fallos (fault tolerance)

Un fallo HW o SW puede producir inconsistencias o pérdidas de servicio. Dos ideas: redundancia del HW, programas de recuperación de fallos. Redundancia: arquitecturas de servidores en HOT STANDBY: muy caro (cada vez menos). Redireccionamiento de servidores (yahoo).

Roll-back: transacciones atómicas.

Sistemas de Alta disponibilidad (HA).

Transparencia (transparency)

Definición: abstracción que permite al usuario o al desarrollador desconocer los diferentes componentes del sistema distribuido. La separación de componentes en inherente en un sistema distribuido => acceso a recursos es un problema.

Tipos de transparencia (ANSA Reference Manual, ISO's Reference Model for Open Distributed Processing, [ISO RM ODP]:

t. de acceso: acceso a objetos locales o remotos de la misma manera.

t. de lugar: acceso a objetos sin conocer dónde están.

t. de concurrencia: varios procesos pueden operar concurrentemente usando objetos de información compartidos sin estorbarse.

t. de replicación: diferentes réplicas de un mismo objeto de información sin enterarse a cuál se accede, ni diferencias entre ellos.

t. de fallo: aislamiento de fallos, de forma que las aplicaciones puedan completar sus tareas.

t. de migración: permite mover los objetos de información sin afectar a las aplicaciones.

t. de rendimiento: redistribución de cargas en el sistema sin modificación en las aplicaciones.

t. de escalabilidad: permite asumir cambios de tamaño del sistema y aplicaciones sin modificar la estructura del sistema ni los algoritmos de los programas.

Las más importantes: t. de acceso y de lugar: TRANSPARENCIA DE RED.

Requisitos de diseño

Los componentes y arquitecturas del sistema utilizadas para cumplir con las características mencionadas arriba necesitan a su vez cumplir con unos requisitos:

Metas en el Diseño:

Prestaciones

Fiabilidad

Escalabilidad

Consistencia

Seguridad

Requisitos básicos de diseño:

Nombrado: los nombres asignados a recursos u objetos han de tener un significado global e independiente de la localización. Además, ha de existir un sistema de interpretación que pueda trasladar nombres a recursos (ejemplo: internet(host + port)).

Comunicación: doble optimización: HW y SW (protocolos, algoritmos). Sincronización en la comunicación.

Estructura del SW: en sistemas centralizados, el diseño de SW es monolítico. En SSDD, los programas pueden acceder a diferentes servicios, cada uno de los cuales provee su propio interfaz de operación.

Capas en un sistema centralizado.

En un SD, los servicios deben ser fácilmente añadidos y escalables, por lo que el Kernel será la única parte rígida, restringiéndose a:

alojamiento y protección de memoria.

creación de procesos y planificador.

comunicación entre procesos (IPC).

manejo de dispositivos periféricos.

Categorías principales de SW en un SD. De aquí se distinguen tres categorías:

Kernel (OS Kernel Services). Ya comentado anteriormente. Se ha llegado al desarrollo de microkernels: el conjunto mínimo de servicios y recursos a partir de los cuales el resto de servicios se pueden construir. De esta forma se consigue el máximo nivel de APERTURA.

Servicios abiertos (Open Services): facilidades añadidas. Generalmente se ofrece el conjunto de servicios típicos de un sistema UNIX (servicio de ficheros, correo electrónico...).

Soporte para programación distribuida (distributed programming support): por ejemplo, RPC.

Alojamiento de la carga de trabajo:

Modelo de pool de procesadores.

Aprovechamiento de "idle workstations".

Multiprocesadores de memoria compartida. Cada procesador ejecuta lo que va pudiendo.

Mantenimiento de la consistencia:

c. de actualización: problema que aparece cuando varios procesos acceden y actualizan datos constantemente. Es necesaria la atomicidad de operaciones, mediante mecanismos de exclusión mutua.

c. de replicación: la réplica de datos ha de efectuarse óptimamente.

c. de caché.

c. de fallos: en un sistema centralizado, si falla, todo falla. En uno distribuido, existirán diferentes MODOS DE FALLOS (failure modes), donde si el sistema en conjunto falla, en cada máquina su proceso se encontrará en un estado determinado: transacciones atómicas.

c. de reloj: debido al ancho de banda de las redes, la sincronización entre máquinas no es obvia. Afortunadamente, este requerimiento en SSDD no suele ser absoluto, sino relativo a orden.

c. de interfaz de usuario.

Requerimientos del Usuario:

Funcionalidad: qué debería hacer el sistema por los usuarios.

Requerimiento mínimo: la funcionalidad provista por un sistema distribuído no debería de ser menos que el obtenido por un sistema aislado.

Requerimiento máximo: mejora sobre los servicios provistos por cualquier ordenador personal por sí sólo, a través de:

compartición a través de la red, y especialización de recursos (p.e. servidor de impresión).

aplicación de las ventajas de la distribución al nivel de APIs (application programming interface), para que puedan ser implementadas.

Opciones de migración de computación centralizada multiusuario a computación distribuida:

Adaptar Sistemas Operativos ya existentes: adición de servicios, tipo NFS.

Migrar a un SO totalmente nuevo: el SW anterior es inútil.

Emulación: migrar a un SO nuevo, pero con características de emulación de uno o más SSOO ya existentes. Ejemplos: Mach, Chorus. Problema: prestaciones.

Reconfiguración: necesidad del sistema para adaptación a cambios sin causar discapacidad a la provisión de servicio existente.

Diseño de un sistema distribuido en relación a la escala temporal:

Cambios a corto plazo:

una máquina, red, componente... estropeada se reemplaza por otra.

la carga de trabajo se ha de reequilibrar, pasándo procesos a máquinas libres.

la comunicación de red se minimiza.

Cambios a medio y largo plazo:

Asignación de nuevos roles a máquinas.

Adición de nuevas máquinas, o nuevos tipos.

Calidad de servicio: temas de prestaciones, confianza y seguridad.

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.

Aceleracion 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 agoviantes 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.

Sistema de Archivo Distribuido

Un sistema de archivos distribuido (SAD) es una implantación distribuida del clásico modelo de sistema de archivos de tiempo compartido, donde varios usuarios comparten archivos y recursos de almacenamiento. El propósito de un SAD es apoyar el mismo tipo de comparación cuando los archivos están dispersos físicamente en varias instalaciones de un sistema distribuido.

En este capitulo analizaremos distintas maneras de diseñar e implantar un sistema de archivos distribuido. Primero analizamos los conceptos comunes en que se apoyan los sistemas de archivos distribuidos; luego ilustramos nuestros conceptos examinando los sistemas de archivos distribuidos UNIX United, NFS, Andrew, Sprite y Locus. En la presentación utilizamos esta estrategia debido a que los sistemas distribuidos siguen siendo un Area de investigación y aún se estudian muchas de las consideraciones de diseño que presentamos. Al explorar estos ejemplos de sistemas, esperamos ofrecer un esbozo de los factores por considerar en el diseño de un sistema operativo e indicar las Areas en las que se encuentran actualmente las investigaciones sobre sistemas operativos.
Copyright @ 2013 Sistemas Operativos. Designed by Templateism | MyBloggerLab