M

magnatedemineral

Usuario (Argentina)

Primer post: 26 abr 2011Último post: 26 abr 2011
2
Posts
0
Puntos totales
1
Comentarios
Informacion sobre MAC
Informacion sobre MAC
Apuntes Y MonografiasporAnónimo4/26/2011

Historia y evolución del Sistema Operativo Mac OS Hoy 26 de Octubre llega el lanzamiento oficial del Mac OS X 10.5 “Leopard“. La evolución del sistema operativo de Apple continúa y aprovechamos a conocer su historia, desde su nacimiento en 1984 con el Sistema 1 y su respectiva evolución. Panorámica histórica sobre el Sistema Operativo Mac Apple LisaEl Sistema Operativo Mac OS no fue la primer interfaz gráfica, pero fue la primera con gran éxito por su accesibilidad de precio. Para aquellos años en el mercado lo que existía era La Xerox Alto con un costo de 32,000 dólares, la Xerox Star costó 16,600 dólares y la Apple Lisa con un precio de 10,000 dólares. El nombre de esta Apple fue un capricho de Steve Jobs por su hija. Este Sistema 1 venía incluido en el primer Macintosh, que tenía un precio de 2,500 dólares. 1984: Sistema 1 Apple - Sistema 1El Sistema 1 tenía escritorio, ventanas, iconos, mouse, menús y scrollbars. El basurero “Trash” funcionaba como un tobogán de basura, todo desaparecía luego de reiniciar el ordenador, no se podía trabajar en dos aplicaciones al mismo tiempo, solo en una, ya que la memoria virtual no existía. En el Sistema 1 era imposible crear un folder dentro de otro folder, de hecho todos los archivos eran guardados en la misma dirección del disco, se creaba una nota en la tabla de archivos para que cada archivo estuviera en su respectivo folder y así el Finder podría parecer como que el archivo estaba en su folder. Luego el Sistema 1.1 agregó la caja de avisos de diálogo, también el comando para limpiar tu Mac y algunos implementos para la velocidad. 1985: Sistema 2 El Sistema 2 fue notable en mejoras. Incrementó la velocidad del Finder haciéndolo un veinte por ciento más rápido, los comandos de regresar y cerrar se eliminaros. Fueron agregadas más opciones como: crear nuevos folders, apagar, la impresora de escritorio y los ítems eran listados de forma vertical con un pequeño icono. Los discos o unidades podían ser arrastrados al icono de basura y podían ser extraídos. 1986: Sistema 3 Apple - Sistema 3En el Sistema 3 el Finder fue mejorado y más rápido, el orden de los archivos HFS (Hierarchical File System) fue reemplazado por el nuevo sistema de Macintosh MFS (Macintosh File System) de los Sistemas 1 y 2. Los folders eran reales y se podían crear folders dentro de folders. Los iconos con Zoom fueron agregados en la parte inferior derecha en la ventana dentro del Dashboard, haciendo clic sobre estos se podía cambiar el tamaño para ajustar los contenidos del folder si era posible. Haciendo clic nuevamente se podía hacer que la ventana regresara a su tamaño normal. El icono del basurero sobresalía cuando algo era puesto sobre este y las líneas punteadas en dirección contraria. El Sistema 3.2, se corrigieron treinta errores, la calculadora fue actualizada así que el teclado numérico en pantalla se parecía al teclado numérico en el teclado. El Sistema 3.3, fue agregado por AppleShare el antiguo compartidor de archivos de Macintosh. 1987: Sistema 4 Apple - Sistema 4El Sistema 4 fue introducido como Macintosh SE y Macintosh II. A este sistema se le agregó múltiple soporte al monitor. El Sistema 4.1, soportaba discos de 32+ MB, se le implemento el Finder múltiple, los usuarios podían cambiar entre el Finder, que solo soportaba un programa y el Finder múltiple que soportaba múltiples programas al mismo tiempo. Ahora el Finder mostraba cuanta memoria utilizaba cada programa, también se le agregó un Panel de control configurable. El Sistema 4.3, fue un sistema actualizado, se le arreglaron algunos errores y controladores de impresora. 1988: Sistema 6 En el Sistema 6 se agregaron colores, aun así el Finder no tenía color, aunque las máquinas ya eran capaces. A la opción de “Borrar Disco” se le agrego un botón para poder cancelar esta acción, también fue agregada la opción de mostrar el número de versión del archivo. Fue así también agregada una notificación en el monitor permitiendo a los programas notificar a lo usuario por medio de la barra de menú si ellos necesitaban conectarlo. El Sistema 6.0.1-6.0.8, simplemente se agregados algunos soportes para los nuevos modelos que ellos iban lanzando. 1990: Sistema 7 Apple - Sistema 7El Sistema 7 fue el gran cambio de software para esta época, se eliminó el Finder y el Finder múltiple. El Sistema 7 ya sólo tenía el Finder múltiple permitiendo hacer muchas tareas simultáneamente. La memoria también tuvo un gran cambio a 32b, esto permitió a las Macs usar mas de 8 MB de Ram, en el sistema operativo, esto fue también implementado en el Sistema 7. El Networking por Apple Talk y compartir archivos por AppleShare fue agregado al sistema operativo, como opción adicional. El software QuickTime multimedia también fue trabajado en este sistema, pero estaba disponible como un software extra. El Sistema 7 agregó muchas características que iban a ser construidas en el nuevo sistema Mac OS X. Un menú fue agregado en la parte inferior derecha del Dashboard, que mostraba la lista de los programas que estaban siendo utilizados en ese momento y permitía a los usuarios cambiarse entre ellos. Luego de la aplicación de menú fue agregado el menú de “Ayuda”, el “basurero” fue cambiado a un verdadero folder permitiendo eliminar los archivos hasta que se seleccionaba la opción de “Vaciar” el basurero. Fue implementada la opción de arrastrar que permitía llevar un texto de un programa a otro sin necesidad de copiar y pegar. En el Sistema 7 el buscador finalmente tomo una ventaja en los objetos con color, haciendo que los elementos en la interfaz se vieran como en 3D. El Sistema 7.0.1p Performa, fue lanzado junto con el Sistema 7.0.1’s, arreglando algunas características especiales para usuarios principiantes de este Sistema. El Sistema 7.1, se le implemento un folder de Fuentes así que podían ser fácilmente agregados o removidos, luego estos fueron agregados y utilizados por el mismo Sistema. El Sistema 7.1.1, también conocido como Sistema 7 Pro, Incorporando AppleScript, QuickTime, y PowerTalk, estos estaban disponibles como extras del sistema. El Sistema 7.1.2, fue creado para soportar Chips de microprocesadores. El Sistema 7.5, integraba todas las características del Performa, también agregaba mucha más información de la Guía de ayuda del sistema de Apple (Apple Guide help system). Finalmente en la pantalla de arranque existió una pequeña barra. A pesar de que Mac había trabajado durante once años llegando hasta el Sistema 7.5, esto mostraba claramente de que Mac necesitaba completamente una nueva creación del Sistema Operativo. Mac OS 7.6, fue el primer sistema operativo lanzado con una estrategia de Apple para luego ser actualizado como el actual Mac OS cada 6 meses, hasta que Rhapsody/Mac OS X fuera finalizado. Fueron corregidos algunos errores vía Mac Os 7.6.1 1997: Mac OS 8 Apples - Sistema 8Mac OS 8 incluyó otra renovación al Finder que podía hacer más cosas al mismo tiempo, dando la opción de controlar múltiples aplicaciones al mismo tiempo con un mejor desempeño de las computadoras con procesador. La apariencia del Finder fue renovada para que tuviera un mejor aspecto 3D, también podía ser personalizada. El Web Sharing permitía a los usuario hospedar páginas en sus computadoras. Mac OS 8.1, fue mas notable para el HFS+ (Esta improvisada versión del Sistema de archivos jerárquica que fue introducido en el Sistema 3) liberaba gran cantidad de espacio (Cientos de Megabytes) en el disco duro despejaba mas de 1 GB. Mac OS 8.1. También fue la ultima versión que soportaba Macs de 68K, todas las versiones anteriores eran solo para PowerPC. Mac OS 8.5, introdujo Sherlock un avanzado programa de búsqueda que trabaja en el disco local, servicios de redes y la Internet. Mac OS 8.6, agregó una opción de contenido a Sherlock aumentando su forma de administración y un agregado soporte de USB y FireWire. 1999: Mac OS 9 Apple - Sistema 9La opción de tener varios usuarios en una Mac fue agregada en esta versión, permitía a los usuarios ingresar y tener sus propias configuraciones. AppleTalk sobre TCP/IP fue también implementado. Software Update permitía a los usuarios tener las actualizaciones de softwares fuera de Internet, y podía informar a los usuarios de las nuevas actualizaciones cuando ellos salían. Mac OS 9.0.2 y 9.0.3, llegaron con sus modelos específicos, Mac OS 9.0.4 unificó todo nuevamente y es la única versión del Classic Mac OS compatible con el Entorno Classic del Mac OS X Public Beta. Mac OS 9.1, agregó estabilidad y la ventana de menú. Esto es lo mínimo del Classic en Mac OS X 10.0 y 10.1. Mac OS 9.2, estaba disponible como pre-instalación del sistema iniciando con “Quicksilver” Power Mac G4s lanzado en el verano del 2001. Mac OS X Apple MacOSXEsta basado fuertemente en las PowerPC-port de OpenStep. Por eso Mac OS X hereda la memoria y procesador de Mach’s y el driver del dispositivo de la interfaz, BSD’s POSIX – UNIX Protocolo del programa que soporta y trabaja en interfaz de redes, también algunos elementos de la interfaz de NeXT’s. Mac OS X, hoy en día este sistema operativo esta virtualmente en todas las Mac’s, y fue trabajado por una década para poder obtener el éxito que tiene ahora. 2001: Mac OS X 10.0 “Cheetah” Apple - Sistema10Mac OS X 10.0 fue lanzada el 24 de marzo del 2001, este incorporaba muchas características que fueron agregadas por las personas que colaboraron en Mac OS X Public Beta. Mac OS X 10.0 también contenía todas características de un sistema operativo moderno, protegía la memoria, y así los programas no podían utilizar la información de otros programas, de esta forma el procesador no se bloqueaba, los drivers de los dispositivos podían ser cargados o descargados si eran necesario. Mac OS X también agrego Cocoa, derivado de NeXT’s un muy sofisticado y desarrollado ambiente OpenSTEP. Existían algunos asuntos pendientes, como el original Mac OS. Los usuarios de Mac OS X iniciaron a crear una gran queja sobre nombre que tenia este sistema operativo “Cheetah” que era muy salvaje e inapropiado. El ambiente Classic en 10.0, también era mejor que el Public Beta, aun tenia una extraña compatibilidad de problemas y conducta caprichosa. Los interfaz de Mac OS X se veía muy parecida a la interfaz de Mac OS y los usuarios creían que tenían las mismas características sin embargo no fue así y tuvieron que aprender nuevos hábitos y dejar los viejos. 2001: Mac OS X 10.1 “Puma” Mac OS 10.1 fue lanzado luego de un año del 10.0, e incorporaba mejor desempeño especialmente en Macs G3. Las versiones 10.1.1, 10.1.2, 10.1.3, 10.1.4, y 10.1.5 todas tenían mejora en los errores, y actualizaciones en sus componentes. La mayoría de open source como utilidades de UNIX fueron incluidas en las Mac OS X y drivers adicionales para poder soportar mas dispositivos. 2002: Mac OS X 10.2 “Jaguar” Apple JaguarEl 25 de agosto de 2002 fue lanzada esta versión y Apple prosiguió con la andadura de su sistema operativo con el lanzamiento de Mac OS X v10.2 “Jaguar”) y que contaba con un nuevo incremento en su rendimiento, un nuevo y depurado look y más de 150 mejoras, entre estas estaba el mayor soporte para redes de Microsoft Windows, Quartz Extreme para la composición de gráficos sea procesada directamente por la tarjeta de video y un filtro contra spam. Apple Address Book para almacenar la información de contactos, tambien agregaba el sistema de red Rendezvous. iChat que consistía en un programa de chateo con soporte de AOL Instant Messenger, incluía así un renovado Finder con búsquedas integradas en cada ventana. 2003: Mac OS X 10.3 “Panther” Apple - PantherMac OS X v10.3 “Panther” se lanzó el 24 de octubre de 2003. Además de tener un rendimiento mucho mayor, incorporó la mayor actualización en la interfaz de usuario, y muchas mejoras que Jaguar el año anterior. Esta versión ya no era compatible en los antiguos modelos G3. Algunas de las mejoras de esta versión es que el Finder fue actualizado e incorpora una interfaz metálica y búsqueda rápida. Exposé permitía una nueva forma de manipular ventanas, también incorporo el Cambio Rápido de Usuarios, que permite tener sesiones con diferentes usuarios abiertas al mismo tiempo y pasar de una a otra rápidamente. Ahora esta nueva versión incluía soporte integrado de fax. FileVault era un Sistema de cifrado en tiempo real del directorio privado de cada usuario. Incrementaba velocidad en todo el sistema con un mayor soporte para los G5. 2005: Mac OS X 10.4 “Tiger” Mac OS X v10.4 “Tiger” fue lanzado el 29 de abril de 2005 y fue la versión disponible más reciente, contenía más de 200 nuevas mejoras, pero como sucedió con el lanzamiento de Panther, algunas máquinas antiguas no podían soportarlo, en particular, cualquier equipo Apple que no contara con conexión FireWire no podía ser soportado en Tiger. Esta versión incluya nuevas características como Spotlight un sistema de búsqueda basado en contenidos y metadatos, así también Dashboard se encontraban widgets, unas miniaplicaciones que permiten realizar tareas comunes y ofrecen acceso instantáneo a la información. QuickTime 7 era la nueva versión que incluía soporte para H.264 y un interfaz completamente rediseñada. Safari como una nueva versión del navegador por defecto del sistema incorpora soporte para RSS, mayor velocidad y seguridad, etc.Esta versión tenía soporte de memoria de 64 bits para los nuevos G5, usando el sistema LP64. 2006: Mac OS X 10.5 “Leopard” Apple LeopardMac OS X v10.5 “Leopard” es lanzada hoy 26 de Octubre de 2007. Esta versión es compatible con las PowerPC y con la nueva tecnología Intel. Entre las características de la nueva versión encontramos: Time Machine: da la posibilidad de poder volver en el tiempo a una versión especifica de los contenidos de una carpeta, del disco duro completo, de un sólo archivo, de un rollo de fotos en iPhoto, etc. Mail 3: es la tercera versión de este programa de correo electrónico de Apple ahora incluye Notas y To-Dos así como variados Templates para enviar email HTML. iChat: da la posibilidad de chatear con tabs o de tener iconos animados, ahora también se tiene muchas funciones adicionales para los vídeochats. Desde presentar vídeos, compartir el escritorio, etc. El Dashboard: trae una herramienta llamada Dashcode para crear Widgets fácilmente. Adicionalmente Safari tiene un botón “Webclip” que permite tomar cualquier fragmento de una página que se esté viendo y convertirla en un Widget. Accesibilidad, se crearon mejoras en las funciones de accesibilidad para que “todos puedan usar un Mac”. El Finder: ahora con CoverFlow similar al de iTunes, tiene una función denominada QuickLook la cual permite abrir varios archivos a la vez con diferentes extensiones y no hay necesidad de abrir el programa, incluso los usuarios podrán hacer búsquedas en otras Mac conectadas en red. El Dock: parece una bandeja de vidrio que recibe reflejos, cuenta con un stacks que permite apilar una serie de elementos y cuando se hace clic sobre él se despliegan en un abanico de opciones. La mayor de ellas siendo un gran avance en las funciones de texto-a-voz con una nueva voz sintetizada llamada Alex, que incluso puede hablar claramente a altas velocidades. Además, trae soporte para pantallas Braille. 2009: Mac OS X 10.6 “Snow Leopard” UPDATE: La más reciente versión del sistema operativo de Mac, apodado Snow Leopard, fue lanzado el 28 de agosto de 2009 y es más rápido que sus predecesores, además de tener varias nuevas características interesantes: Nuevo exposé integrado en el Dock. Es posible utilizar el touchpad para insertar caracteres chinos. La zona horaria se ajusta automáticamente. Ofrece soporte para conectarse a los servidores Microsoft Exchange 2007. Menor consumo de espacio en disco duro y soporte (teórico) para un máximo de 16TB de RAM. También hay que destacar las siguientes innovaciones: Grand Central es una tecnología de programación que permite utilizar los procesadores multinúcleo y optimizar el rendimiento. Quicktime X tendrá soporte optimizado para códecs actuales. OpenCL (Open Computing Language) permitirá programar aplicaciones que utilicen la unidad de procesamiento gráfico para usos no gráficos. Más sobre Apple Apple cumple 25 años de haber lanzado su primer Macintosh al mercado: para los amantes de Apple que aún caer en la tentación de comprar los modelos más recientes, los invitamos a compartir su experiencia con los productos de Apple.

0
0
S
sistemas operativos
Apuntes Y MonografiasporAnónimo4/26/2011

Sistemas operativos: Sistema Operativo Software básico que controla una computadora. El sistema operativo tiene tres grandes funciones: coordina y manipula el hardware de la computadora, como la memoria, las impresoras, las unidades de disco, el teclado o el mouse; organiza los archivos en diversos dispositivos de almacenamiento, como discos flexibles, discos duros, discos compactos o cintas magnéticas, y gestiona los errores de hardware y la pérdida de datos. Cómo funciona un Sistema Operativo Los sistemas operativos controlan diferentes procesos de la computadora. Un proceso importante es la interpretación de los comandos que permiten al usuario comunicarse con el ordenador. Algunos intérpretes de instrucciones están basados en texto y exigen que las instrucciones sean tecleadas. Otros están basados en gráficos, y permiten al usuario comunicarse señalando y haciendo clic en un icono. Por lo general, los intérpretes basados en gráficos son más sencillos, pero muchos usuarios expertos prefieren los intérpretes de instrucciones basados en texto porque son más potentes. Los sistemas operativos pueden ser de tarea única o multitarea. Los sistemas operativos de tarea única, más primitivos, sólo pueden manejar un proceso en cada momento. Por ejemplo, cuando la computadora está imprimiendo un documento, no puede iniciar otro proceso ni responder a nuevas instrucciones hasta que se termine la impresión. Todos los sistemas operativos modernos son multitarea y pueden ejecutar varios procesos simultáneamente. En la mayoría de los ordenadores sólo hay una UCP; un sistema operativo multitarea crea la ilusión de que varios procesos se ejecutan simultáneamente en la UCP. El mecanismo que se emplea más a menudo para lograr esta ilusión es la multitarea por segmentación de tiempos, en la que cada proceso se ejecuta individualmente durante un periodo de tiempo determinado. Sistemas Operativos por la Forma de Ofrecer sus Servicios 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 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. Antecedentes Un Sistema Distribuido es un conjunto de maquinas débilmente acopladas, interconectadas por una red de comunicaciones. Utilizamos el término máquina para representar un computador central o una estación de trabajo. Desde el punto de vista de una máquina especifica en un sistema distribuido, las demás máquinas y sus recursos son remotos, mientras que los recursos propios de la máquina son locales. Para explicar la estructura de Un SAD, necesitamos definir los términos servicio, servidor y cliente. Un servicio es una entidad de software que se ejecuta en una o mas maquinas y un cliente es un proceso que puede invocar una servicio por medio de un conjunto de operaciones que forman su interfaz con el cliente. En algunas ocasiones, se define una interfaz de bajo nivel para la interacción de las máquinas; cuando sea necesario, nos referiremos a esta interfaz como la interfaz entre máquinas. Usando esta terminología, decimos que un sistema de archivos ofrece servicios de archivos a clientes. Una interfaz con el cliente para el servicio de archivo se forma con un Conjunto de Operaciones de archivo primitivas, como crear, eliminar, leer o escribir un archivo. El principal componente del hardware controlado por el servidor de archivos es un Conjunto de dispositivos de almacenamiento secundario (es decir, discos magnéticos), en los cuales se almacenan los archivos y de donde necesidades de los clientes. Se recuperan según las un SAD es un sistema de archivos cuyos clientes, servidores y dispositivos de almacenamiento están dispersos en las máquinas de un sistema distribuido; por tanto, las actividades de servicio tienen que efectuarse a lo largo de la red, y en vez de un sólo depósito de datos centralizado, existen multiples dispositivos independientes de almacenamiento. Como se verá más adelante, la configuración y la implantación de un SAD pueden variar. En algunas configuraciones, los servidores se ejecutan en máquinas dedicadas; en otras, una maquina puede ser un servidor o un cliente. El SAD puede implantarse como parte de un sistema operativo distribuido, bien como una capa de software cuya tarea es administrar la comunicación entre los sistemas operativos y los sistemas de archivos convencionales. Las características distintivas de un SAD son Ia multiplicidad y autonomía de los clientes y servidores en el sistema. Nominación y Transparencia La nominación es una correspondencia entre objetos de datos lógicos y físicos. Por ejemplo, los usuarios tratan con objetos de datos lógicos representados por nombre de archivos, mientras que el sistema manipula bloques de datos físicos almacenados en las pistas de los discos. Generalmente un usuario se refiere a un archivo utilizando un nombre , el cual se transforma en un identificador numérico de bajo nivel, que a su vez se corresponde con bloques en disco. Esta correspondencia multinivel ofrece a los usuarios la abstracción de un archivo, que oculta los detalles de cómo y donde se almacena el archivo en disco. En un SAD transparente se agrega una nueva dimensión de abstracción ..: la ocultación de la ubicación de los archivos de la red. En un sistema de archivos convencionales la función de nominación produce como resultado un intervalo de direcciones en disco, en un SAD este intervalo crece para incluir la máquina especifica en cuyo disco se almacena el archivo. Si se extiende un poco mas el tratamiento de los archivos como abstracciones, llegamos a la posibilidad de replicas de archivos. Dado un nombre de archivo, la correspondencia devuelve un conjunto de posiciones de las replicas de este archivo. En esta abstracción se ocultan tanto la experiencia de copias como su ubicación. Estructuras de Nominación ..: Existen dos conceptos que hay que distinguir en relación con al correspondencia de nombres en un SAD. Transparencia de Nominación, El nombre de archivo no revela ningún indicio sobre de la ubicación del almacenamiento físico del archivo. Independencia de Ubicación, No es necesario modificar el nombre de un archivo cuando cambia su ubicación en el almacenamiento físico. Esquema de Nominación ..: Hay tres enfoques principales para los esquemas de nominación en un SAD. En el enfoque mas sencillo, los archivos se nombran con una combinación del nombre de su anfitrión y su nombre local , lo que garantiza un nombre único dentro de todo el sistema. Por ejemplo, en Ibis, un archivo se identifica de manera única con el Nombre Anfitrión Local, donde nombre local es una ruta semejante a las de UNIX. El segundo enfoque popularizado por el sistema de archivos de red (NFS, Network File System) de sun, ofrece una forma de unir directorios remotos a directorios locales, lo que da la apariencia a un árbol de directorios coherentes. El tercer enfoque es la estructura mas compleja y difícil de mantener en la NFS, ya que cualquier directorio se puede unir a cualquier árbol de direcciones locales y la jerarquía resultante puede estar poco estructurada. Técnicas de Implantación ..: Para implantar una nominación transparente se requiere un mecanismo para correspondencia entre un nombre de archivo y la ubicación asociada. Para que esta correspondencia sea manejable, hay que agrupar conjuntos de archivos en unidades componentes y proporcionar la correspondencia según las unidades componentes, no por archivos. Esta agrupación también tiene fines administrativos. Los sistemas semejantes a UNIX utilizan el árbol jerárquico de directorios para proporcionar una transformación de nombres y para agrupar repulsivamente los archivos en directorios. Servicios Remotos Consideremos un usuario que solicita el acceso a un archivo remoto. Suponiendo que se localizó al servidor que contiene al archivo mediante el esquema de nominación apropiada, debe efectuarse la transferencia de datos para satisfacer la solicitud de acceso remoto del usuario. Una manera de lograr esta transferencia es a través del método de servicio remoto, con el cual se entregan al servidor las solicitudes de acceso, la maquina servidora lleva a cabo dichos accesos y los usuarios se devuelven al usuario Existe una coherencia directa entre los accesos y el trafico que va y viene del servidor. De notar que se presenta una analogía directa entre los métodos de acceso a disco en los sistemas de archivos convencionales y el método de servicio remoto en un SAD. El método de servicio análogo efectúa un acceso al disco para cada solicitud de acceso. Una de las formas más comunes de servicio remoto es el paradigma de llamada a procedimiento remoto, RPC fue diseñado como una forma de abstraer el mecanismo de llamadas a procedimientos para usarse entre sistemas con conexiones de red. Memoria Caché Para asegurar un rendimiento razonable del esquema de servicio remoto presentado en la sección anterior utilizamos una forma de memoria caché. En los sistemas de archivos convencionales, el fundamento para la memoria caché es la reducción de la E/S de disco (lo que aumenta el rendimiento), en un SAD el objetivo es reducir el tráfico en la red. Esquema Básico, el concepto de memoria caché es sencillo, si los datos necesarios para satisfacer la solicitud de acceso no se encuentran en la memoria cache, se trae una copia de servicio al usuario y los accesos se llevan a cabo con la copia de memoria caché. La idea es conservar allí los bloques de disco de acceso mas reciente, para así manejar localmente los accesos repetidos a la misma información y no aunmentar el trafico de la red. Se utiliza una política de remplazo (por ejemplo, la de utilización menos reciente) para limitar el tamaño de la memoria caché. Políticas de Actualización, la política empleada para escribir los bloques de datos modificados en la copia maestra del servidor tiene un efecto decisivo sobre la confiabilidad y el rendimiento del sistema. La política mas sencilla consiste en escribir los datos directamente en el disco tan pronto se coloquen en una memoria caché. La ventaja de la escritura directa es su confiabilidad, ya que se pierde poca información si un sistema cliente falla. Sin embargo, esta política requiere que cada acceso de escritura espere hasta que se envíe la información al servidor, por lo que representa una escritura de escaso rendimiento. La memoria caché con escritura directa equivale a usar el servicio remoto para accesos de escritura y explotar la memoria cache únicamente para accesos de lectura. NFS proporciona el acceso de escritura directa. Consistencia, una maquina cliente se enfrenta al problema de decidir si una copia de datos en memoria caché local es consistente con la copia maestra ( y por tanto, puede usarse). Si la maquina cliente determina que sus datos en memoria caché están desfasados, ya no pueden servir para los accesos y hay que colocar en la memoria caché una copia actualizada de los datos. Existen dos enfoques para verificar la validez de los datos en memoria caché ..: Enfoque iniciado por el cliente, el cliente inicia una comprobación de validez, en la cual se pone en contacto con el servidor y comprueban si los datos locales son consistentes con la copia maestra. Enfoque iniciado por el servidor, el servidor anota, para cada cliente, las partes de los archivos que coloca en memoria cache, y cuando detecta una inconsistencia, debe reaccionar. Una posible fuente inconsistencia ocurre cuando dos clientes, que trabajan en modos conflictivos, colocan en memoria caché un archivo. Replicación de Archivo La replicación de archivos en maquinas diferentes es una redundancia útil para mejorar la disponibilidad. La replicación en varias maquinas puede beneficiar el rendimiento, ya que, al seleccionar una replica cercana para atender una solicitud de acceso, el tiempo de servicio es menor. El requisito fundamental de un sistema de replicación es que las replicas de un archivo residan en maquinas independientes de las fallas; es decir, que la disponibilidad de una replica no se vea afectada por la disponibilidad de las demás. Este requisito obvio quiere decir que la administración de replicas es una actividad en la cual la ubicación es decisiva, pues deben existir mecanismos para colocar la replica en una maquina concreta. Ejemplos de Sistema En esta sección ilustramos los conceptos comunes sobre los que se basan los sistemas de archivos distribuidos, examinado cinco sistemas interesantes y diferentes : UNIX United, NFS, Andrew, Sprite y Locus. UNIX United El proyecto de UNIX United de la University of Newcastle Tyne, Inglaterra, es uno de los primero intentos por ampliar el sistema de archivo UNIX para que sea distribuido, sin modificar el nucleo de UNIX. En UNIX United se añade un sub-sistema de software a cada conjunto de sistema UNIX interconectados (conocidos como sistemas componentes o constituyentes), para asi construir un sistema distribuido funcionalmente indistinguible de un sistema UNIX centralizado convencional. El sistema se presenta con dos niveles de detalles : Primero, se encuentran los aspectos generales de UNIX United; luego se examina su implantación, la planta de conexión Newcastle, y se analizan algunos temas relacionados con el trabajo entre redes. Aspectos Generales, Es posible unir cualquier numero de sistemas UNIX enlasados para formar un sistema de UNIX United. Sus estructuras de nominación (de archivos, dispositivos, directorios y mandatos) se unen para formar una estructura de nominación unica en la cual cada componente es, a todos los efectos, un directorio. Ignorado por el momento todas las preguntas respecto a la acreditación y al control de acceso, el sistema que se obtiene es uno donde cada usuario puede leer o escribir un archivo, utilizar cualquier dispositivo, ejecutar cualquier mandato o inspeccionar cualesquiera de los directorios, sin importar el sistema al que pertenesca. La Conexión Newcastle, es una capa de software ( a un nivel de usuario) que se incorpora a cada uno de los sistemas componentes y que separa el núcleo UNIX de los programas a nivel de usuario. Intercepta todas las llamadas al sistema que tiene ue ver con archivos y filtra aquellas que se deben desviar a sistemas remotos. Además, la capa de conexión acepta las llamadas enviadas por otros sistemas. Las capas remotas se comunican por medio de un protocolo RPC. Cada conexión conserva e mismo interfaz de llamadas al sistema que el nucleo de UNIX, a pesar de la extensa actividad remota que lleva a cabo el sistema. Aspectos de la Operación en Red, UNIX United es adecuado para distintas topologías que van desde redes locales ( LAN ) y enlaces directos, hasta redes de area ancha ( WAN ). Es necesario efectuar una correspondencia correcta entre el espacio de nombre lógicos y la información de encaminamiento. Un principio de diseño importante es que no se requiere que la jeralquia de nombre tenga relación con la topología. El Protocolo NFS El protocolo NFS proporciona un conjunto de llamadas a procedimiento remoto para las operaciones con archivos remotos. Estos procedimientos apoyan las siguientes operaciones..: Buscar un archivo en un directorio Leer un conjunto de registros de directorio Manipular enlaces y directorios Acceder a los atributos de archivos Leer y escribir archivos Solo es posible invocar este procedimiento despues de haber establecido un identificativo de archivo para el diretorio montado remotamente. La omisión de las operaciones de apertura y cierre es intensional. Una de las caracteristicas prominentes de los servidores NFS es que operan sin estado y no conservan información acerca de sus clientes de un acceso a otro. Arquitectura de NFS Consiste en tres capas principales. La primera capa es el interfaz de sistema de archivo UNIX, basado en la llamadas de apertura, lectura, escritura y cierre, y los descriptores de archivos. La segunda capa se denomina sistema virtual de archivos ( VFS, Virtual File System ), y ofrece dos funciones de importancia ..: Separa las operaciones genericas sobre el sistema de archivos de su implantación al definir un interfaz VFS limpio. Varias implantaciones del interfaz VFS pueden coexistir en la misma maquina lo que permite el acceso transparente a distintos tipos de sistemas de archivos montados localmente. El VFS esta basado en una estructura de representación de archivos llamados Nodo-v, que contiene un identificador numerico para un archivo, unico en toda la red.

0
0
PosteameloArchivo Histórico de Taringa! (2004-2017). Preservando la inteligencia colectiva de la internet hispanohablante.

CONTACTO

18 de Septiembre 455, Casilla 52

Chillán, Región de Ñuble, Chile

Solo correo postal

© 2026 Posteamelo.com. No afiliado con Taringa! ni sus sucesores.

Contenido preservado con fines históricos y culturales.