Unidad Curricular: Sistemas Distribuidos - Área de Ingeniería de Sistemas - Universidad Nacional Experimental de los Llanos Centrales "Rómulo Gallegos"
Sistemas Distribuidos
Red
domingo, 28 de octubre de 2012
LAPSO 2
SINCRONIZACIÓN, PROCESOS Y PROCESADORES, ASIGNACIÓN DE PROCESADORES.
SISTEMAS DE ARCHIVOS, MEMORIA COMPARTIDA DISTRIBUIDA.
BUENAS TARDES SOMOS EL GRUPO NUMERO 7. EL DEBATE COMENZARA A PARTIR DEL JUEVES 22 DE ENERO DEL PRESENTE AÑO A LAS 12PM HASTA EL DIA DOMINGO 25. LOS PUNTOS A DISCUTIR SON:
1) SISTEMAS DISTRIBUIDOS DE ARCHIVOS 2)IMPLEMENTACION DE UN SISTEMA DE ARCHIVO DISTRIBUIDO. 3)TENDENCIA EN LOS SISTEMAS DE ARCHIVOS DISTRIBUIDOS.
POR MOTIVOS PERSONALES PUBLICARE LA INFORMACION HOY DIA MIERCOLES. PERO RECUERDEN QUE EL DEBATE E INTERVENCIONES COMIENZAN MAÑANA JUEVES A LAS 12PM.
SISTEMAS DISTRIBUIDOS DE ARCHIVOS
Un componente fundamental de cualquier sistema distribuido es el sistema de archivos. Corno en el caso de los sistemas con un procesador, la tarea del sistema de archivos en los sistemas distribuidos es almacenar los programas y los datos y tenerlos disponibles cuando sea necesario.
Un servidor de archivos es un proceso que se ejecuta en alguna maquina y ayuda a implantar el servicio de archivos. Un sistema puede tener uno o varios servidores de archivos, pero los clientes no deben conocer el número de servidores de archivos, su posición o función. Todo lo que saben es que al llamar los procedimientos especificados en el servicio de archivos, el trabajo necesario se lleva a cabo de alguna manera y se obtienen los resultados pedidos. De hecho, los clientes ni siquiera deben saber que el servicio de archivos es distribuido. Lo ideal es que se vea como un sistema de archivos normal de un procesador.
Puesto que ún servidor de archivos es por lo general un proceso del usuario (o a veces un proceso del núcleo) que se ejecuta en una máquina, un sistema puede contener varios servidores de archivos, cada uno de los cuales ofrece un servicio de archivos distinto. Por ejemplo, un sistema distribuido podría tener dos servidores que ofrezcan el servicio de archivos en UNIXy el servicio de archivos en MS-DOS, respectivamente, donde cada proceso usuario utilizaría el servidor apropiado. De esa forma, es posible que una terminal tenga varias ventanas y que en algunas de ellas se ejecuten programas de UNIX y en otras programas en MS-DOS, sin que esto provoque conflictos. Los diseñadores del sistema se encargan de que los servidores ofrezcan los servicios de archivo específicos, como UNIX o Ms-DOS. El tipo y número de servicios de archivo disponibles puede cambiar con la evolución del sistema.
Compañeros no confundir lo que es un servicio de archivo y el servidor de archivo "OJO" con se eso, se presta para confusiones. Claro esta que tienen relacion por ende les dare un breve concepto de servicio de archivos: es la especificación de los servicios que el sistema de archivos ofrece a sus clientes. Describe tas primitivas disponibles, los parámetros que utilizan y las acciones que llevan a cabo. Para los clientes, el servicio de archivos define con precisión el servicio con que pueden contar, pero no dice nada con respecto a su implantación. De hecho, el servicio de archivos especifica la interfaz del sistema de archivos con los clientes.
GRUPO:7 Un concepto mas simple y sencillo de los sistemas de archivo distribuido es que dicho sistema es una implementación distribuida del modelo clásico de tiempo compartido de un sistema de archivos, donde múltiples usuarios comparten archivos y recursos de almacenamiento.
El propósito de un DFS es soportar la misma clase de compartimiento cuando los archivos están dispersos físicamente entre los diversos sitios de un sistema distribuido.
Un sistema distribuido es un conjunto de máquinas débilmente acopladas interconectadas mediante una red de comunicación.
Se emplea el término máquina para designar una computadora o una estación de trabajo.
Estructura;
Para saber como es la estructura de un DFS necesitamos definir los términos:
Servicio Servidor Cliente
Servicio: Es una entidad de software que corre en una o más máquinas y proporciona un tipo particular de función a clientes que no se conocen por adelantado.
Servidor: Es el software de servicio que corre en una sola máquina.
Cliente: Es un proceso que puede llamar a un servicio empleando operaciones que forman su interfaz de cliente .
Una interfaz de cliente para un servicio de archivos se forma mediante un conjunto de operaciones de archivos primitivos tales como el de crear, borrar, leer o escribir en un archivo.
El componente principal de hardware que controla a un servidor de archivos es un conjunto de dispositivos locales de almacenamiento secundarios tales como discos magnéticos.
COMPAÑEROS POR FAVOR SI TIENEN LA OPORTUNIDAD DESCARGUEN ESTA INFORMACION ES MUY COMPLETA. http://ldc.usb.ve/~figueira/cursos/SOPII/Material/FSDist.pdf GRUPO 7
grupo numero7 )TENDENCIA EN LOS SISTEMAS DE ARCHIVOS DISTRIBUIDOS.
:Una tendencia reciente en los sistemas de computador es distribuir el cómputo entre varios procesadores. En contraste con los sistemas fuertemente acoplados, los procesos no comparten ni la memoria ni el reloj. Los procesadores se comunican entre sí a través de diversas líneas de comunicación, como buses de alta velocidad o líneas telefónicas. Los procesadores de estos sistemas pueden tener diferentes tamaños y funciones que pueden incluir microprocesadores pequeños, estaciones de trabajo, minicomputadoras y sistemas de computador de propósito general o distribuido. Tales procesadores pueden recibir varios nombres como: sitios, nodos, etc., dependiendo del contexto en que se mencionan. Las razones para construir sistemas distribuidos son las siguientes: Recursos compartidos: si varios sitios se conectan entre sí, un usuario de un sitio podría aprovechar los recursos disponibles en otro. Por ejemplo, un usuario del sitio A podría estar usado una impresora laser que solo está disponible en el sitio B. mientras tanto, un usuario del sitio B podría estar accediendo a un archivo que residen A. El uso de recursos compartidos en un sistema distribuidos ofrece mecanismos para compartir archivos en sitios remotos, procesar información de una base de datos distribuida, imprimir archivos en sitios remotos y realizar otras operaciones. Computación más rápida: si un cálculo dado se puede subdividir en varios subcalculos susceptibles de ejecución concurrente, un sistema distribuido podría permitirlo distribuir el cálculo entre los distintos sitios, y ejecutándolo de forma concurrente. Confiabilidad: si en un sitio de un sistema distribuido falla, los sitios restantes podrían seguir funcionando. Comunicación: hay muchos casos en los que los programas necesitan intercambiar datos con otros programas del mismo sistema Si muchos sitios están conectados a través de una red de comunicaciones, los procesos de diferentes sitios tienen la oportunidad de intercambiar información. Los usuarios podrían iniciar transferencia de archivo o comunicarse entre sí por correo electrónico. El sistema operativo se basa en la estructura de cliente-servidor. Los sistemas conectan a los clientes con los servidores. La comunicación se realiza por medio de mensajes enviados a través del nucleó, que los encamina utilizando unas tablas que tienen toda la información de localización del recurso o servicios.
Un sistema de archivos distribuidos permite a los procesos el acceso transparente y eficiente de archivos que permanecen en servidores remotos. Se encargan de la organización, almacenamiento, recuperación, nominación, compartimiento y protección de los archivos.
Los sistemas distribuido de archivos permite a los programas almacenar y acceder a archivos remotos del mismo modo que si fueran locales, permitiendo a los usuarios que accedan a archivos desde cualquier computador.
SISTEMAS DISTRIBUIDOS DE ARCHIVOS:no es mas que un modelo de tiempo compartido de archivo donde varios usuarios comparten archivos y almacenan recursos.Este proceso se ve en la vida cotidiana cuando por medio de la red o intranet se comparten archivos donde los usuarios acceden a descargar ese archivo.
IMPLEMENTACION DE UN SISTEMA DE ARCHIVO DISTRIBUIDO:Existen diferentes formas de utilizar los archivos, pero también existen dos formas de medir el grado de utilización de cada uso que se le puede dar a un archivo:
• Mediciones Estáticas: En este tipo de mediciones se observa el sistema en un determinado momento, esto quiere decir que se verifica su estado en un instante de tiempo. Entre algunas de estas mediciones estáticas podemos encontrar: la distribución de tamaños de los archivos, la distribución de tipos de archivos y la cantidad de espacio que ocupan los archivos de varios tamaños y tipos. • Mediciones Dinámicas: Este tipo de mediciones se encarga de registrar todas las operaciones en una bitácora para un análisis posterior. De esta manera se tiene información respecto a la frecuencia con que se realizan ciertas operaciones.
En general, los sistemas de archivos distribuidos proporcionan la réplica de archivos como servicio a sus clientes. Es decir, se dispone de varias copias de algunos archivos, donde cada copia está en un servidor de archivos independiente.
TENDENCIA EN LOS SISTEMAS DE ARCHIVOS DISTRIBUIDOS: lo que se debe de tener en cuenta en este punto es:
Hardware:Existen muchas más innovaciones tecnológicas que poco a poco harán más eficiente el manejo y administración de los sistemas de archivos, por lo que en el futuro se podría aun encontrar diversos tipos de soluciones específicas para un sistema determinado por sus propias características y requerimientos.
Escalabilidad:Debe de ser capaz de trabajar independientemente como un sistema de archivos distribuido, pero también debe poder hacerlo conectado a muchas otras máquinas. Un sistema de archivos debería funcionar tanto para una docena de equipos como para varios millares.
Redes de área amplia:La mayor parte del trabajo que se realiza actualmente en los sistemas distribuidos se basa en los sistemas alojados en redes LAN. La tendencia en el futuro es que veremos conectados entres sí muchos sistemas distribuidos LAN con el fin de formar sistemas distribuidos transparentes a través de todo el mundo. Lo que se debe tomar en cuenta es el tener el alcance de toda esta tecnología para su posterior desarrollo.
Tolerancia de fallas:Para que los sistemas de archivos cumplan con este requisito, deberá existir o implementarse una consistente infraestructura de hardware lo cual permita a los sistemas ser realmente confiables y seguros en cuanto a tiempo de funcionamiento efectivo se refiere.
SISTEMA DE ARCHIVOS DISTRIBUIDOS: Este tipo de sistema sirve para compartir archivos, impresoras y otros recursos conectados a la red. El primer sistema de este tipo fue desarrollado en la década de 1970, y en 1985 Sun Microsystems creó el sistema de archivos de red NFS el cual fue ampliamente utilizado como sistema de archivos distribuido. Otros sistemas notables utilizados fueron el sistema de archivos Andrew (AFS) y el sistema Server Message Block SMB, también conocido como CIFS.
Luimar Conde; C.I: 18.967.298 Por lo general, un sistema distribuido de archivos tiene dos componentes: el verdadero servicio de archivos y el servicio de directorios.
Interfaz del Servicio de Archivos:Se encarga de las operaciones en los archivos individuales, como la lectura, escritura y adición.
Los servicios de archivos se pueden dividir en dos tipos, según si soportan un modelo carga/descarga o un modelo de acceso remoto. En el modelo carga/descarga, proporciona la lectura y escritura de un archivo. Es decir, transfiere un archivo del servidor al cliente y del cliente al servidor. Modelo de acceso remoto, solo se ejecuta en los servidores y no en los clientes.En este modelo, el servicio de archivos proporciona gran número de operaciones para abrir y cerrar archivos, leer y escribir partes de archivos, moverse a través de un archivo (LSEEK), examinar y modificar los atributos de archivo, entre otros.
como comento mi compañera luimar el sistema de archivo distribuido. sirve para compartir archivos, impresoras y otros recursos como un almacenamiento persistente en una red de computadoras., el cual se encarga de las operaciones en los archivos individuales, como pueden ser la escritura, la lectura o la adición. Un aspecto importante del modelo de archivo es si éstos se pueden modificar después de su creación.
también el sistema de archivo distribuido de define como: es el componente del sistema operativo encargado de administrar y facilitar el uso de las memorias periféricas, ya sean secundarias o terciarias. Sus principales funciones son la asignación de espacio a los archivos, la administración del espacio libre, y la administración del acceso a los datos resguardados.
Más formalmente, un sistema de archivos es un conjunto de tipo de datos abstractos que son implementados para el almacenamiento, la organización jerárquica, la manipulación, el acceso, el direccionamiento y la recuperación de datos.y pueden ser clasificados en tres categorías: sistemas de archivo de disco, sistemas de archivos de red y sistemas de archivos de propósito especial
Los cambios tecnológicos de los últimos años pueden traer también cambios muy importantes en los sistemas de archivos distribuidos. Además con el rápido avance que se da en las redes de comunicaciones y su incremento en el ancho de banda la creación de paquetes que ofrecen la compartición de archivos es común de encontrarse en el mercado. En la industria, el esquema más solicitado es aquel que permite acceder a los grandes volúmenes de información de los grandes servidores desde las computadores personales o convencionales y desde otros servidores. Es por eso que la principal solución que adoptada por las pequeñas empresas es contar con Novell Netware en un servidor 486 o superior y acceder a los archivos desde máquinas similares.Entre los sistemas de archivos distribuidos más populares que existen en la actualidad, tenemos los que nos proporciona Netware, tales como:
Remote Filke Sharing (RFS en UNIX)
Network File System (de Sun Microsystems)
Andrew File System (AFS) Es probable que los cambios en el hardware tengan un efecto muy importante en los futuros sistemas distribuidos de archivos. También es probable el impacto del cambio en las expectativas del usuario. Veremos a continuación algunos aspectos en los que podrían presentarse cambios en un futuro no muy lejano, teniendo en cuenta que los cambios tecnológicos se producen día a día y en desmesurado avance.
ARQUITECTURA MULTIPROCESADORES • Operan como un sistema de tiempo compartido, pero con varias cpu en vez de una sola. • Externamente un multiprocesador con 32 cpu de 3 mips actúa de manera muy parecida a una sola cpu de 96 mips; 1 mips: 1.000.000 de instrucciones por segundo. • Se corresponde con la imagen de un único sistema. La característica clave es la existencia de una sola cola para ejecución: • Una lista de todos los procesos en el sistema que no están bloqueados en forma lógica y listos para su ejecución. • La cola de ejecución es una estructura de datos contenida en la memoria compartida. Los programas de los procesos están en la memoria compartida, también el S. O. El planificador (de procesos) del S. O. se ejecuta como una “región crítica”, con ello se evita que dos cpu elijan el mismo proceso para su ejecución inmediata. Cuando un proceso se asigna a un procesador: • Encuentra que el caché del procesador está ocupado por palabras de memoria que pertenecen a aquella parte de la memoria compartida que contiene al programa del proceso anterior. • Luego de un breve lapso se habrán reemplazado por el código y los datos del programa del proceso asignado a ese procesador. Ninguna cpu tiene memoria local, es decir que todos los programas se almacenan en la memoria global compartida. Si todas las cpu están inactivas en espera de e / s y un proceso está listo para su ejecución: • Es conveniente asignarlo a la cpu que se utilizó por última vez (para ese proceso): o La hipótesis es que ningún otro proceso utilizó esa cpu desde entonces (hipótesis de Vaswani y Zahorjan). Si un proceso se bloquea en espera de e / s en un multiprocesador, el S. O. puede: • Suspenderlo. • Dejarlo en “espera ocupada”: o Es aplicable cuando la mayoría de la e / s se realiza en menos tiempo del que tarda un cambio entre los procesos. o El proceso conserva su procesador por algunos milisegundos en espera de que la e / s finalice: Si se agota el tiempo de espera y no ha finalizado la e / s, se realiza una conmutación de procesos. Generalmente se dispondrá de un sistema de archivos tradicional, con un único caché: • Globalmente considerado es similar al sistema de archivos de un único procesador. http://unidad7.blog.terra.com.mx/
josé Guardia TENDENCIAS EN LOS SISTEMAS DISTRIBUIDOS DE ARCHIVOS
En estos últimos años se ha logrado un avance significativo tanto en software como en hardware. Es probable que los cambios en hardware tengan un efecto importante en los sistemas distribuidos de archivos.
El hecho de que la memoria se siga abaratando produciría un efecto significativo en los sistemas distribuidos de archivos, de este modo el sistema de archivo podría estar
presente en la memoria en forma permanente y no existirá la necesidad de los discos. También mejoraría mucho el desempeño y haría mucho más sencillo la estructura del sistema de archivo.
La mayoría de los sistemas de archivos de la actualidad organizan los archivos como una colección de bloques, ya sea como árbol (UNIX) o como una lista ligada (MS-DOS). Con un sistema de archivos en el núcleo, podría ser más sencillo almacenar el archivo en forma adyacente en la memoria, en vez de separarlo en bloques. Es más fácil llevar un registro de los archivos almacenados en forma adyacente, además de que se pueden transmitir más rápido en la red. La razón de que los archivos adyacentes no se utilicen en los discos es que, si un archivo crece, su desplazamiento hacia un área del disco con mas espacio es una operación cara. Por el contrario, el desplazamiento de un archivo a otra área de la memoria es una operación factible.
La principal desventaja de tener el servidor de archivos en la memoria principal es si se interrumpe la energía eléctrica, se pierden todos los archivos. La memoria principal se borra al eliminar la electricidad. La solución seria hacer respaldos continuos en cintas de videos, pero si solo se necesita tener acceso una o dos veces por año para recuperarse de fallas en la energía, este método no es conveniente.
Otra forma de hacer respaldos sería utilizando discos ópticos, cuando la carga de trabajo no es pesada, los archivos que todavía no hayan sido respaldados se transfieren al disco de modo que el byte k de la memoria sea el byte k del disco, la asociación entre el dispositivo de respaldo y la memoria es uno a uno.
Otro desarrollo importante en hardware son las redes de fibras ópticas. Se podría equipar al sistema con un servidor de archivos en la memoria principal, una red de fibras ópticas de alta velocidad y haciendo respaldos en discos ópticos, no seria necesario el cache del cliente y el disco en el servidor.
Otro avance sería diseñar una nueva interfaz de red exclusivamente para solucionar el problema de la inconsistencia del cache de los clientes, la situación que se presenta cuando dos clientes ocultan el mismo archivo y uno de ellos lo modifica y el otro no descubre esto es análoga a los cache de memoria en un multiprocesador. Solo que en este caso, cuando un procesador modifica una palabra compartida, se envía una señal de hardware a través del bus de la memoria a los demás caches, con el fin de permitirles que invaliden o actualicen dicha palabra. Entonces se podrían diseñar interfaces de red que soporten estas señales.
Cada interfaz tendría un mapa de bits, uno por cada archivo en el cache. Para modificar un archivo, un procesador activa el bit correspondiente en la interfaz, el cual es 0 si ningún procesador ha actualizado recientemente el archivo. La activación de un bit hace que la interfaz cree y envíe un paquete a través del anillo que verifique y active el bit correspondiente en las demás interfaces. Este mecanismo permite cerrar el archivo en forma global en todas las maquinas en unos pocos microsegundos.
Luego de la actualización el procesador limpia el bit del mapa de bits, lo cual hace que la interfaz de la red localice el archivo mediante una tabla en memoria y que deposite en forma automática todos los bloques modificados en su posición correcta en las demás maquinas. Cuando el archivo queda actualizado en todas partes, el bit del mapa de bits se limpia en todas las maquinas.
TENDENCIAS DE LOS SISTEMAS DE ARCHIVO DISTRIBUIDOS
esta se da mediante los avances tecnologicos que tenemos diariamete que traen importantes cambios a los sistemas distribuidos, ademas del rapido avance que se presenta en las redes de comunicacion y el incremento en el ancho de banda y la comparticion de archivos. Las grandes industrias se ven en la necesidad de contar con un servidor superior para el acceso de las maquinas de ultima generacion
Tendencias en los Sistemas de Archivos Distribuidos. archivos distribuidos más populares que existen en la actualidad, tenemos los que nos proporciona Netware, tales como:
Remote Filke Sharing (RFS en UNIX) Network File System (de Sun Microsystems) Andrew File System (AFS.
podrían presentarse cambios en un futuro.
Hardware reciente.Esto mejoraría circunstancialmente los actuales servidores de archivos puesto que se podrá adquirir gran cantidad de gigabytes de memoria. Otro desarrollo son las redes de fibra óptica de alta velocidad que agilizarían la transferencia de archivos y se podría prescindir de la memoria caché.
Escalabilidad: cualquier computador individual ha de ser capaz de trabajar independientemente como un sistema de archivos distribuido, pero también debe poder hacerlo conectado a muchas otras máquinas.
Tolerancia de fallas.:los sistemas de archivos cumplan con este requisito, deberá existir o implementarse una consistente infraestructura de hardware lo cual permita a los sistemas ser realmente confiables y seguros en cuanto a tiempo de funcionamiento efectivo se refiere.
cunado hablamos de las tendencias de sistema de archivo distribuidos, ya que todo tiempo desde que tenemos uso de rason nuestro entorno esta ligado a los sistemas distribuidos ya que dependemos casi en su totalidad. para realizar actividades. y así como emos hablado en las clases anteriores es el ambiente que nos rodea y se desempeñan por ejemplo en los bancos, en las oficinas, en la medicina, en la informática entre otros.
JOSÈ GUARDIA La visión tradicional de los sistemas de información en general, y de los sistemas distribuidos en particular, está cambiando rápidamente. Este cambio está siendo impulsado en parte por una industria del software que está madurando a grandes pasos, y en parte por la revolución de las tecnologías de la información. Este cambio ha resultado en la demanda por parte de numerosos dominios de aplicación de servicios de información con patrones de presentación e interacción homogéneos, con una arquitectura software abierta y con alcance global. Así, los nuevos sistemas de información tendrán un marcado carácter cooperativo y deberán ser capaces de interactuar sin problemas con una gran variedad de fuentes de datos y aplicaciones legadas independientes, que ejecutan sobre plataformas heterogéneas y redes de información distribuidas. Los metadatos desempeñarán un papel crucial a la hora de describir los contenidos de tales fuentes de datos y las aplicaciones, y de facilitar su integración. El significado de los datos deberá hacerse explícito y estar disponible, en un formato formal y procesable por el software, junto con los datos. En este sentido, los avances tecnológicos más significativos vendrán dados no tanto por la evolución independiente de las diversas tecnologías existentes, como por su evolución conjunta hacia una tecnología consistente y coherente adecuada para construir y gestionar los nuevos sistemas de información cooperativos.
JOSÈ GUARDIA La visión tradicional de los sistemas de información en general, y de los sistemas distribuidos en particular, está cambiando rápidamente. Este cambio está siendo impulsado en parte por una industria del software que está madurando a grandes pasos, y en parte por la revolución de las tecnologías de la información. Este cambio ha resultado en la demanda por parte de numerosos dominios de aplicación de servicios de información con patrones de presentación e interacción homogéneos, con una arquitectura software abierta y con alcance global. Así, los nuevos sistemas de información tendrán un marcado carácter cooperativo y deberán ser capaces de interactuar sin problemas con una gran variedad de fuentes de datos y aplicaciones legadas independientes, que ejecutan sobre plataformas heterogéneas y redes de información distribuidas. Los metadatos desempeñarán un papel crucial a la hora de describir los contenidos de tales fuentes de datos y las aplicaciones, y de facilitar su integración. El significado de los datos deberá hacerse explícito y estar disponible, en un formato formal y procesable por el software, junto con los datos. En este sentido, los avances tecnológicos más significativos vendrán dados no tanto por la evolución independiente de las diversas tecnologías existentes, como por su evolución conjunta hacia una tecnología consistente y coherente adecuada para construir y gestionar los nuevos sistemas de información cooperativos.
IMPLEMENTACION DE UN SISTEMA DE ARCHIVO DISTRIBUIDO. La Era de la Informática ha sufrido diversos cambios desde que apareciera allá por los años 40’. Era una época en la que a nadie se le hubiera ocurrido la loca idea de tener una computadora en casa, ya que éstas en su comienzo consistían en un gran conjunto de tubos de vacío y consolas de gran tamaño que solo podían ser ubicadas en enormes salas con un acondicionamiento especial para su mejor funcionamiento. Sin mencionar que su adquisición era solamente apta para las grandes billeteras de la época.
La Interfaz del Servicio de Archivos Un archivo es una secuencia de bytes sin interpretación alguna. Esto quiere decir que el contenido y estructura de un archivos es interpretado por el software de aplicación mas no por el sistema operativo sobre el que se está trabajando. Un archivo se caracteriza por tener atributos, tales como: el propietario, el tamaño, la fecha de creación y el permiso de acceso. La utilidad del servicio de archivos consiste en proporcionar una adecuada administración de los atributos, definidos por el usuario, que estas poseen. Lo más común es encontrar algunos sistemas avanzados que permitan modificarlos después de sus creación, pero en algunos sistemas distribuidos las únicas operaciones que pueden realizarse sobre un archivo es CREATE y READ (Crear y Leer). Es decir, una vez creado el archivo no puede modificarse. A este tipo de archivos se les denomina archivos inmutables.
En general, los sistemas de archivos distribuidos proporcionan la réplica de archivos como servicio a sus clientes. Es decir, se dispone de varias copias de algunos archivos, donde cada copia está en un servidor de archivos independiente. Este servicio de réplica se brinda por diversa razones, a continuación presentamos las principales razones:
Aumentar la confiabilidad al disponer de respaldos independientes de cada archivo. Es decir, si un servidor falla o se pierde permanentemente, no se pierden los datos. Permitir el acceso al archivo aunque falle un servidor de archivos. Si un servidor falla esto no debe ocasionar que el sistema se detenga. Repartir la carga de trabajo entre varios servidores. Con varios archivos duplicados en dos o más servidores, se puede utilizar el que tenga menor carga.
TENDENCIA EN LOS SISTEMAS DE ARCHIVOS DISTRIBUIDOS. El sistema distribuido de archivos permite a los programas almacenar y acceder a archivos remotos del mismo modo que si fueran locales, permitiendo a los usuarios que accedan archivos desde cualquier computador. es aquel que permite acceder a los grandes volúmenes de información de los grandes servidores desde los computadores personales o convencionales y desde otros servidores. a principal solución que adoptada por las pequeñas empresas es contar con Novell Netware en un servidor 486 o superior y acceder a los archivos desde máquinas similares.Entre los sistemas de archivos distribuidos más populares que existen en la actualidad, tenemos los que nos proporciona Netware, tales como: Remote Filke Sharing (RFS en UNIX) Network File System (de Sun Microsystems) Andrew File System (AFS)
Es un servidor de red e Internet, es un cadete que le pedís “lleva o trae esto”, y en lo más rápido que puede lo hace, nada mas Para los que trabajan en cyber, saben que uno de los problemas más importantes para los dueños, es la facturación, sí una maq. No funciona no factura, pero si el que falla es el server, nada factura!!! Resumiendo, que estamos buscando, algo que lleve y traiga, eficiente, rápido, seguro, que no se distraiga en otra función, no se quede dormido, no se rompa, y nos sea lo mas barato posible, quien reúne todo esto, un simple 486, con lo mínimo necesario Este server es muy eficiente y muy económico a nivel del mercado es mas se puede construir uno con piezas de pc viejas y ensanblarlas todas por medio de un sistema muy fasil y completo para la distribución del mismo. Los sistemas de cómputo no presentan tolerancia a fallas. Es común escuchar en las agencias bancarias la frase: "No hay sistema", por lo que tomamos este hecho como algo absolutamente normal. Salvo algunos sistemas especializados como los que se utilizan para el control de tráfico aéreo, otros sistemas no presentan este comportamiento que debería ser el óptimo.Para que los sistemas de archivos cumplan con este requisito, deberá existir o implementarse una consistente infraestructura de hardware lo cual permita a los sistemas ser realmente confiables y seguros en cuanto a tiempo de funcionamiento efectivo se refiere.
Ok como practicamente el nombre lo dice un sistema distribuido d archivo... es el q conciste en transmitir archivo o datos dentro de sus servidores facilitando asi cierta informacion para los usuarios con acceso a los mismos, estos permanecen en unos servidores remotos q se encargan de Organizar, Almacenar , y nominar dicha informacion
Eleazar Méndez C.I 16.340.161 SISTEMAS DISTRIBUIDOS DE ARCHIVOS En un sistema distribuido es importante distinguir entre los conceptos de servicio de archivos y el servidor de archivos.
El servicio de archivos:
Es la especificación de los servicios que el sistema de archivos ofrece a sus clientes. Describe las primitivas disponibles, los parámetros que utilizan y las acciones que llevan a cabo. Define precisamente el servicio con que pueden contar los clientes sin decir nada respecto de su implantación. El despachador (servidor) de archivos: Es un proceso que se ejecuta en alguna máquina y ayuda con la implantación del servicio de archivos. Puede haber uno o varios en un sistema. Los clientes no deben ser conscientes de la forma de implantar el sistema de archivos: No precisan conocer el número de servidores de archivos, su posición o función. Deberían ver al sistema distribuido de archivos como un sistema de archivos normal de uniprocesador. Generalmente un servidor de archivos es un proceso del usuario (a veces del núcleo) que se ejecuta en una máquina: Un sistema puede contener varios servidores de archivos, cada uno con un servicio distinto: Ej.: un sistema con un servidor de archivos en “UNIX” y otro en “DOS”. Cada proceso usuario utilizaría el servidor apropiado.
Eleazar Méndez C.I 16.340.161 Tambien tenemos los sistemas de archivos basados en cluster: *Distribución de un archivo entre varios servidores. „* Técnicas de Distribución de Archivos: indican cómo se puede distribuir un archivo a través de múltiples servidores. „* Distribuyendo un archivo grande entre varios servidores es posible buscar sus diferentes partes en paralelo. *Esta organización sólo funciona bien si el acceso a los datos es en paralelo. Se requiere que los datos tengan una estructura muy regular (e.j. una matriz densa, registros de un mismo tipo). „* Si se trata de archivos con tipos irregulares de datos o muchos tipos de estructuras de datos la distribución de archivos puede no ser una herramienta efectiva. En este caso lo mejor es guardar archivos completos en diferentes servidores. Ejemplo: Google File System „* Un sistema de archivos distribuido para grandes centros de datos. „* Compañías como Google y Amazon ofrecen servicios a clientes WEB cuyo resultado son lecturas y actualizaciones de un número masivo de archivos distribuidos a través de decenas de miles de computadoras. En estos entornos es de esperarse que en cualquier momento falle una computadora.
Eleazar Méndez C.I 16340161 TENDENCIAS DE LOS SISTEMAS DE ARCHIVOS DISTRIBUIDOS Arquitectura Multiprocesadores
Las Arquitectura Multiprocesadores, son como su nombre lo indica las que se encuentran basadas en el uso de dos o mas procesadores, los cuales tienen como objetivo la resolución de las tareas que se les asigna. A pesar de las grandes mejoras acaecidas en monoprocesadores para algunas aplicaciones no es suficiente, la solución pueden ser los sistemas multiprocesadores: Solución más sencilla, natural y con mejor coste-prestaciones, las mejoras en microprocesadores cada vez son más complejas: cada avance implica crecer en complejidad, potencia y superficie. Lenta pero clara mejora en el software, que permite explotar el paralelismo, las arquitecturas actuales son muy diversas: hay más investigación que resultados definitivos.
Clasificación de Flynn
Fue diseñada para dar una pequeña clasificación para estas arquitecturas, contando con una globalización de características con las cuales se englobaron, distingue entre distintos tipos de arquitecturas paralelas analizando el flujo de instrucciones y el flujo de datos:
SISD: Arquitectura Von Neuman clásica.
SIMD: Existe una única unidad de control que busca, decodifica y entrega una sola instrucción a un conjunto de unidades de proceso que operan sobre diferentes conjuntos de datos. Se denominan arquitecturas vectoriales.
MISD: Un solo flujo de datos sobre el que operan varias unidades funcionales. No hay implementaciones.
MIMD: Varios procesadores trabajando de forma independiente sobre distintos conjuntos de instrucciones y/o datos.
La unidad de ejecución es el proceso: cada procesador ejecuta un flujo de instrucciones independiente, pero los procesos pueden resultar costosos en tiempo y memoria. Una alternativa es utilizar threads (hilos de ejecución).
Threads: Rutinas concurrentes que comparten el espacio de memoria y las variables globales su creación y destrucción es tres órdenes de magnitud menos costosa que la de un proceso por tratarse de entidades más sencillas. Sincronización a través de variables globales y son muy importantes para solapar cómputo con operaciones de I/O o comunicaciones.
Hasta ahora nos habíamos centrado en el paralelismo a nivel de instrucción (grano fino): La unidad de ejecución paralela es la instrucción, el hardware detecta instrucciones independientes y planifica su ejecución en paralelo. Pero los multiprocesadores explotan el paralelismo a nivel de proceso (grano grueso): En este caso el paralelismo se detecta a alto nivel, por parte del compilador y del sistema operativo, aunque también puede programarse de forma explícita. Cada thread puede abarcar desde un proceso completo e independiente hasta una única iteración de un bucle. http://segaland.blogspot.com/
Eleazar Méndez C.I 16340161 IMPLEMENTACION DE SISTEMAS DE ARCHIVOS DISTRIBUIDOS Los archivos podrían implantarse como parte de un sistema operativo distribuido, haciendo el papel de una capa de software cuya tarea es administrar la comunicación entre los sistemas operativos y los sistemas de archivos convencionales. Las características propias de un SAD son la multiplicidad y autonomía de los clientes y servidores en el sistema.
La implantación de un sistema distribuido de archivos incluye aspectos tales como:
*El uso de archivos
Generalmente se utiliza antes de implantar un sistema de archivo, y primero se realiza un análisis de patrones de uso, para realizar dicho análisis es necesario tomar las siguientes mediciones: Estática (Representan una toma instantánea del sistema en un momento dado y comprende la distribución de tamaño de archivo) y Dinámica (Registra toda las operaciones que modifican el sistema de archivos)
*Estructura del Sistema
En algunos sistemas se cumple que:
Todas las máquinas ejecutan el mismo software básico. Una máquina que desee dar servicio de archivos lo puede hacer: Debe exportar los nombres de los directorios seleccionados, para que otras máquinas los puedan acceder. En otros sistemas el servidor de archivos y el de directorios son solo programas del usuario, y se puede configurar un sistema para que ejecute o no el software de cliente o servidor en la misma máquina.
También los clientes y servidores podrían ser equipos distintos en hardware y software
En este caso:
El cliente envía un nombre simbólico al servidor de directorios. El servidor de directorios regresa el nombre en binario (ej.: máquina + nodo_i) que comprende el servidor de archivos. Es posible que una jerarquía de directorios se reparta entre varios servidores. El servidor que recibe un nombre binario que se refiere a otro servidor puede: Indicar al cliente el servidor que tiene el archivo buscado, para que el cliente lo busque. Enviar la solicitud al siguiente servidor y no contestar. *Ocultamiento
En un sistema cliente - servidor, cada uno trabaja con su memoria principal y un disco, existen cuatro lugares donde se pueden almacenar los archivos o partes de ellos: el disco del servidor, la memoria principal del servidor, el disco del cliente (si existe), la memoria principal del cliente.
Si los archivos se almacenan en el disco de los servidores estos disponen de abundante espacio, se les podría acceder de todos los clientes aunque tiene sus desventajas ya que antes de que un cliente pueda leer un archivo se lo debe transferir del disco del servidor a la memoria principal del servidor y a su vez de la memoria principal del servidor a la memoria principal del cliente, a través de la red. Todo esto se puede mejorar ocultando (conservando) los archivos de más reciente uso en la memoria principal del servidor y así un cliente que lea un archivo ya presente en el caché del servidor elimina la transferencia del disco.
*Replica
Generalmente los sistemas distribuidos de archivos proporcionan la réplica de archivos como un servicio, ya que cada copia esta en un servidor de archivos independiente.
Esta es utilizada por que aumenta la confiabilidad al disponer de respaldos independientes de cada archivo, además que permite el acceso a archivos aún cuando falle un servidor de archivos y reparte la carga de trabajo entre varios servidores.
Luimar Conde; C.I:18.967.298 TENDENCIA A LOS SISTEMAS DE ARCHIVOS DISTRIBUIDOS. *Hardware Reciente: Las Memorias: Actualmente se dispone de grandes cantidades de gigabytes de memoria RAM, solo que ellas siguen siendo volátiles. Discos Ópticos: Actualmente los conseguimos regrabables, pudiendo usarlos más de una vez, para esto se utiliza la tecnología Magnéto Óptica(MO). *Escalabilidad: Propone que cualquier computador individual ha de ser capaz de trabajar independientemente como un sistema de archivos distribuido, pero también debe poder hacerlo conectado a muchas otras máquinas. Sin embargo, el tipo de red que se utilice condiciona el rendimiento del sistema. Por ello, como aún no se cuenta con un ancho de banda mayor a veces la transferencia de archivos se hace lenta. * Tolerancia de fallas: En la actualidad los sistemas tienden a caerse muy a menudo, ya que los equipos no presentan la tolerancia de fallas, salvo los equipos que se ocupan de controlar el tráfico aéreo. Para que esto pueda implementarse deben existir un conjunto de hardware que sena confiables en cuanto a su funcionamiento.
Bueno veo que ya han dicho de todo un poco sobre el tema, quiero destacar una manera más clara de que es un Sistema de Archivos y hablo más que todo sobre: El cliente Torrent para que sea más sencillo de entender se trata de un sistema de archivos que se comparte al público por medio de un servidor o en dado caso , que es muy común entre varias pc que posean dicho archivos a solicitar, ejemplo: “Yo descargo un archivo especifico pero solo está alojado en una página (servidor, hot), solicito la información y empiezo a descargarlo, luego si otros usuarios o clientes de este sistema solicitan el mismo archivo que yo, lo que estaría haciendo o sirviendo yo como otro usuario mas es compartir lo que llevo descargando a los que solicitaron dicho archivo al servidor (pagina), y si por ende ya yo tengo este archivo en mi máquina, el papel que conllevaría mi maquina seria de una especie de servidor donde daría a compartir el archivo solicitado por los otros usuarios, para que también lo descarguen, cabe destacar que este archivo seria compartido solo si esta al acceso público”.
Deyncer Arana C.I. 19472050 Introducción al sistema de archivos distribuido Con el sistema de archivos distribuido (DFS, Distributed File System), los administradores de sistemas pueden facilitar a los usuarios el acceso y la administración de archivos que están físicamente distribuidos en una red. DFS le permite presentar a los usuarios archivos distribuidos por múltiples servidores de modo que parezca que residen en un solo sitio de la red. Los usuarios ya no tendrán que saber y especificar la ubicación física real de los archivos para tener acceso a éstos. Por ejemplo, si posee material de mercadotecnia distribuido en varios servidores de un dominio, puede utilizar DFS para hacer que parezca que todo el material reside en un único servidor. De esta forma se evita que los usuarios deban tener acceso a varias ubicaciones de la red para buscar la información que necesitan. Razones para utilizar DFS Debe considerar la posibilidad de implementar DFS si: Espera agregar servidores de archivos o modificar ubicaciones de archivos.
Los usuarios que tienen acceso a los destinos están distribuidos por uno o varios sitios.
La mayor parte de los usuarios requiere acceso a varios destinos.
El equilibrio de la carga del servidor puede mejorarse si se redistribuyen los destinos.
Los usuarios requieren un acceso ininterrumpido a los destinos.
La organización dispone de sitios Web para uso interno o externo.
Tipos de DFS Puede implementar un sistema de archivos distribuido de dos formas: como un sistema de archivos distribuido de raíz independiente o como un sistema de archivos distribuido de dominio. Acceso a destinos DFS desde otros equipos Además del componente DFS de servidor de la familia Windows Server 2003, hay un componente DFS de cliente. El cliente DFS almacena en caché una referencia a la raíz DFS o al vínculo DFS durante un período específico, definido por el administrador. El componente cliente DFS se ejecuta en diferentes plataformas Windows. Para obtener información acerca de las versiones de cliente DFS y las plataformas asociadas, vea Compatibilidad con plataformas.
Es un sistema de archivos de computadoras que tiene como funcion la compraticion de los recursos, archivos, entre ellos (el sistema de archivos NFS, AFS, CIFS.)
Uno de los aspectos del sistema distribuidos de archivos es el servidor de archivos que es un proceso que se ejecuta en una maquina y ayuda a implementar el servicio de archivos, el cual permitira a los procesos el acceso transparente y eficiente de archivos que permanecen en los servidores remotos del mismo modo como si fueran locales.
La implantación de un sistema distribuido de archivos incluye aspectos tales como: El uso de los archivos, la estructura del sistema, el ocultamiento, la duplicación o réplica, .el control de la concurrencia.
jorge martinez C.I 20.355.533 Sistema distribuido de archivos:su principal función es la de almacenar los programas y los datos y tenerlos disponibles cuando se le haga el llamado.
En cuanto a las tendencias en los sistemas de archivos distribuidos observamos las características esenciales que ya hemos venido tocando en clase, como lo es la tolerancia a fallos, la escalabilidad y los usuarios molives que es una característica que permite este avance tecnológico, el cual es muy interesante ya que existen usuarios que no todo el tiempo estan conectados a una estación de servicio asi que esto le permite el manejo del sistema por medio de una laptop, notebook o telefonos inteligentes.. Entre los sistemas de archivos distribuidos más populares que existen en la actualidad, tenemos los que nos proporciona Netware, tales como:
*Remote Filke Sharing (RFS en UNIX)
*Network File System (de Sun Microsystems)
*Andrew File System (AFS)
Netware: Es una de las plataformas de servicio más fiable para ofrecer acceso seguro y continuado a la red
jorge martinez C:I 20.355.355 TENDENCIA EN LOS SISTEMAS DE ARCHIVOS DISTRIBUIDOS:esto lleva acabo las siguiente función,en la que se dispone de varias copias de algunos archivos, donde cada copia está en un servidor de archivos de forma independiente.
El principal propósito de los sistemas distribuidos es soportar la misma clase de comportamiento cuando los archivos están dispersos físicamente entre los diversos sitios de un sistema distribuido. La utilización efectiva de la memoria caché en el cliente para conseguir iguales Prestaciones o mejores que las de los sistemas de archivos locales; El mantenimiento de la consistencia entre múltiples copias de archivos en las cachés de los clientes cuando son actualizadas, la recuperación después de un fallo en el servidor o en el cliente, un alto rendimiento en la lectura y escritura de archivos de todos los tamaños.
El verdadero servicio de archivos: Realiza operaciones en los archivos individuales: lectura, escritura, adición. El servicio de directorios: Crea y maneja directorios, añade y elimina archivos de los directorios, etc.
Tenemos la clasificacion en Modelo carga/descarga: operaciones: Lectura: La lectura consiste en transferir un archivo de uno de los servidores de archivos al cliente Escritura: consiste en una transferencia como la lectura, pero en sentido contrario. y Modelo de acceso remoto: Los archivos son ejecutados con todas las funciones en los servidores y no en los clientes.
Jose Araque C.I. 20.453.265 Un Sistema de Archivos Distribuido tiene como principal objetivo compartir los datos entre los usuarios ofreciendo transparencia, a su vez, se busca un alto grado de disponibilidad, buen rendimiento comparable a un sistema tradicional y además que sea tolerante a fallos. Generalmente se usa el modelo cliente-servidor; En primer lugar, el servicio de archivos se encarga de las operaciones de los archivos (LECTURA, ESCRITURA), y en segundo lugar el servicio de directorios que se encarga de realizar operaciones con los mismos(CREAR, y ADMINISTRAR DIRECTORIOS) ademas de añadir y eliminar archivos en estos.
En lo personal me encanto esa cita que encontre investigando: "Un archivo es una secuencia de bytes con algún significado especial para el usuario."
En algunos sistemas de archivos se maneja el concepto de inmutabilidad, que consiste en que un archivo sólo puede ser creado y leído, pero no modificado. Esto facilita el soporte del ocultamiento y la replicación de archivos, puesto que se eliminan los problemas de actualización de copias remotas.
Los servicios de archivos se pueden dividir en dos tipos, según si soportan un modelo de carga/descarga o un modelo de acceso remoto.
En el modelo de carga/descarga, el servicio de archivos proporciona dos operaciones principales: lectura de archivo y escritura del mismo. La lectura transfiere todo el archivo de los servidores de archivos al cliente solicitante. La escritura transfiere todo el archivo del cliente de regreso al servidor. El modelo conceptual es el traslado de archivos completos en alguna de las direcciones. La interfaz es sencilla, y la transferencia completa de archivos es muy eficiente.
El modelo de acceso remoto se proporciona un gran número de operaciones para abrir y cerrar archivos, leer y escribir partes de archivos, moverse a través de un archivo (lseek), etc. Aquí el sistema de archivos se ejecuta en los servidores y nunca se trasladan los archivos a los clientes. Su ventaja es que no necesita mucho espacio en los clientes y la cantidad de información transferida es mínima.
Un sistema de gestión de archivos le permite al usuario con acceso a un archivo, que él mismo pueda manejar el archivo bloqueandolo o bloqueando sus archivos individuales. Si no se considera ninguna de estas dos opciones, entonces se analizará aspectos de exclusión mutua e interbloqueo.
Para que los modelos se cumplan debe existir u servicio de directorios que proporciona las operaciones para crear, eliminar directorios, nombrar o cambiar archivos dentro de directorios, y mover archivos de un directorio a otro. Los directorios pueden contener subdirectorios y éstos también pueden contener subdirectorios, lo que se conoce como sistema jerárquico de archivos o árbol de directorios.
En ciertos sistemas es posible crear enlaces o apuntadores a un directorio arbitrario desde cualquier directorio, con lo que se pueden crear grafos arbitrarios, que son más poderosos que los árboles. La distinción entre árboles y grafos es de particular importancia en sistemas distribuidos.
Un sistema de archivos distribuido o sistema de archivos de red es un sistema de archivos de computadoras que sirve para compartir archivos, impresoras y otros recursos como un almacenamiento persistente en una red de computadoras. El primer sistema de este tipo fue desarrollado en la década de 1970, y en 1985 Sun Microsystems creó el sistema de archivos de red NFS el cual fue ampliamente utilizado como sistema de archivos distribuido. Otros sistemas notables utilizados fueron el sistema de archivos Andrew (AFS) y el sistema Server Message Block SMB, también conocido como CIFS.
Interesante la informacion obtenida de wikipedia, segun mi opinion Cuando diseñamos sistemas distribuidos de archivos tenemos que cubrir cada uno de los puntos posibles de fallo con infraestructura o servicios redundantes. Los sistemas de archivos (filesystem en inglés), estructuran la información guardada en una unidad de almacenamiento (normalmente un disco duro) de una computadora, que luego será representada ya sea textual o gráficamente utilizando un gestor de archivos. La mayoría de los sistemas operativos poseen su propio sistema de archivos.
Lo habitual segun mi investigacion es utilizar dispositivos de almacenamiento de datos que permiten el acceso a los datos como una cadena de bloques de un mismo tamaño, a veces llamados sectores, usualmente de 512 bytes de longitud. El software del sistema de archivos es responsable de la organización de estos sectores en archivos y directorios y mantiene un registro de qué sectores pertenecen a qué archivos y cuáles no han sido utilizados.
Buenas noches disculpen la tardanza soy Carlos Guevara Grupo Nº8 Y se da inicio al tema: Memoria compartida Distribuida *Definición. *Modelos de Consistencia. *Memoria Compartida Distribuidas con base en paginas *Memoria Compartida Distribuida con Variables. *Memoria Compartida Distribuida basada en objetos.
Es en realidad un tratado entre ciertos procesos y el alamacenamiento de información o datos.
Los modelos de consistencia deben cumplir las siguientes propiedades:
*Si los procesos acuerdan obedecer ciertas reglas, el almacenamiento promete trabajar correctamente.
*Normalmente una operación de lectura debiese retornar la última actualización del dato.
*Los modelos pueden ser:
-Centrados en los datos
-Centrados en el cliente
En las memorias compartidas distribuidas es importante tener presente un modelo de consistencia, puesto que están relacionados entre sí formando un conjunto sólido, donde dicho modelo establece la forma en que se hacen visibles a los distintos nodos del sistema las actualizaciones hechas a la memoria compartida mediante la estructura de todos los modelos, los cuales son cruzados entre sí para revisar la consistencia de los mismos para una especificación balanceada o equilibrada, con el objetivo de mejorar el rendimiento y la seguridad especificando las garantías de consistencia que un sistema MCD realiza sobre los valores que los procesos leen desde los objetos, dado que en realidad acceden sobre una réplica de cada objeto y que múltiples procesos pueden actualizar los objetos.
En estas las comunicaciones entre los diferentes procesadores se realizan a través de accesos a un espacio compartido de direcciones. Entre sus principales ventajas se encuentra la facilidad de programación.
Estas se diferencian de la DSM (MEMORIA COMPARTIDA DISTRIBUIDA ) basadas en paginas ya que estas son un método más estructurado consiste en compartir solo ciertas variablesestructuradas de datos necesarias para más de un proceso, el problema pasa de realizar lapaginación sobre la red a la forma de mantener una base de datos distribuida, en formaduplicada consiste en las variables compartidas, pueden aplicarse varias técnicas que estasconducen con frecuencia a mejoras esenciales al proceso. El uso de variables compartidascontroladas de manera individual proporcionan una oportunidad para no compartir fácilmente.
MODELOS DE CONSISTENCIA: este modelo consiste en un contrato entre los procesos que acceden a los datos y almacén de datos, donde este contrato consiste en donde los procesos siguen ciertas reglas, el almacén de datos proporciona ciertas garantías.
MEMORIA COMPARTIDA DISTRIBUIDA CON BASE EN PAGINAS: El esquema de DSM propone un espacio de direcciones de memoria virtual que integra la memoria de todas las computadoras del sistema, y su uso se realiza mediante paginación. Las páginas quedan restringidas a estar necesariamente en un único nodo. Cuando un programa intenta acceder a una posición virtual de memoria, se comprueba si esa página se encuentra de forma local. Si no se encuentra, se provoca un fallo de página, y el sistema operativo solicita la página al resto de nodos. El sistema funciona de forma análoga al sistema de memoria virtual tradicional, pero en este caso los fallos de página se propagan al resto de ordenadores, hasta que la petición llega al nodo que tiene la página virtual solicitada en su memoria local. A primera vista este sistema parece más eficiente que el acceso a la memoria virtual en disco, pero en la realidad ha mostrado ser un sistema demasiado lento en ciertas aplicaciones, ya que provoca un tráfico de páginas excesivo.
MEMORIA COMPARTIDA DISTRIBUIDA CON VARIABLES: esta consiste en compartir sólo ciertas variables y estructuras de datos necesarias para más de un proceso,Donde uno de los aspectos más importantes a tratar de estos sistemas es el de si las variables compartidas deben o no duplicarse.
MEMORIA COMPARTIDA DISTRIBUIDA BASADA EN OBJETOS:esta busca el acceso a datos por medio de la encapsulación de la información y repartida a través de la red, estos objetos serán definidos por el Programador y las CPU´s cambiaran los estados según procedan con los accesos.
jorge martinez C.I 20.355.533 memorias compartidas distribuidas:son aquellas memorias que son comparten y intercambian datos entre varias computadoras que no poseen memoria física...
jorge martinez C.I 20.355.533 modelos de consistencia: son simplemente un tratado que se lleva a cabo entre los procesos y almacenamiento de información de un computador
Memoria Compartida Distribuida: representan la creación hibrida de dos tipos de computación paralelos: la memoria distribuida en sistemas multiprocesador y los sistemas distribuidos. Ellos proveen la abstracción de memoria compartida en sistemas con memorias distribuidas físicamente y consecuentemente combinan las mejores características de ambos enfoques.
Modelos de Consistencia: adquiere importancia en los sistemas DSM que replican el contenido de la memoria compartida mediante su almacenamiento en las cachés de computadores separados. Cada proceso tiene un gestor de réplicas local, el cual está encargado de mantener copias en caché para los objetos. En la mayor parte de las implementaciones, los datos se leen desde las réplicas locales por cuestiones de eficiencia, pero las actualizaciones deben propagarse al resto de gestores de réplica.
Memoria Compartida Distribuida con base en páginas: El esquema de DSM propone un espacio de direcciones de memoria virtual que integra la memoria de todas las computadoras del sistema, y su uso se realiza mediante paginación. Las páginas quedan restringidas a estar necesariamente en un único nodo. Cuando un programa intenta acceder a una posición virtual de memoria, se comprueba si esa página se encuentra de forma local. Si no se encuentra, se provoca un fallo de página, y el sistema operativo solicita la página al resto de nodos. El sistema funciona de forma análoga al sistema de memoria virtual tradicional, pero en este caso los fallos de página se propagan al resto de ordenadores, hasta que la petición llega al nodo que tiene la página virtual solicitada en su memoria local. Este es un sistemas que se ha mostrado ser un sistema demasiado lento en ciertas aplicaciones, ya que provoca un tráfico de páginas excesivo.
Memoria Compartida Distribuida con Variables: Uno de los aspectos más importantes a tratar de estos sistemas es el de si las variables compartidas deben o no duplicarse, y de qué manera, parcial o total. Si se duplicasen existiría más potencial que en un sistema DSM basado en páginas, en términos de actualización, dado que las escrituras en las variables compartidas individuales se pueden aislar. Dos de los ejemplos más interesantes de este tipo de sistemas son el Munin y el Midway; el primero se basa en una implantación software de la consistencia de liberación, y el segundo consiste en compartir las estructuras de datos individuales, permitiendo que los programas multiprocesador existentes y los nuevos se ejecuten de manera eficiente en las multicomputadores, con ligeros cambios de código.
Memoria Compartida Distribuida basada en objetos: Se implementa utilizando uno de los siguientes métodos o bien una combinación de ellos, hardware especializado, memoria virtual paginada convencional o middleware: *Hardware: las arquitecturas multiprocesador de memoria compartida basadas en una arquitectura NUMA (por ejemplo, Dash [Lenoski y otros 1992] y PLUS [Bisiani y Ravishankar 1990] se basan en hardware especializado para proporcionar a los procesadores una visión consistente de la memoria compartida. Gestionan las instrucciones de acceso a memoria LOAD y STORE de forma que se comuniquen con la memoria remota y los módulos de caché según sea necesario para almacenar y obtener datos. Esta comunicación se realiza sobre sistemas de interconexión de alta velocidad similares a una red.
*Memoria virtual paginada: muchos sistemas, incluyendo Ivy [Li y Hudak 1989], Munin [Carter y otros 1991], Mirage [Fleisch y Popek 1989], Clouds [Dasgupta y otros 1991], Choices [Sane y otros 1990], COOL (Lea y otros 1993] y Mether [Minnich y Farber 1989], implementan DSM como una región de memoria virtual que ocupa el mismo rango de direcciones en el espacio de direcciones de cada proceso participante. Este tipo de implementación normalmente sólo es factible sobre una colección de computadores homogéneos con formatos de datos y de paginación comunes.
*Middleware: algunos lenguajes del tipo de Orca [Bal y otros 1990] y middleware como Linda [Carriero y Gelernter 1989] junto con sus derivados JavaSpaces y TSpaces [Wyckoff y otros 1998] proporcionan DSM sin necesidad de soporte hardware o de paginación, de una forma independiente de la plataforma. En este tipo de implementación, la computación se implementa mediante la comunicación entre instancias del nivel de soporte de usuario en los clientes y los servidores. Los procesos realizan llamadas a este nivel cuando acceden a datos en DSM.
Memoria Compartida Distribuida (DSM) es fundamentalmente reconocida como uno de los más utilizados para la creación de sistemas escalables, de alto rendimiento de sistemas multiprocesador.
De igual manera es una abstracción utilizada para compartir datos entre PCs que no comparten memoria física. Los procesos acceden ala memoria compartida distribuida para leer y actualizar, dentro de sus espacios de direcciones, sobre lo que aparenta ser la memoria interna normal asignada a un proceso. Es como si 1os procesos accedieran a una única memoria compartida, pero de hecho la memoria física está totalmente distribuida.
Un Modelo de Consistencia consiste en un contrato entre los procesos que acceden en los datos y el almacén de datos que estipula ciertas reglas para así proporcionar garantías factibles, es decir si un proceso realiza una operación en read, obtrendra la ultima actualización de datos.
Modelo:
- Existen dos operaciones: write y read.
Wi(x)a: el proceso i realiza write sobre X con valor a
Rj(x)a: el proceso j realiza read sobre Y, obteniendo el valor b.
- Un cliente que accede a los datos, realiza read o write sobre una copia
de los datos.
- Existen múltiples copias de los datos, estructuradas en lo que
Los sistemas de memoria compartida distribuida (DSM) representan la creación hibrida de dos tipos de computación paralelos: la memoria distribuida en sistemas multiprocesador y los sistemas distribuidos. Ellos proveen la abstracción de memoria compartida en sistemas con memorias distribuidas físicamente y consecuentemente combinan las mejores características de ambos enfoques. Debido a esto, el concepto de memoria compartida distribuida es reconocido como uno de los enfoques mas atractivos para la creación de sistemas escalables, de alto rendimiento de sistemas multiprocesador.
Memoria compartida basada en páginas
El esquema de DSM propone un espacio de direcciones de memoria virtual que integra la memoria de todas las computadoras del sistema, y su uso se realiza mediante paginación. Las páginas quedan restringidas a estar necesariamente en un único nodo. Cuando un programa intenta acceder a una posición virtual de memoria, se comprueba si esa página se encuentra de forma local. Si no se encuentra, se provoca un fallo de página, y el sistema operativo solicita la página al resto de nodos. El sistema funciona de forma análoga al sistema de memoria virtual tradicional, pero en este caso los fallos de página se propagan al resto de ordenadores, hasta que la petición llega al nodo que tiene la página virtual solicitada en su memoria local. A primera vista este sistema parece más eficiente que el acceso a la memoria virtual en disco, pero en la realidad ha mostrado ser un sistema demasiado lento en ciertas aplicaciones, ya que provoca un tráfico de páginas excesivo.
Una mejora dirigida a mejorar el rendimiento sugiere dividir el espacio de direcciones en una zona local y privada y una zona de memoria compartida, que se usará únicamente por procesos que necesiten compartir datos. Esta abstracción se acerca a la idea de programación mediante la declaración explícita de datos públicos y privados, y minimiza el envío de información, ya que sólo se enviarán los datos que realmente vayan a compartirse.
Memoria compartida basada en objetos
Una alternativa al uso de páginas es tomar el objeto como base de la transferencia de memoria. Aunque el control de la memoria resulta más complejo, el resultado es al mismo tiempo modular y flexible, y la sincronización y el acceso se pueden integrar limpiamente. Otra de las restricciones de este modelo es que todos los accesos a los objetos compartidos han de realizarse mediante llamadas a los métodos de los objetos, con lo que no se admiten programas no modulares y se consideran incompatibles.
VENTAJAS / DESVENTAJAS DE LA MEMORIA DISTRIBUIDA
Ventajas:
Ilusión de una memoria física compartida, sin cuellos de botella. Escabilidad (podemos extender el sistema sin mucho problema). Menor costo.
Desventajas:
Topología de red muy importante. Administración de la red.
IMPLEMENTACION DE UNA MEMORIA DISTRIBUIDA
Acceso compartido a la memoria à comunicación Inter-procesos.
Ningún procesador puede acceder directamente a la memoria de otro procesador à NORMA (NO Remote Memory Access) Systems.
Los procesadores hacen referencia a su propia memoria local. Hay que aumentar software para que, cuando un procesador haga referencia a una página remota, esta página sea recuperada.
El espacio de direccionamiento común es particionado en pedazos.
Cada pedazo es situado en una estación.
Cuando un procesador hace referencia a una pagina no local à "trap" (page fault). http://procesosprocesadore.tripod.com/
jose guardia Los sistemas de memoria compartida distribuida (DSM) representan la creación hibrida de dos tipos de computación paralelos: la memoria distribuida en sistemas multiprocesador y los sistemas distribuidos. Ellos proveen la abstracción de memoria compartida en sistemas con memorias distribuidas físicamente y consecuentemente combinan las mejores características de ambos enfoques. Debido a esto, el concepto de memoria compartida distribuida es reconocido como uno de los enfoques mas atractivos para la creación de sistemas escalables, de alto rendimiento de sistemas multiprocesador https://sites.google.com/site/sistemasoperativospaty/unidad-4/41-configuraciones-memoria-compartida-distribuida
Una alternativa al uso de páginas es tomar el objeto como base de la transferencia de memoria. Aunque el control de la memoria resulta más complejo, el resultado es al mismo tiempo modular y flexible, y la sincronización y el acceso se pueden integrar limpiamente. Otra de las restricciones de este modelo es que todos los accesos a los objetos compartidos han de realizarse mediante llamadas a los métodos de los objetos, con lo que no se admiten programas no modulares y se consideran incompatibles.
Tambien conocida como Distributed Shared Memory DSM Los sistemas de software DSM también tienen capacidad para organizar la región de memoria compartida de manera flexible. Las aproximaciones basadas en páginas organizan la memoria compartida en páginas de tamaño fijo. Por su parte, las aproximaciones basadas en objetos organizan la región como un espacio abstracto en el que se pueden almacenar objetos compartidos de tamaño variable. El funcionamiento de DSM el espacio de direcciones se divide en páginas, mismas que se distribuyen por todos los nodos. En el momento que una CPU hace referencia a una dirección remota se produce una interrupción, el software de DSM obtiene la página que contiene la dirección y retorna a la instrucción fallida, misma que se ahora se completará con éxito. Modelos de Consistencia. Un modelo de consistencia es esencialmente un contrato entre procesos y el almacenamiento de datos. Es decir: si los procesos acuerdan obedecer ciertas reglas, el almacenamiento promete trabajar correctamente. Para mantener el modelo, los compiladores pueden reordenar algunas instrucciones de memoria, y las llamadas a las bibliotecas como pthread_mutex_lock(), encapsular la sincronización necesaria. con cada escritura es necesario actualizar todas las copias, el envío de las páginas por la red provoca que el tiempo de espera aumente demasiado, convirtiendo este método en impracticable
Este blog es de un grupo de estudiantes de nuestra area esta muy bueno lean y lo que no entiendan corroboren con google es algo muy cotidiano http://ais-sistemasdistribuidos.blogspot.com/p/tema-8.html
La Memoria compartida distribuida en sus siglas (DSM)es una creación que representa dos tipos dos tipos de computación paralelos: la memoria distribuida en sistemas multiprocesador y los sistemas distribuidos. Esta creación es utilizada para compartir datos entre computadores que no comparten memoria física.
Los sistemas de memoria distribuida compartida es el logro de dos clases de computadoras paralelas: los multiprocesadores de memoria compartida y los sistemas de cómputo distribuidos. Estos tienen una abstracción compartida de la memoria en los sistemas cuya memoria físicamente está distribuida, combina las ventajas de ambas. El concepto de memoria distribuida compartida es reconocido como una de los avances más llamativos para diseño de sistemas multiprocesadores de alta gama, a gran escala.
Por ejemplo: Usamos nuestra memoria RAM, con un límite fijo pero nuestra PC puede generar una memoria literalmente “física” llamada memoria virtual o de paginación, que es capaz de extender o aliviar el proceso de la memoria RAM, pero al compartir memoria, nos referimos más que todo a una red y ya algo más digital.
Unas de las ventajas de los Sistema de Memoria Compartida Basada en Objetos son:
- Nace como respuesta a la creciente popularización de los lenguajes orientados por objetos.
- Los datos se organizan y son transportados en unidades de objetos, no unidades de -páginas.
- Es un modelo de programación de DSM de alto nivel.
Zoreli Canelón 23.663.662 Los sistemas con memoria distribuida compartida pueden ser implementados en un sistema operativo, o como una librería de programación y se pueden considerar como extensiones del subyacente de la memoria virtual de la arquitectura. Cuando se implementa en el sistema operativo, tales sistemas son transparentes para el desarrollador; lo que significa que el subyacente memoria distribuida está completamente oculto a los usuarios. En contraste, los sistemas de software DSM implementados en la biblioteca o el nivel de idioma no son transparentes y los desarrolladores lo general tienen que programar de forma diferente. Sin embargo, estos sistemas ofrecen un enfoque más portátil para la implementación del sistema DSM.
Es una abstracción utilizada para compartir datos entre computadores que no comparten memoria física. Los procesos acceden a DSM para leer y actualizar, dentro de sus espacios de direcciones, sobre lo que aparenta ser la memoria interna normal asignada a un proceso. Sin embargo, existe un sistema subyacente en tiempo de ejecución que asegura de forma transparente que procesos diferentes ejecutándose en computadores diferentes observen las actualizaciones realizadas entre ellas. Es como si 1os procesos accedieran a una única memoria compartida, pero de hecho la memoria física está distribuida
La cuestión de la consistencia adquiere importancia en los sistemas DSM que replican el contenido de la memoria compartida mediante su almacenamiento en las cachés de computadores separados. Cada proceso tiene un gestor de réplicas local, el cual está encargado de mantener copias en caché para los objetos. En la mayor parte de las implementaciones, los datos se leen desde las réplicas locales por cuestiones de eficiencia, pero las actualizaciones deben propagarse al resto de gestores de réplica.
El gestor de réplica local se implementa mediante una combinación del middleware (el nivel DSM en tiempo de ejecución en cada proceso) y del núcleo. Es normal que el middleware realice la mayor parte del procesamiento DSM. Incluso en las implementaciones de DSM basadas en páginas, el núcleo normalmente proporciona únicamente una correspondencia de páginas básica, el manejo de fallos de página y los mecanismos de comunicación, mientras que el middleware es responsable de implementar las políticas de compartición de páginas. Si los segmentos DSM son persistentes, entonces uno o más servidores de almacenamiento (por ejemplo, servidores de archivos) actuarán también como gestores de réplicas.
los modelos de consistencias los nombrare del mas fuerte al mas debil.
CONSISTENCIA CASUAL: La condición a cumplir para que unos datos sean causalmente consistentes es: • Escrituras que están potencialmente relacionadas en forma causal deben ser vistas por todos los procesos en el mismo orden. • Escrituras concurrentes pueden ser vistas en un orden diferente sobre diferentes máquinas.
Es permitida con un almacenamiento causalmente consistente, pero no con un almacenamiento secuencialmente consistente o con un almacenamiento consistente en forma estricta.
CONSISTENCIA SECUENCIAL: La consistencia secuencial es una forma ligeramente más débil de la consistencia estricta. Satisface la siguiente condición:
El resultado de una ejecución es el mismo si las operaciones (lectura y escritura) de todos los procesos sobre el dato fueron ejecutadas en algún orden secuencial a) Un dato almacenado secuencialmente consistente. b) Un dato almacenado que no es secuencialmente consistente.
CONSISTENCIA DÉBIL: Los accesos a variables de sincronización asociadas con los datos almacenados son secuencialmente consistentes. Propiedades No se permite operación sobre una variable de sincronización hasta que todas las escrituras previas de hayan completado. No se permiten operaciones de escritura o lectura sobre datos hasta que no se hayan completado operaciones previas sobre variables de sincronización.
CONSISTECIA DE LIBERACION: Se basa en el supuesto de que los accesos a variables compartidas se protegen en secciones críticas empleando primitivas de sincronización, como por ejemplo locks. En tal caso, todo acceso esta precedido por una operación adquiere y seguido por una operación release. Es responsabilidad del programador que esta propiedad se cumpla en todos los programas.
La memoria compartida se estructura como una colección de objetos de nivel de lenguaje, como pilas o diccionarios, con una semántica de mayor nivel que la simple de lectura/escritura de variables. Los contenidos de la memoria compartida se modifican únicamente mediante invocaciones sobre dichos objetos y nunca a través del acceso directo a sus variables miembro. Una ventaja de esta visión de la memoria es que la semántica de objetos puede utilizarse para forzar la consistencia. La visión de DSM proporcionada por Orca es la de una colección de objetos compartidos en los que automáticamente se serializan las operaciones simultáneas realizadas sobre cualquiera de ellos.
En un principio las máquinas paralelas MIMD(Multiple Instructions, Multiple Data),se dividía la Memoria en dos clases dependiendo de su arquitectura:
Maquinas De Memorias Compartidas, Que están compuestas por una pila de procesadores accesando a un modulo individual de memoria. La ventaja principal de estas computadoras yace en su fácil programabilidad, debido al hecho de que no hay comunicación entre procesadores. sin embargo, las contenciones y colisiones (que son producto del acceso concurrente a la memoria compartida) impiden a la aplicación de ser realmente escalable. Por lo tanto, a pesar de muchos intentos, la mayoría de las Maquinas de Memoria Compartida están limitadas a un pequeño numero de procesadores (<32).
Maquinas de Memoria Distribuida, al contrario del caso anterior, estas pueden integrar un gran numero de procesadores (>1000). Las aplicaciones que usan esta arquitectura pueden ser escalables (si el programador es lo suficientemente bueno). El modelo de comunicación usado es generalmente paso de mensajes. Que puede permitir considerables aceleraciones. Sin embargo su programación es bastante difícil, ya que los usuarios finales tienen que usar todas las operaciones de comunicaciones.
Bajo este conexto, con la finalidad de permitirle al programador el acceso y la capacidad de compartir "objetos de Memoria", pero sin estar a cargo de su administracion. se creo una plataforma en la que se implementara el modelo de memoria compartida, en los sistemas que carecen de memoria física compartida, a traves del uso de una memoria virtual, que provee un espacio de direcciones compartido entre todos los nodos.
Memoria Compartida Distribuidas con base en paginas
El esquema de DSM propone un espacio de direcciones de memoria virtual que integra la memoria de todas las computadoras del sistema, y su uso se realiza mediante paginación. Las páginas quedan restringidas a estar necesariamente en un único nodo. Cuando un programa intenta acceder a una posición virtual de memoria, se comprueba si esa página se encuentra de forma local. Si no se encuentra, se provoca un fallo de página, y el sistema operativo solicita la página al resto de nodos. El sistema funciona de forma análoga al sistema de memoria virtual tradicional, pero en este caso los fallos de página se propagan al resto de ordenadores, hasta que la petición llega al nodo que tiene la página virtual solicitada en su memoria local. A primera vista este sistema parece más eficiente que el acceso a la memoria virtual en disco, pero en la realidad ha mostrado ser un sistema demasiado lento en ciertas aplicaciones, ya que provoca un tráfico de páginas excesivo. Una mejora dirigida a mejorar el rendimiento sugiere dividir el espacio de direcciones en una zona local y privada y una zona de memoria compartida, que se usará únicamente por procesos que necesiten compartir datos. Esta abstracción se acerca a la idea de programación mediante la declaración explícita de datos públicos y privados, y minimiza el envío de información, ya que sólo se enviarán los datos que realmente vayan a compartirse.
Memoria Compartida Distribuida basada en objetos
En los MCD basados en objetos se busca el acceso a datos por medio de la encapsulación de la información y repartida a través de la red, estos objetos serán definidos por el Programador y las CPU´s cambiaran los estados según procedan con los accesos. Nace como respuesta a la creciente popularización de los lenguajes orientados por objetos. Los datos se organizan y son transportados en unidades de objetos, no unidades de páginas.
Ventajas:
Es mas modular que otras técnicas. La implementación es más flexible por que los accesos son controlados. Sincronización y accesos se pueden integrar juntos, más fácilmente.
Desventajas:
No corre en viejos programas para multiprocesadores. Los accesos se deben hacer invocando a los accesos, lo que significa más trabajo que los métodos de páginas compartidas.
En los MCD basados en variables busca evitar la compartición falsa ejecutando un programa en cada CPU que se comunica con una central, la que le provee de variables compartidas, administrando este cualquier tipo de variable, poniendo variables grandes en varias páginas o en la misma página muchas variables del mismo tipo, en este protocolo es muy importante declarar las variables compartidas. La compartición falsa se produce cuando dos procesos se pelean el acceso a la misma página de memoria, ya que contiene variables que requieren los dos, pero estas no son las mismas. Esto pasa por un mal diseño del tamaño de las páginas y por la poca relación existente entre variables de la misma página. En este esquema la granularidad es más fina ya que sólo se comparten variables que han sido marcados previamente en el código del programa. Tanto el compilador como el entorno de ejecución se encargan del acceso y compartición de las variables compartidas.
Ejemplos: Munin y Midway
Se recomienda la duplicación. Ésta puede ser parcial o total. El Algoritmo de actualización es sumamente importante. No hay compartición falsa dado que todos los procesos acceden a datos protegidos y consistentes dado que la variable compartida monitoriza los accesos de escritura.
Munin
Se basa en objetos del software (usa MMU).
Declaraciones con “shared”. Una variable compartida por página (por defecto).
Instrucciones normales de lectura y escritura.
No hay métodos de protección especiales. Se manejan regiones críticas.
Clases de variables: Variables ordinarias. Variables de datos compartidos. Variables de sincronización.
Categorías de variables: Exclusiva para lectura. Migratoria. De escritura compartida. Convencional.
Midway
Compartir estructuras de datos individuales. C, C++ o ML convencional con información adicional. Mantiene consistentes las variables compartidas de manera eficiente
76 comentarios:
BUENAS TARDES SOMOS EL GRUPO NUMERO 7.
EL DEBATE COMENZARA A PARTIR DEL JUEVES 22 DE ENERO DEL PRESENTE AÑO A LAS 12PM HASTA EL DIA DOMINGO 25.
LOS PUNTOS A DISCUTIR SON:
1) SISTEMAS DISTRIBUIDOS DE ARCHIVOS
2)IMPLEMENTACION DE UN SISTEMA DE ARCHIVO DISTRIBUIDO.
3)TENDENCIA EN LOS SISTEMAS DE ARCHIVOS DISTRIBUIDOS.
POR MOTIVOS PERSONALES PUBLICARE LA INFORMACION HOY DIA MIERCOLES. PERO RECUERDEN QUE EL DEBATE E INTERVENCIONES COMIENZAN MAÑANA JUEVES A LAS 12PM.
SISTEMAS DISTRIBUIDOS DE ARCHIVOS
Un componente fundamental de cualquier sistema distribuido es el sistema de archivos. Corno en el caso de los sistemas con un procesador, la tarea del sistema de archivos en los sistemas distribuidos es almacenar los programas y los datos y tenerlos disponibles cuando sea necesario.
Un servidor de archivos es un proceso que se ejecuta en alguna maquina y ayuda a implantar el servicio de archivos. Un sistema puede tener uno o varios servidores de archivos, pero los clientes no deben conocer el número de servidores de archivos, su posición o función. Todo lo que saben es que al llamar los procedimientos especificados en el servicio de archivos, el trabajo necesario se lleva a cabo de alguna manera y se obtienen los resultados pedidos. De hecho, los clientes ni siquiera deben saber que el servicio de archivos es distribuido. Lo ideal es que se vea como un sistema de archivos normal de un procesador.
Puesto que ún servidor de archivos es por lo general un proceso del usuario (o a veces un proceso del núcleo) que se ejecuta en una máquina, un sistema puede contener varios servidores de archivos, cada uno de los cuales ofrece un servicio de archivos distinto. Por ejemplo, un sistema distribuido podría tener dos servidores que ofrezcan el servicio de archivos en UNIXy el servicio de archivos en MS-DOS, respectivamente, donde cada proceso usuario utilizaría el servidor apropiado. De esa forma, es posible que una terminal tenga varias ventanas y que en algunas de ellas se ejecuten programas de UNIX y en otras programas en MS-DOS, sin que esto provoque conflictos. Los diseñadores del sistema se encargan de que los servidores ofrezcan los servicios de archivo específicos, como UNIX o Ms-DOS. El tipo y número de servicios de archivo disponibles puede cambiar con la evolución del sistema.
Compañeros no confundir lo que es un servicio de archivo y el servidor de archivo "OJO" con se eso, se presta para confusiones. Claro esta que tienen relacion por ende les dare un breve concepto de servicio de archivos: es la especificación de los servicios que el sistema de archivos ofrece a sus clientes. Describe tas primitivas disponibles, los parámetros que utilizan y las acciones que llevan a cabo. Para los clientes, el servicio de archivos define con precisión el servicio con que pueden contar, pero no dice nada con respecto a su implantación. De hecho, el servicio de archivos especifica la interfaz del sistema de archivos con los clientes.
JESUS RONDON 20.528.066
GRUPO: 7
FUENTE : http://robertomc.8k.com/ap3-3.htm
GRUPO:7
Un concepto mas simple y sencillo de los sistemas de archivo distribuido es que dicho sistema es una implementación distribuida del modelo clásico de tiempo compartido de un sistema de archivos, donde múltiples usuarios comparten archivos y recursos de almacenamiento.
El propósito de un DFS es soportar la misma clase de compartimiento cuando los archivos están dispersos físicamente entre los diversos sitios de un sistema distribuido.
Un sistema distribuido es un conjunto de máquinas débilmente acopladas interconectadas mediante una red de comunicación.
Se emplea el término máquina para designar una computadora o una estación de trabajo.
Estructura;
Para saber como es la estructura de un DFS necesitamos definir los términos:
Servicio
Servidor
Cliente
Servicio: Es una entidad de software que corre en una o más máquinas y proporciona un tipo particular de función a clientes que no se conocen por adelantado.
Servidor: Es el software de servicio que corre en una sola máquina.
Cliente: Es un proceso que puede llamar a un servicio empleando operaciones que forman su interfaz de cliente .
Una interfaz de cliente para un servicio de archivos se forma mediante un conjunto de operaciones de archivos primitivos tales como el de crear, borrar, leer o escribir en un archivo.
El componente principal de hardware que controla a un servidor de archivos es un conjunto de dispositivos locales de almacenamiento secundarios tales como discos magnéticos.
COMPAÑEROS POR FAVOR SI TIENEN LA OPORTUNIDAD DESCARGUEN ESTA INFORMACION ES MUY COMPLETA.
http://ldc.usb.ve/~figueira/cursos/SOPII/Material/FSDist.pdf
GRUPO 7
grupo numero7 )TENDENCIA EN LOS SISTEMAS DE ARCHIVOS DISTRIBUIDOS.
:Una tendencia reciente en los sistemas de computador es distribuir el cómputo entre varios procesadores. En contraste con los sistemas fuertemente acoplados, los procesos no comparten ni la memoria ni el reloj. Los procesadores se comunican entre sí a través de diversas líneas de comunicación, como buses de alta velocidad o líneas telefónicas.
Los procesadores de estos sistemas pueden tener diferentes tamaños y funciones que pueden incluir microprocesadores pequeños, estaciones de trabajo, minicomputadoras y sistemas de computador de propósito general o distribuido. Tales procesadores pueden recibir varios nombres como: sitios, nodos, etc., dependiendo del contexto en que se mencionan.
Las razones para construir sistemas distribuidos son las siguientes:
Recursos compartidos: si varios sitios se conectan entre sí, un usuario de un sitio podría aprovechar los recursos disponibles en otro. Por ejemplo, un usuario del sitio A podría estar usado una impresora laser que solo está disponible en el sitio B. mientras tanto, un usuario del sitio B podría estar accediendo a un archivo que residen A. El uso de recursos compartidos en un sistema distribuidos ofrece mecanismos para compartir archivos en sitios remotos, procesar información de una base de datos distribuida, imprimir archivos en sitios remotos y realizar otras operaciones.
Computación más rápida: si un cálculo dado se puede subdividir en varios subcalculos susceptibles de ejecución concurrente, un sistema distribuido podría permitirlo distribuir el cálculo entre los distintos sitios, y ejecutándolo de forma concurrente.
Confiabilidad: si en un sitio de un sistema distribuido falla, los sitios restantes podrían seguir funcionando.
Comunicación: hay muchos casos en los que los programas necesitan intercambiar datos con otros programas del mismo sistema Si muchos sitios están conectados a través de una red de comunicaciones, los procesos de diferentes sitios tienen la oportunidad de intercambiar información. Los usuarios podrían iniciar transferencia de archivo o comunicarse entre sí por correo electrónico.
El sistema operativo se basa en la estructura de cliente-servidor. Los sistemas conectan a los clientes con los servidores. La comunicación se realiza por medio de mensajes enviados a través del nucleó, que los encamina utilizando unas tablas que tienen toda la información de localización del recurso o servicios.
COMPAÑEROS YA PUEDEN EMPEZAR A INTERVENIR!
Marianell Perez 19132932
Sistemas Distribuidos de Archivos.
Un sistema de archivos distribuidos permite a los procesos el acceso transparente y eficiente de archivos que permanecen en servidores remotos. Se encargan de la organización, almacenamiento, recuperación, nominación, compartimiento y protección de los archivos.
Jose Pacheco 20.590.852
Los sistemas distribuido de archivos permite a los programas almacenar y acceder a archivos remotos del mismo modo que si fueran locales, permitiendo a los usuarios que accedan a archivos desde cualquier computador.
Jose Pacheco 20.590.852
TENDENCIA EN LOS SISTEMAS DE ARCHIVOS DISTRIBUIDOS
El abaratamiento de la memoria principal permitirá disponer de
servidores con memorias cada vez mayores:
Se podría alojar directamente en la memoria del sistema de archivos logrando mayor sencillez y desempeño.
Se debería prever la obtención de respaldos continuos o por incrementos ante la posibilidad del corte en el suministro eléctrico.
El respaldo podría hacerse en discos ópticos regrabables que tengan una asociación uno auno con la memoria.
compañeros traten en la medida de lo posible de copiar y pegar, mejor fomentemos el debate y discusion en el foro
JAVIER JESUS BARROSO CORTEZ 20.876.987
SISTEMAS DISTRIBUIDOS DE ARCHIVOS:no es mas que un modelo de tiempo compartido de archivo donde varios usuarios comparten archivos y almacenan recursos.Este proceso se ve en la vida cotidiana cuando por medio de la red o intranet se comparten archivos donde los usuarios acceden a descargar ese archivo.
JAVIER JESUS BARROSO CORTEZ 20.876.987
IMPLEMENTACION DE UN SISTEMA DE ARCHIVO DISTRIBUIDO:Existen diferentes formas de utilizar los archivos, pero también existen dos formas de medir el grado de utilización de cada uso que se le puede dar a un archivo:
• Mediciones Estáticas: En este tipo de mediciones se observa el sistema en un determinado momento, esto quiere decir que se verifica su estado en un instante de tiempo. Entre algunas de estas mediciones estáticas podemos encontrar: la distribución de tamaños de los archivos, la distribución de tipos de archivos y la cantidad de espacio que ocupan los archivos de varios tamaños y tipos.
• Mediciones Dinámicas: Este tipo de mediciones se encarga de registrar todas las operaciones en una bitácora para un análisis posterior. De esta manera se tiene información respecto a la frecuencia con que se realizan ciertas operaciones.
En general, los sistemas de archivos distribuidos proporcionan la réplica de archivos como servicio a sus clientes. Es decir, se dispone de varias copias de algunos archivos, donde cada copia está en un servidor de archivos independiente.
Leer más: http://www.monografias.com/trabajos11/archi/archi.shtml#impl#ixzz2rKUrrtz7
JAVIER JESUS BARROSO CORTEZ 20.876.987
TENDENCIA EN LOS SISTEMAS DE ARCHIVOS DISTRIBUIDOS: lo que se debe de tener en cuenta en este punto es:
Hardware:Existen muchas más innovaciones tecnológicas que poco a poco harán más eficiente el manejo y administración de los sistemas de archivos, por lo que en el futuro se podría aun encontrar diversos tipos de soluciones específicas para un sistema determinado por sus propias características y requerimientos.
Escalabilidad:Debe de ser capaz de trabajar independientemente como un sistema de archivos distribuido, pero también debe poder hacerlo conectado a muchas otras máquinas. Un sistema de archivos debería funcionar tanto para una docena de equipos como para varios millares.
Redes de área amplia:La mayor parte del trabajo que se realiza actualmente en los sistemas distribuidos se basa en los sistemas alojados en redes LAN. La tendencia en el futuro es que veremos conectados entres sí muchos sistemas distribuidos LAN con el fin de formar sistemas distribuidos transparentes a través de todo el mundo. Lo que se debe tomar en cuenta es el tener el alcance de toda esta tecnología para su posterior desarrollo.
Tolerancia de fallas:Para que los sistemas de archivos cumplan con este requisito, deberá existir o implementarse una consistente infraestructura de hardware lo cual permita a los sistemas ser realmente confiables y seguros en cuanto a tiempo de funcionamiento efectivo se refiere.
Luimar Conde; C.I: 18.967.298
SISTEMA DE ARCHIVOS DISTRIBUIDOS: Este tipo de sistema sirve para compartir archivos, impresoras y otros recursos conectados a la red. El primer sistema de este tipo fue desarrollado en la década de 1970, y en 1985 Sun Microsystems creó el sistema de archivos de red NFS el cual fue ampliamente utilizado como sistema de archivos distribuido. Otros sistemas notables utilizados fueron el sistema de archivos Andrew (AFS) y el sistema Server Message Block SMB, también conocido como CIFS.
http://es.wikipedia.org/wiki/Sistema_de_archivos_distribuido
Luimar Conde; C.I: 18.967.298
Por lo general, un sistema distribuido de archivos tiene dos componentes: el verdadero servicio de archivos y el servicio de directorios.
Interfaz del Servicio de Archivos:Se encarga de las operaciones en los archivos individuales, como la lectura, escritura y adición.
Los servicios de archivos se pueden dividir en dos tipos, según si soportan un modelo carga/descarga o un modelo de acceso remoto. En el modelo carga/descarga, proporciona la lectura y escritura de un archivo. Es decir, transfiere un archivo del servidor al cliente y del cliente al servidor. Modelo de acceso remoto, solo se ejecuta en los servidores y no en los clientes.En este modelo, el servicio de archivos proporciona gran número de operaciones para abrir y cerrar archivos, leer y escribir partes de archivos, moverse a través de un archivo (LSEEK), examinar y modificar los atributos de archivo, entre otros.
http://robertomc.8k.com/ap3-3.htm
PASCUAL D'AGOSTO C.I 19986106
http://es.wikipedia.org/wiki/Sistema_de_archivos_distribuido
http://ais-sistemasdistribuidos.blogspot.com/p/blog-page.html
como comento mi compañera luimar el sistema de archivo distribuido. sirve para compartir archivos, impresoras y otros recursos como un almacenamiento persistente en una red de computadoras., el cual se encarga de las operaciones en los archivos individuales, como pueden ser la escritura, la lectura o la adición. Un aspecto importante del modelo de archivo es si éstos se pueden modificar después de su creación.
PASCUAL D'AGOSTO C.I 19986107
http://es.wikipedia.org/wiki/Sistema_de_archivos
http://www.alegsa.com.ar/Dic/sistema%20de%20archivos.php
también el sistema de archivo distribuido de define como: es el componente del sistema operativo encargado de administrar y facilitar el uso de las memorias periféricas, ya sean secundarias o terciarias. Sus principales funciones son la asignación de espacio a los archivos, la administración del espacio libre, y la administración del acceso a los datos resguardados.
Más formalmente, un sistema de archivos es un conjunto de tipo de datos abstractos que son implementados para el almacenamiento, la organización jerárquica, la manipulación, el acceso, el direccionamiento y la recuperación de datos.y
pueden ser clasificados en tres categorías: sistemas de archivo de disco, sistemas de archivos de red y sistemas de archivos de propósito especial
TENDENCIA EN LOS SISTEMA DE ARCHIVO DISTRIBUIDOS:
Los cambios tecnológicos de los últimos años pueden traer también cambios muy importantes en los sistemas de archivos distribuidos. Además con el rápido avance que se da en las redes de comunicaciones y su incremento en el ancho de banda la creación de paquetes que ofrecen la compartición de archivos es común de encontrarse en el mercado. En la industria, el esquema más solicitado es aquel que permite acceder a los grandes volúmenes de información de los grandes servidores desde las computadores personales o convencionales y desde otros servidores. Es por eso que la principal solución que adoptada por las pequeñas empresas es contar con Novell Netware en un servidor 486 o superior y acceder a los archivos desde máquinas similares.Entre los sistemas de archivos distribuidos más populares que existen en la actualidad, tenemos los que nos proporciona Netware, tales como:
Remote Filke Sharing (RFS en UNIX)
Network File System (de Sun Microsystems)
Andrew File System (AFS)
Es probable que los cambios en el hardware tengan un efecto muy importante en los futuros sistemas distribuidos de archivos. También es probable el impacto del cambio en las expectativas del usuario. Veremos a continuación algunos aspectos en los que podrían presentarse cambios en un futuro no muy lejano, teniendo en cuenta que los cambios tecnológicos se producen día a día y en desmesurado avance.
José Guardia
TENDENCIAS DE SISTEMAS DISTRIBUIDOS
ARQUITECTURA MULTIPROCESADORES
• Operan como un sistema de tiempo compartido, pero con varias cpu en vez de una sola.
• Externamente un multiprocesador con 32 cpu de 3 mips actúa de manera muy parecida a una sola cpu de 96 mips; 1 mips: 1.000.000 de instrucciones por segundo.
• Se corresponde con la imagen de un único sistema.
La característica clave es la existencia de una sola cola para ejecución:
• Una lista de todos los procesos en el sistema que no están bloqueados en forma lógica y listos para su ejecución.
• La cola de ejecución es una estructura de datos contenida en la memoria compartida.
Los programas de los procesos están en la memoria compartida, también el S. O.
El planificador (de procesos) del S. O. se ejecuta como una “región crítica”, con ello se evita que dos cpu elijan el mismo proceso para su ejecución inmediata.
Cuando un proceso se asigna a un procesador:
• Encuentra que el caché del procesador está ocupado por palabras de memoria que pertenecen a aquella parte de la memoria compartida que contiene al programa del proceso anterior.
• Luego de un breve lapso se habrán reemplazado por el código y los datos del programa del proceso asignado a ese procesador.
Ninguna cpu tiene memoria local, es decir que todos los programas se almacenan en la memoria global compartida.
Si todas las cpu están inactivas en espera de e / s y un proceso está listo para su ejecución:
• Es conveniente asignarlo a la cpu que se utilizó por última vez (para ese proceso):
o La hipótesis es que ningún otro proceso utilizó esa cpu desde entonces (hipótesis de Vaswani y Zahorjan).
Si un proceso se bloquea en espera de e / s en un multiprocesador, el S. O. puede:
• Suspenderlo.
• Dejarlo en “espera ocupada”:
o Es aplicable cuando la mayoría de la e / s se realiza en menos tiempo del que tarda un cambio entre los procesos.
o El proceso conserva su procesador por algunos milisegundos en espera de que la e / s finalice:
Si se agota el tiempo de espera y no ha finalizado la e / s, se realiza una conmutación de procesos.
Generalmente se dispondrá de un sistema de archivos tradicional, con un único caché:
• Globalmente considerado es similar al sistema de archivos de un único procesador.
http://unidad7.blog.terra.com.mx/
josé Guardia
TENDENCIAS EN LOS SISTEMAS DISTRIBUIDOS DE ARCHIVOS
En estos últimos años se ha logrado un avance significativo tanto en software como en hardware. Es probable que los cambios en hardware tengan un efecto importante en los sistemas distribuidos de archivos.
El hecho de que la memoria se siga abaratando produciría un efecto significativo en los sistemas distribuidos de archivos, de este modo el sistema de archivo podría estar
presente en la memoria en forma permanente y no existirá la necesidad de los discos. También mejoraría mucho el desempeño y haría mucho más sencillo la estructura del sistema de archivo.
La mayoría de los sistemas de archivos de la actualidad organizan los archivos como una colección de bloques, ya sea como árbol (UNIX) o como una lista ligada (MS-DOS). Con un sistema de archivos en el núcleo, podría ser más sencillo almacenar el archivo en forma adyacente en la memoria, en vez de separarlo en bloques. Es más fácil llevar un registro de los archivos almacenados en forma adyacente, además de que se pueden transmitir más rápido en la red. La razón de que los archivos adyacentes no se utilicen en los discos es que, si un archivo crece, su desplazamiento hacia un área del disco con mas espacio es una operación cara. Por el contrario, el desplazamiento de un archivo a otra área de la memoria es una operación factible.
La principal desventaja de tener el servidor de archivos en la memoria principal es si se interrumpe la energía eléctrica, se pierden todos los archivos. La memoria principal se borra al eliminar la electricidad. La solución seria hacer respaldos continuos en cintas de videos, pero si solo se necesita tener acceso una o dos veces por año para recuperarse de fallas en la energía, este método no es conveniente.
Otra forma de hacer respaldos sería utilizando discos ópticos, cuando la carga de trabajo no es pesada, los archivos que todavía no hayan sido respaldados se transfieren al disco de modo que el byte k de la memoria sea el byte k del disco, la asociación entre el dispositivo de respaldo y la memoria es uno a uno.
Otro desarrollo importante en hardware son las redes de fibras ópticas. Se podría equipar al sistema con un servidor de archivos en la memoria principal, una red de fibras ópticas de alta velocidad y haciendo respaldos en discos ópticos, no seria necesario el cache del cliente y el disco en el servidor.
Otro avance sería diseñar una nueva interfaz de red exclusivamente para solucionar el problema de la inconsistencia del cache de los clientes, la situación que se presenta cuando dos clientes ocultan el mismo archivo y uno de ellos lo modifica y el otro no descubre esto es análoga a los cache de memoria en un multiprocesador. Solo que en este caso, cuando un procesador modifica una palabra compartida, se envía una señal de hardware a través del bus de la memoria a los demás caches, con el fin de permitirles que invaliden o actualicen dicha palabra. Entonces se podrían diseñar interfaces de red que soporten estas señales.
Cada interfaz tendría un mapa de bits, uno por cada archivo en el cache. Para modificar un archivo, un procesador activa el bit correspondiente en la interfaz, el cual es 0 si ningún procesador ha actualizado recientemente el archivo. La activación de un bit hace que la interfaz cree y envíe un paquete a través del anillo que verifique y active el bit correspondiente en las demás interfaces. Este mecanismo permite cerrar el archivo en forma global en todas las maquinas en unos pocos microsegundos.
Luego de la actualización el procesador limpia el bit del mapa de bits, lo cual hace que la interfaz de la red localice el archivo mediante una tabla en memoria y que deposite en forma automática todos los bloques modificados en su posición correcta en las demás maquinas. Cuando el archivo queda actualizado en todas partes, el bit del mapa de bits se limpia en todas las maquinas.
Marianell Perez 19132932
TENDENCIAS DE LOS SISTEMAS DE ARCHIVO DISTRIBUIDOS
esta se da mediante los avances tecnologicos que tenemos diariamete
que traen importantes cambios a los sistemas distribuidos, ademas del rapido avance que se presenta en las
redes de comunicacion y el incremento en el ancho de banda y la comparticion de archivos. Las grandes industrias
se ven en la necesidad de contar con un servidor superior para el acceso de las maquinas de ultima generacion
PASCUAL D'AGOSTO C.I 19986107
http://ais-sistemasdistribuidos.blogspot.com/p/blog-page.html
Tendencias en los Sistemas de Archivos Distribuidos.
archivos distribuidos más populares que existen en la actualidad, tenemos los que nos proporciona Netware, tales como:
Remote Filke Sharing (RFS en UNIX)
Network File System (de Sun Microsystems)
Andrew File System (AFS.
podrían presentarse cambios en un futuro.
Hardware reciente.Esto mejoraría circunstancialmente los actuales servidores de archivos puesto que se podrá adquirir gran cantidad de gigabytes de memoria. Otro desarrollo son las redes de fibra óptica de alta velocidad que agilizarían la transferencia de archivos y se podría prescindir de la memoria caché.
PASCUAL D'AGOSTO C.I 19986107
http://ais-sistemasdistribuidos.blogspot.com/p/blog-page.html
Escalabilidad: cualquier computador individual ha de ser capaz de trabajar independientemente como un sistema de archivos distribuido, pero también debe poder hacerlo conectado a muchas otras máquinas.
Tolerancia de fallas.:los sistemas de archivos cumplan con este requisito, deberá existir o implementarse una consistente infraestructura de hardware lo cual permita a los sistemas ser realmente confiables y seguros en cuanto a tiempo de funcionamiento efectivo se refiere.
PASCUAL D'AGOSTO C.I 19986107
cunado hablamos de las tendencias de sistema de archivo distribuidos, ya que todo tiempo desde que tenemos uso de rason nuestro entorno esta ligado a los sistemas distribuidos ya que dependemos casi en su totalidad. para realizar actividades. y así como emos hablado en las clases anteriores es el ambiente que nos rodea y se desempeñan por ejemplo en los bancos, en las oficinas, en la medicina, en la informática entre otros.
JOSÈ GUARDIA
La visión tradicional de los sistemas de información en general, y de los sistemas distribuidos en particular, está cambiando rápidamente. Este cambio está siendo impulsado en parte por una industria del software que está madurando a grandes pasos, y en parte por la revolución de las tecnologías de la información. Este cambio ha resultado en la demanda por parte de numerosos dominios de aplicación de servicios de información con patrones de presentación e interacción homogéneos, con una arquitectura software abierta y con alcance global. Así, los nuevos sistemas de información tendrán un marcado carácter cooperativo y deberán ser capaces de interactuar sin problemas con una gran variedad de fuentes de datos y aplicaciones legadas independientes, que ejecutan sobre plataformas heterogéneas y redes de información distribuidas. Los metadatos desempeñarán un papel crucial a la hora de describir los contenidos de tales fuentes de datos y las aplicaciones, y de facilitar su integración. El significado de los datos deberá hacerse explícito y estar disponible, en un formato formal y procesable por el software, junto con los datos. En este sentido, los avances tecnológicos más significativos vendrán dados no tanto por la evolución independiente de las diversas tecnologías existentes, como por su evolución conjunta hacia una tecnología consistente y coherente adecuada para construir y gestionar los nuevos sistemas de información cooperativos.
JOSÈ GUARDIA
La visión tradicional de los sistemas de información en general, y de los sistemas distribuidos en particular, está cambiando rápidamente. Este cambio está siendo impulsado en parte por una industria del software que está madurando a grandes pasos, y en parte por la revolución de las tecnologías de la información. Este cambio ha resultado en la demanda por parte de numerosos dominios de aplicación de servicios de información con patrones de presentación e interacción homogéneos, con una arquitectura software abierta y con alcance global. Así, los nuevos sistemas de información tendrán un marcado carácter cooperativo y deberán ser capaces de interactuar sin problemas con una gran variedad de fuentes de datos y aplicaciones legadas independientes, que ejecutan sobre plataformas heterogéneas y redes de información distribuidas. Los metadatos desempeñarán un papel crucial a la hora de describir los contenidos de tales fuentes de datos y las aplicaciones, y de facilitar su integración. El significado de los datos deberá hacerse explícito y estar disponible, en un formato formal y procesable por el software, junto con los datos. En este sentido, los avances tecnológicos más significativos vendrán dados no tanto por la evolución independiente de las diversas tecnologías existentes, como por su evolución conjunta hacia una tecnología consistente y coherente adecuada para construir y gestionar los nuevos sistemas de información cooperativos.
Jose Blanco C.I 18803442
IMPLEMENTACION DE UN SISTEMA DE ARCHIVO DISTRIBUIDO.
La Era de la Informática ha sufrido diversos cambios desde que apareciera allá por los años 40’. Era una época en la que a nadie se le hubiera ocurrido la loca idea de tener una computadora en casa, ya que éstas en su comienzo consistían en un gran conjunto de tubos de vacío y consolas de gran tamaño que solo podían ser ubicadas en enormes salas con un acondicionamiento especial para su mejor funcionamiento. Sin mencionar que su adquisición era solamente apta para las grandes billeteras de la época.
La Interfaz del Servicio de Archivos
Un archivo es una secuencia de bytes sin interpretación alguna. Esto quiere decir que el contenido y estructura de un archivos es interpretado por el software de aplicación mas no por el sistema operativo sobre el que se está trabajando.
Un archivo se caracteriza por tener atributos, tales como: el propietario, el tamaño, la fecha de creación y el permiso de acceso.
La utilidad del servicio de archivos consiste en proporcionar una adecuada administración de los atributos, definidos por el usuario, que estas poseen. Lo más común es encontrar algunos sistemas avanzados que permitan modificarlos después de sus creación, pero en algunos sistemas distribuidos las únicas operaciones que pueden realizarse sobre un archivo es CREATE y READ (Crear y Leer). Es decir, una vez creado el archivo no puede modificarse. A este tipo de archivos se les denomina archivos inmutables.
En general, los sistemas de archivos distribuidos proporcionan la réplica de archivos como servicio a sus clientes. Es decir, se dispone de varias copias de algunos archivos, donde cada copia está en un servidor de archivos independiente. Este servicio de réplica se brinda por diversa razones, a continuación presentamos las principales razones:
Aumentar la confiabilidad al disponer de respaldos independientes de cada archivo. Es decir, si un servidor falla o se pierde permanentemente, no se pierden los datos.
Permitir el acceso al archivo aunque falle un servidor de archivos. Si un servidor falla esto no debe ocasionar que el sistema se detenga.
Repartir la carga de trabajo entre varios servidores. Con varios archivos duplicados en dos o más servidores, se puede utilizar el que tenga menor carga.
Jose Blanco C.I 18803442
TENDENCIA EN LOS SISTEMAS DE ARCHIVOS DISTRIBUIDOS.
El sistema distribuido de archivos permite a los programas almacenar y acceder a archivos remotos del mismo modo que si fueran locales, permitiendo a los usuarios que accedan archivos desde cualquier computador.
es aquel que permite acceder a los grandes volúmenes de información de los grandes servidores desde los computadores personales o convencionales y desde otros servidores.
a principal solución que adoptada por las pequeñas empresas es contar con Novell Netware en un servidor 486 o superior y acceder a los archivos desde máquinas similares.Entre los sistemas de archivos distribuidos más populares que existen en la actualidad, tenemos los que nos proporciona Netware, tales como:
Remote Filke Sharing (RFS en UNIX)
Network File System (de Sun Microsystems)
Andrew File System (AFS)
Es un servidor de red e Internet, es un cadete que le pedís “lleva o trae esto”, y en lo más rápido que puede lo hace, nada mas
Para los que trabajan en cyber, saben que uno de los problemas más importantes para los dueños, es la facturación, sí una maq. No funciona no factura, pero si el que falla es el server, nada factura!!!
Resumiendo, que estamos buscando, algo que lleve y traiga, eficiente, rápido, seguro, que no se distraiga en otra función, no se quede dormido, no se rompa, y nos sea lo mas barato posible, quien reúne todo esto, un simple 486, con lo mínimo necesario
Este server es muy eficiente y muy económico a nivel del mercado es mas se puede construir uno con piezas de pc viejas y ensanblarlas todas por medio de un sistema muy fasil y completo para la distribución del mismo.
Los sistemas de cómputo no presentan tolerancia a fallas. Es común escuchar en las agencias bancarias la frase: "No hay sistema", por lo que tomamos este hecho como algo absolutamente normal. Salvo algunos sistemas especializados como los que se utilizan para el control de tráfico aéreo, otros sistemas no presentan este comportamiento que debería ser el óptimo.Para que los sistemas de archivos cumplan con este requisito, deberá existir o implementarse una consistente infraestructura de hardware lo cual permita a los sistemas ser realmente confiables y seguros en cuanto a tiempo de funcionamiento efectivo se refiere.
Carlos Guevara
C.I. 20.561.124
Ok como practicamente el nombre lo dice un sistema distribuido d archivo... es el q conciste en transmitir archivo o datos dentro de sus servidores facilitando asi cierta informacion para los usuarios con acceso a los mismos, estos permanecen en unos servidores remotos q se encargan de Organizar, Almacenar , y nominar dicha informacion
http://ais-sistemasdistribuidos.blogspot.com/p/blog-page.html
Eleazar Méndez C.I 16.340.161
SISTEMAS DISTRIBUIDOS DE ARCHIVOS
En un sistema distribuido es importante distinguir entre los conceptos de servicio de archivos y el servidor de archivos.
El servicio de archivos:
Es la especificación de los servicios que el sistema de archivos ofrece a sus clientes.
Describe las primitivas disponibles, los parámetros que utilizan y las acciones que llevan a cabo.
Define precisamente el servicio con que pueden contar los clientes sin decir nada respecto de su implantación.
El despachador (servidor) de archivos:
Es un proceso que se ejecuta en alguna máquina y ayuda con la implantación del servicio de archivos.
Puede haber uno o varios en un sistema.
Los clientes no deben ser conscientes de la forma de implantar el sistema de archivos:
No precisan conocer el número de servidores de archivos, su posición o función.
Deberían ver al sistema distribuido de archivos como un sistema de archivos normal de uniprocesador.
Generalmente un servidor de archivos es un proceso del usuario (a veces del núcleo) que se ejecuta en una máquina:
Un sistema puede contener varios servidores de archivos, cada uno con un servicio distinto:
Ej.: un sistema con un servidor de archivos en “UNIX” y otro en “DOS”.
Cada proceso usuario utilizaría el servidor apropiado.
Eleazar Méndez C.I 16.340.161
Tambien tenemos los sistemas de archivos basados en cluster:
*Distribución de un archivo entre varios servidores.
„* Técnicas de Distribución de Archivos: indican cómo se puede distribuir un archivo a través de
múltiples servidores.
„* Distribuyendo un archivo grande entre varios servidores es posible buscar sus diferentes partes en paralelo.
*Esta organización sólo funciona bien si el acceso a los datos es en paralelo. Se requiere que los datos tengan una estructura muy regular (e.j. una matriz densa, registros de un mismo
tipo).
„* Si se trata de archivos con tipos irregulares de datos o muchos tipos de estructuras de datos la distribución de archivos puede no ser una herramienta efectiva. En este caso lo mejor es
guardar archivos completos en diferentes servidores.
Ejemplo: Google File System
„* Un sistema de archivos distribuido para grandes centros de datos.
„* Compañías como Google y Amazon ofrecen servicios a clientes WEB cuyo resultado son lecturas y actualizaciones de un número masivo de archivos distribuidos a través de decenas de miles de computadoras. En estos entornos es
de esperarse que en cualquier momento falle
una computadora.
Eleazar Méndez C.I 16340161
TENDENCIAS DE LOS SISTEMAS DE ARCHIVOS DISTRIBUIDOS
Arquitectura Multiprocesadores
Las Arquitectura Multiprocesadores, son como su nombre lo indica las que se encuentran basadas en el uso de dos o mas procesadores, los cuales tienen como objetivo la resolución de las tareas que se les asigna. A pesar de las grandes mejoras acaecidas en monoprocesadores para algunas aplicaciones no es suficiente, la solución pueden ser los sistemas multiprocesadores: Solución más sencilla, natural y con mejor coste-prestaciones, las mejoras en microprocesadores cada vez son más complejas: cada avance implica crecer en complejidad, potencia y superficie. Lenta pero clara mejora en el software, que permite explotar el paralelismo, las arquitecturas actuales son muy diversas: hay más investigación que resultados definitivos.
Clasificación de Flynn
Fue diseñada para dar una pequeña clasificación para estas arquitecturas, contando con una globalización de características con las cuales se englobaron, distingue entre distintos tipos de arquitecturas paralelas analizando el flujo de instrucciones y el flujo de datos:
SISD: Arquitectura Von Neuman clásica.
SIMD: Existe una única unidad de control que busca, decodifica y entrega una sola instrucción a un conjunto de unidades de proceso que operan sobre diferentes conjuntos de datos. Se denominan arquitecturas vectoriales.
MISD: Un solo flujo de datos sobre el que operan varias unidades funcionales. No hay implementaciones.
MIMD: Varios procesadores trabajando de forma independiente sobre distintos conjuntos de instrucciones y/o datos.
La unidad de ejecución es el proceso: cada procesador ejecuta un flujo de instrucciones independiente, pero los procesos pueden resultar costosos en tiempo y memoria. Una alternativa es utilizar threads (hilos de ejecución).
Threads: Rutinas concurrentes que comparten el espacio de memoria y las variables globales su creación y destrucción es tres órdenes de magnitud menos costosa que la de un proceso por tratarse de entidades más sencillas. Sincronización a través de variables globales y son muy importantes para solapar cómputo con operaciones de I/O o comunicaciones.
Hasta ahora nos habíamos centrado en el paralelismo a nivel de instrucción (grano fino): La unidad de ejecución paralela es la instrucción, el hardware detecta instrucciones independientes y planifica su ejecución en paralelo. Pero los multiprocesadores explotan el paralelismo a nivel de proceso (grano grueso): En este caso el paralelismo se detecta a alto nivel, por parte del compilador y del sistema operativo, aunque también puede programarse de forma explícita. Cada thread puede abarcar desde un proceso completo e independiente hasta una única iteración de un bucle.
http://segaland.blogspot.com/
Eleazar Méndez C.I 16340161
IMPLEMENTACION DE SISTEMAS DE ARCHIVOS DISTRIBUIDOS
Los archivos podrían implantarse como parte de un sistema operativo distribuido, haciendo el papel de una capa de software cuya tarea es administrar la comunicación entre los sistemas operativos y los sistemas de archivos convencionales. Las características propias de un SAD son la multiplicidad y autonomía de los clientes y servidores en el sistema.
La implantación de un sistema distribuido de archivos incluye aspectos tales como:
*El uso de archivos
Generalmente se utiliza antes de implantar un sistema de archivo, y primero se realiza un análisis de patrones de uso, para realizar dicho análisis es necesario tomar las siguientes mediciones: Estática (Representan una toma instantánea del sistema en un momento dado y comprende la distribución de tamaño de archivo) y Dinámica (Registra toda las operaciones que modifican el sistema de archivos)
*Estructura del Sistema
En algunos sistemas se cumple que:
Todas las máquinas ejecutan el mismo software básico.
Una máquina que desee dar servicio de archivos lo puede hacer:
Debe exportar los nombres de los directorios seleccionados, para que otras máquinas los puedan acceder.
En otros sistemas el servidor de archivos y el de directorios son solo programas del usuario, y se puede configurar un sistema para que ejecute o no el software de cliente o servidor en la misma máquina.
También los clientes y servidores podrían ser equipos distintos en hardware y software
En este caso:
El cliente envía un nombre simbólico al servidor de directorios.
El servidor de directorios regresa el nombre en binario (ej.: máquina + nodo_i) que comprende el servidor de archivos.
Es posible que una jerarquía de directorios se reparta entre varios servidores.
El servidor que recibe un nombre binario que se refiere a otro servidor puede:
Indicar al cliente el servidor que tiene el archivo buscado, para que el cliente lo busque.
Enviar la solicitud al siguiente servidor y no contestar.
*Ocultamiento
En un sistema cliente - servidor, cada uno trabaja con su memoria principal y un disco, existen cuatro lugares donde se pueden almacenar los archivos o partes de ellos: el disco del servidor, la memoria principal del servidor, el disco del cliente (si existe), la memoria principal del cliente.
Si los archivos se almacenan en el disco de los servidores estos disponen de abundante espacio, se les podría acceder de todos los clientes aunque tiene sus desventajas ya que antes de que un cliente pueda leer un archivo se lo debe transferir del disco del servidor a la memoria principal del servidor y a su vez de la memoria principal del servidor a la memoria principal del cliente, a través de la red. Todo esto se puede mejorar ocultando (conservando) los archivos de más reciente uso en la memoria principal del servidor y así un cliente que lea un archivo ya presente en el caché del servidor elimina la transferencia del disco.
*Replica
Generalmente los sistemas distribuidos de archivos proporcionan la réplica de archivos como un servicio, ya que cada copia esta en un servidor de archivos independiente.
Esta es utilizada por que aumenta la confiabilidad al disponer de respaldos independientes de cada archivo, además que permite el acceso a archivos aún cuando falle un servidor de archivos y reparte la carga de trabajo entre varios servidores.
Luimar Conde; C.I:18.967.298
TENDENCIA A LOS SISTEMAS DE ARCHIVOS DISTRIBUIDOS.
*Hardware Reciente:
Las Memorias: Actualmente se dispone de grandes cantidades de gigabytes de memoria RAM, solo que ellas siguen siendo volátiles.
Discos Ópticos: Actualmente los conseguimos regrabables, pudiendo usarlos más de una vez, para esto se utiliza la tecnología Magnéto Óptica(MO).
*Escalabilidad: Propone que cualquier computador individual ha de ser capaz de trabajar independientemente como un sistema de archivos distribuido, pero también debe poder hacerlo conectado a muchas otras máquinas. Sin embargo, el tipo de red que se utilice condiciona el rendimiento del sistema. Por ello, como aún no se cuenta con un ancho de banda mayor a veces la transferencia de archivos se hace lenta.
* Tolerancia de fallas: En la actualidad los sistemas tienden a caerse muy a menudo, ya que los equipos no presentan la tolerancia de fallas, salvo los equipos que se ocupan de controlar el tráfico aéreo. Para que esto pueda implementarse deben existir un conjunto de hardware que sena confiables en cuanto a su funcionamiento.
http://ais-sistemasdistribuidos.blogspot.com/p/blog-page.html
Francisco Parada
19.653.147
Bueno veo que ya han dicho de todo un poco sobre el tema, quiero destacar una manera más clara de que es un Sistema de Archivos y hablo más que todo sobre: El cliente Torrent para que sea más sencillo de entender se trata de un sistema de archivos que se comparte al público por medio de un servidor o en dado caso , que es muy común entre varias pc que posean dicho archivos a solicitar, ejemplo: “Yo descargo un archivo especifico pero solo está alojado en una página (servidor, hot), solicito la información y empiezo a descargarlo, luego si otros usuarios o clientes de este sistema solicitan el mismo archivo que yo, lo que estaría haciendo o sirviendo yo como otro usuario mas es compartir lo que llevo descargando a los que solicitaron dicho archivo al servidor (pagina), y si por ende ya yo tengo este archivo en mi máquina, el papel que conllevaría mi maquina seria de una especie de servidor donde daría a compartir el archivo solicitado por los otros usuarios, para que también lo descarguen, cabe destacar que este archivo seria compartido solo si esta al acceso público”.
Deyncer Arana C.I. 19472050
Introducción al sistema de archivos distribuido
Con el sistema de archivos distribuido (DFS, Distributed File System), los administradores de sistemas pueden facilitar a los usuarios el acceso y la administración de archivos que están físicamente distribuidos en una red. DFS le permite presentar a los usuarios archivos distribuidos por múltiples servidores de modo que parezca que residen en un solo sitio de la red. Los usuarios ya no tendrán que saber y especificar la ubicación física real de los archivos para tener acceso a éstos.
Por ejemplo, si posee material de mercadotecnia distribuido en varios servidores de un dominio, puede utilizar DFS para hacer que parezca que todo el material reside en un único servidor. De esta forma se evita que los usuarios deban tener acceso a varias ubicaciones de la red para buscar la información que necesitan.
Razones para utilizar DFS
Debe considerar la posibilidad de implementar DFS si:
Espera agregar servidores de archivos o modificar ubicaciones de archivos.
Los usuarios que tienen acceso a los destinos están distribuidos por uno o varios sitios.
La mayor parte de los usuarios requiere acceso a varios destinos.
El equilibrio de la carga del servidor puede mejorarse si se redistribuyen los destinos.
Los usuarios requieren un acceso ininterrumpido a los destinos.
La organización dispone de sitios Web para uso interno o externo.
Tipos de DFS
Puede implementar un sistema de archivos distribuido de dos formas: como un sistema de archivos distribuido de raíz independiente o como un sistema de archivos distribuido de dominio.
Acceso a destinos DFS desde otros equipos
Además del componente DFS de servidor de la familia Windows Server 2003, hay un componente DFS de cliente. El cliente DFS almacena en caché una referencia a la raíz DFS o al vínculo DFS durante un período específico, definido por el administrador.
El componente cliente DFS se ejecuta en diferentes plataformas Windows. Para obtener información acerca de las versiones de cliente DFS y las plataformas asociadas, vea Compatibilidad con plataformas.
María Arrioja
C.I. 20.877.303
Sistema distribuido de archivos:
Es un sistema de archivos de computadoras que tiene como funcion la compraticion de los recursos, archivos, entre ellos
(el sistema de archivos NFS, AFS, CIFS.)
Uno de los aspectos del sistema distribuidos de archivos es el servidor de archivos que es un proceso que se ejecuta
en una maquina y ayuda a implementar el servicio de archivos, el cual permitira a los procesos el acceso transparente y
eficiente de archivos que permanecen en los servidores remotos del mismo modo como si fueran locales.
La implantación de un sistema distribuido de archivos incluye aspectos tales como: El uso de los archivos,
la estructura del sistema, el ocultamiento, la duplicación o réplica, .el control de la concurrencia.
jorge martinez C.I 20.355.533
Sistema distribuido de archivos:su principal función es la de almacenar los programas y los datos y tenerlos disponibles cuando se le haga el llamado.
Jorge Bolivar C.I. 19.725.740
En cuanto a las tendencias en los sistemas de archivos distribuidos observamos las características esenciales que ya hemos venido tocando en clase, como lo es la tolerancia a fallos, la escalabilidad y los usuarios molives que es una característica que permite este avance tecnológico, el cual es muy interesante ya que existen usuarios que no todo el tiempo estan conectados a una estación de servicio asi que esto le permite el manejo del sistema por medio de una laptop, notebook o telefonos inteligentes..
Entre los sistemas de archivos distribuidos más populares que existen en la actualidad, tenemos los que nos proporciona Netware, tales como:
*Remote Filke Sharing (RFS en UNIX)
*Network File System (de Sun Microsystems)
*Andrew File System (AFS)
Netware: Es una de las plataformas de servicio más fiable para ofrecer acceso seguro y continuado a la red
jorge martinez C:I 20.355.355
TENDENCIA EN LOS SISTEMAS DE ARCHIVOS DISTRIBUIDOS:esto lleva acabo las siguiente función,en la que se dispone de varias copias de algunos archivos, donde cada copia está en un servidor de archivos de forma independiente.
ZORELI CANELON CI:23663662
El principal propósito de los sistemas distribuidos es soportar la misma clase de comportamiento cuando los archivos están dispersos físicamente entre los diversos sitios de un sistema distribuido. La utilización efectiva de la memoria caché en el cliente para conseguir iguales Prestaciones o mejores que las de los sistemas de archivos locales; El mantenimiento de la consistencia entre múltiples copias de archivos en las cachés de los clientes cuando son actualizadas, la recuperación después de un fallo en el servidor o en el cliente, un alto rendimiento en la lectura y escritura de archivos de todos los tamaños.
El verdadero servicio de archivos: Realiza operaciones en los archivos individuales: lectura, escritura, adición. El servicio de directorios: Crea y maneja directorios, añade y elimina archivos de los directorios, etc.
Tenemos la clasificacion en Modelo carga/descarga: operaciones: Lectura: La lectura consiste en transferir un archivo de uno de los servidores de archivos al cliente Escritura: consiste en una transferencia como la lectura, pero en sentido contrario. y Modelo de acceso remoto: Los archivos son ejecutados con todas las funciones en los servidores y no en los clientes.
Jose Araque
C.I. 20.453.265
Un Sistema de Archivos Distribuido tiene como principal objetivo compartir los datos entre los usuarios ofreciendo transparencia, a su vez, se busca un alto grado de disponibilidad, buen rendimiento comparable a un sistema tradicional y además que sea tolerante a fallos.
Generalmente se usa el modelo cliente-servidor; En primer lugar, el servicio de archivos se encarga de las operaciones de los archivos (LECTURA, ESCRITURA), y en segundo lugar el servicio de directorios que se encarga de realizar operaciones con los mismos(CREAR, y ADMINISTRAR DIRECTORIOS) ademas de añadir y eliminar archivos en estos.
En lo personal me encanto esa cita que encontre investigando:
"Un archivo es una secuencia de bytes con algún significado especial para el usuario."
En algunos sistemas de archivos se maneja el concepto de inmutabilidad, que consiste en que un archivo sólo puede ser creado y leído, pero no modificado. Esto facilita el soporte del ocultamiento y la replicación de archivos, puesto que se eliminan los problemas de actualización de copias remotas.
Los servicios de archivos se pueden dividir en dos tipos, según si soportan un modelo de carga/descarga o un modelo de acceso remoto.
En el modelo de carga/descarga, el servicio de archivos proporciona dos operaciones principales: lectura de archivo y escritura del mismo. La lectura transfiere todo el archivo de los servidores de archivos al cliente solicitante. La escritura transfiere todo el archivo del cliente de regreso al servidor. El modelo conceptual es el traslado de archivos completos en alguna de las direcciones. La interfaz es sencilla, y la transferencia completa de archivos es muy eficiente.
El modelo de acceso remoto se proporciona un gran número de operaciones para abrir y cerrar archivos, leer y escribir partes de archivos, moverse a través de un archivo (lseek), etc. Aquí el sistema de archivos se ejecuta en los servidores y nunca se trasladan los archivos a los clientes. Su ventaja es que no necesita mucho espacio en los clientes y la cantidad de información transferida es mínima.
Fuentes:
http://archivosdistribuidos.blogspot.com/2009/01/diseo-de-los-sistemas-distribuidos-de.html
Zoreli Canelon
C.I. 23.663.662
Un sistema de gestión de archivos le permite al usuario con acceso a un archivo, que él mismo pueda manejar el archivo bloqueandolo o bloqueando sus archivos individuales. Si no se considera ninguna de estas dos opciones, entonces se analizará aspectos de exclusión mutua e interbloqueo.
Para que los modelos se cumplan debe existir u servicio de directorios que proporciona las operaciones para crear, eliminar directorios, nombrar o cambiar archivos dentro de directorios, y mover archivos de un directorio a otro. Los directorios pueden contener subdirectorios y éstos también pueden contener subdirectorios, lo que se conoce como sistema jerárquico de archivos o árbol de directorios.
En ciertos sistemas es posible crear enlaces o apuntadores a un directorio arbitrario desde cualquier directorio, con lo que se pueden crear grafos arbitrarios, que son más poderosos que los árboles. La distinción entre árboles y grafos es de particular importancia en sistemas distribuidos.
Fuentes:
http://www.oocities.org/siliconvalley/park/9210/Tema8.html
Brannigan Acevedo
CI 17.954.637
según wikipedia.
Un sistema de archivos distribuido o sistema de archivos de red es un sistema de archivos de computadoras que sirve para compartir archivos, impresoras y otros recursos como un almacenamiento persistente en una red de computadoras. El primer sistema de este tipo fue desarrollado en la década de 1970, y en 1985 Sun Microsystems creó el sistema de archivos de red NFS el cual fue ampliamente utilizado como sistema de archivos distribuido. Otros sistemas notables utilizados fueron el sistema de archivos Andrew (AFS) y el sistema Server Message Block SMB, también conocido como CIFS.
Interesante la informacion obtenida de wikipedia, segun mi opinion Cuando diseñamos sistemas distribuidos de archivos tenemos que cubrir cada uno de los puntos posibles de fallo con infraestructura o servicios redundantes. Los sistemas de archivos (filesystem en inglés), estructuran la información guardada en una unidad de almacenamiento (normalmente un disco duro) de una computadora, que luego será representada ya sea textual o gráficamente utilizando un gestor de archivos. La mayoría de los sistemas operativos poseen su propio sistema de archivos.
Lo habitual segun mi investigacion es utilizar dispositivos de almacenamiento de datos que permiten el acceso a los datos como una cadena de bloques de un mismo tamaño, a veces llamados sectores, usualmente de 512 bytes de longitud. El software del sistema de archivos es responsable de la organización de estos sectores en archivos y directorios y mantiene un registro de qué sectores pertenecen a qué archivos y cuáles no han sido utilizados.
fuentes:
http://www.tldp.org/pub/Linux/docs/ldp-archived/system-admin-guide/translations/es/html/ch06s08.html
http://es.wikipedia.org/wiki/Sistema_de_archivos_distribuido
Buenas noches disculpen la tardanza soy Carlos Guevara Grupo Nº8 Y se da inicio al tema: Memoria compartida Distribuida
*Definición.
*Modelos de Consistencia.
*Memoria Compartida Distribuidas con base en paginas
*Memoria Compartida Distribuida con Variables.
*Memoria Compartida Distribuida basada en objetos.
Carlos guevara, te hemos estado buscando la profesora y nosotros necesitamos comunicarnos contigo.
Somos el grupo 8.
Jose pacheco
Angel Mora
Brannigan Acevedo
comunicate hoy por favor a este num.
04144915779.
Diana Carolina Orta Laya
CI: 16.714.060
*Modelo de Consistencia:
Es en realidad un tratado entre ciertos procesos y el alamacenamiento de información o datos.
Los modelos de consistencia deben cumplir las siguientes propiedades:
*Si los procesos acuerdan obedecer ciertas reglas, el almacenamiento promete trabajar correctamente.
*Normalmente una operación de lectura debiese retornar la última actualización del dato.
*Los modelos pueden ser:
-Centrados en los datos
-Centrados en el cliente
En las memorias compartidas distribuidas es importante tener presente un modelo de consistencia, puesto que están relacionados entre sí formando un conjunto sólido, donde dicho modelo establece la forma en que se hacen visibles a los distintos nodos del sistema las actualizaciones hechas a la memoria compartida mediante la estructura de todos los modelos, los cuales son cruzados entre sí para revisar la consistencia de los mismos para una especificación balanceada o equilibrada, con el objetivo de mejorar el rendimiento y la seguridad especificando las garantías de consistencia que un sistema MCD realiza sobre los valores que los procesos leen desde los objetos, dado que en realidad acceden sobre una réplica de cada objeto y que múltiples procesos pueden actualizar los objetos.
Diana Carolina Orta Laya
CI: 16.714.060
*Memoria compartida basada en variables.
En estas las comunicaciones entre los diferentes procesadores se realizan a través de accesos a un espacio compartido de direcciones. Entre sus principales ventajas se encuentra la facilidad de programación.
Estas se diferencian de la DSM (MEMORIA COMPARTIDA DISTRIBUIDA
) basadas en paginas ya que estas son un método más estructurado consiste en compartir solo ciertas variablesestructuradas de datos necesarias para más de un proceso, el problema pasa de realizar lapaginación sobre la red a la forma de mantener una base de datos distribuida, en formaduplicada consiste en las variables compartidas, pueden aplicarse varias técnicas que estasconducen con frecuencia a mejoras esenciales al proceso. El uso de variables compartidascontroladas de manera individual proporcionan una oportunidad para no compartir fácilmente.
Fuentes:
http://memoriascompartidasdistribuidas.blogspot.com/2009/01/memoria-compartida-basada-en-variables.html
-http://www.buenastareas.com/ensayos/Memoria-Compartida-Distribuida-Basada-En-Variables/4219748.html
JAVIER JESUS BARROSO CORTEZ 20.876.987
MEMORIA COMPARTIDA DISTRIBUIDA: es aquella utilizada para compartir datos entre computadores que no comparten memoria física.
JAVIER JESUS BARROSO CORTEZ 20.876.987
MODELOS DE CONSISTENCIA: este modelo consiste en un contrato entre los procesos que acceden a los datos y almacén de datos, donde este contrato consiste en donde los procesos siguen ciertas reglas, el almacén de datos proporciona ciertas garantías.
JAVIER JESUS BARROSO CORTEZ 20.876.987
MEMORIA COMPARTIDA DISTRIBUIDA CON BASE EN PAGINAS: El esquema de DSM propone un espacio de direcciones de memoria virtual que integra la memoria de todas las computadoras del sistema, y su uso se realiza mediante paginación. Las páginas quedan restringidas a estar necesariamente en un único nodo. Cuando un programa intenta acceder a una posición virtual de memoria, se comprueba si esa página se encuentra de forma local. Si no se encuentra, se provoca un fallo de página, y el sistema operativo solicita la página al resto de nodos. El sistema funciona de forma análoga al sistema de memoria virtual tradicional, pero en este caso los fallos de página se propagan al resto de ordenadores, hasta que la petición llega al nodo que tiene la página virtual solicitada en su memoria local. A primera vista este sistema parece más eficiente que el acceso a la memoria virtual en disco, pero en la realidad ha mostrado ser un sistema demasiado lento en ciertas aplicaciones, ya que provoca un tráfico de páginas excesivo.
http://ais-sistemasdistribuidos.blogspot.com/p/tema-8.html
jAVIER JESUS BARROSO CORTEZ 20.876.987
MEMORIA COMPARTIDA DISTRIBUIDA CON VARIABLES: esta consiste en compartir sólo ciertas variables y estructuras de datos necesarias para más de un proceso,Donde uno de los aspectos más importantes a tratar de estos sistemas es el de si las variables compartidas deben o no duplicarse.
JAVIER JESUS BARROSO CORTEZ 20.876.987
MEMORIA COMPARTIDA DISTRIBUIDA BASADA EN OBJETOS:esta busca el acceso a datos por medio de la encapsulación de la información y repartida a través de la red, estos objetos serán definidos por el Programador y las CPU´s cambiaran los estados según procedan con los accesos.
jorge martinez C.I 20.355.533
memorias compartidas distribuidas:son aquellas memorias que son comparten y intercambian datos entre varias computadoras que no poseen memoria física...
jorge martinez C.I 20.355.533
modelos de consistencia: son simplemente un tratado que se lleva a cabo entre los procesos y almacenamiento de información de un computador
Luimar Conde; C.I: 18.967.298
Memoria Compartida Distribuida: representan la creación hibrida de dos tipos de computación paralelos: la memoria distribuida en sistemas multiprocesador y los sistemas distribuidos. Ellos proveen la abstracción de memoria compartida en sistemas con memorias distribuidas físicamente y consecuentemente combinan las mejores características de ambos enfoques.
Modelos de Consistencia: adquiere importancia en los sistemas DSM que replican el contenido de la memoria compartida mediante su almacenamiento en las cachés de computadores separados. Cada proceso tiene un gestor de réplicas local, el cual está encargado de mantener copias en caché para los objetos. En la mayor parte de las implementaciones, los datos se leen desde las réplicas locales por cuestiones de eficiencia, pero las actualizaciones deben propagarse al resto de gestores de réplica.
Memoria Compartida Distribuida con base en páginas: El esquema de DSM propone un espacio de direcciones de memoria virtual que integra la memoria de todas las computadoras del sistema, y su uso se realiza mediante paginación. Las páginas quedan restringidas a estar necesariamente en un único nodo. Cuando un programa intenta acceder a una posición virtual de memoria, se comprueba si esa página se encuentra de forma local. Si no se encuentra, se provoca un fallo de página, y el sistema operativo solicita la página al resto de nodos. El sistema funciona de forma análoga al sistema de memoria virtual tradicional, pero en este caso los fallos de página se propagan al resto de ordenadores, hasta que la petición llega al nodo que tiene la página virtual solicitada en su memoria local. Este es un sistemas que se ha mostrado ser un sistema demasiado lento en ciertas aplicaciones, ya que provoca un tráfico de páginas excesivo.
Memoria Compartida Distribuida con Variables: Uno de los aspectos más importantes a tratar de estos sistemas es el de si las variables compartidas deben o no duplicarse, y de qué manera, parcial o total. Si se duplicasen existiría más potencial que en un sistema DSM basado en páginas, en términos de actualización, dado que las escrituras en las variables compartidas individuales se pueden aislar. Dos de los ejemplos más interesantes de este tipo de sistemas son el Munin y el Midway; el primero se basa en una implantación software de la consistencia de liberación, y el segundo consiste en compartir las estructuras de datos individuales, permitiendo que los programas multiprocesador existentes y los nuevos se ejecuten de manera eficiente en las multicomputadores, con ligeros cambios de código.
http://ais-sistemasdistribuidos.blogspot.com/p/tema-8.html
Luimar Conde; C.I: 18.967.298
Memoria Compartida Distribuida basada en objetos: Se implementa utilizando uno de los siguientes métodos o bien una combinación de ellos, hardware especializado, memoria virtual paginada convencional o middleware:
*Hardware: las arquitecturas multiprocesador de memoria compartida basadas en una arquitectura NUMA (por ejemplo, Dash [Lenoski y otros 1992] y PLUS [Bisiani y Ravishankar 1990] se basan en hardware especializado para proporcionar a los procesadores una visión consistente de la memoria compartida. Gestionan las instrucciones de acceso a memoria LOAD y STORE de forma que se comuniquen con la memoria remota y los módulos de caché según sea necesario para almacenar y obtener datos. Esta comunicación se realiza sobre sistemas de interconexión de alta velocidad similares a una red.
*Memoria virtual paginada: muchos sistemas, incluyendo Ivy [Li y Hudak 1989], Munin [Carter y otros 1991], Mirage [Fleisch y Popek 1989], Clouds [Dasgupta y otros 1991], Choices [Sane y otros 1990], COOL (Lea y otros 1993] y Mether [Minnich y Farber 1989], implementan DSM como una región de memoria virtual que ocupa el mismo rango de direcciones en el espacio de direcciones de cada proceso participante. Este tipo de implementación normalmente sólo es factible sobre una colección de computadores homogéneos con formatos de datos y de paginación comunes.
*Middleware: algunos lenguajes del tipo de Orca [Bal y otros 1990] y middleware como Linda [Carriero y Gelernter 1989] junto con sus derivados JavaSpaces y TSpaces [Wyckoff y otros 1998] proporcionan DSM sin necesidad de soporte hardware o de paginación, de una forma independiente de la plataforma. En este tipo de implementación, la computación se implementa mediante la comunicación entre instancias del nivel de soporte de usuario en los clientes y los servidores. Los procesos realizan llamadas a este nivel cuando acceden a datos en DSM.
Memoria Compartida Distribuida (DSM) es fundamentalmente reconocida como uno de los más utilizados para la creación de sistemas escalables, de alto rendimiento de sistemas multiprocesador.
De igual manera es una abstracción utilizada para compartir datos entre PCs que no comparten memoria física. Los procesos acceden ala memoria compartida distribuida para leer y actualizar, dentro de sus espacios de direcciones, sobre lo que aparenta ser la memoria interna normal asignada a un proceso. Es como si 1os procesos accedieran a una única memoria compartida, pero de hecho la memoria física está totalmente distribuida.
Un Modelo de Consistencia consiste en un contrato entre los procesos que acceden en los datos y el almacén de datos que estipula ciertas reglas para así proporcionar garantías factibles, es decir si un proceso realiza una operación en read, obtrendra la ultima actualización de datos.
Modelo:
- Existen dos operaciones: write y read.
Wi(x)a: el proceso i realiza write sobre X con valor a
Rj(x)a: el proceso j realiza read sobre Y, obteniendo el valor b.
- Un cliente que accede a los datos, realiza read o write sobre una copia
de los datos.
- Existen múltiples copias de los datos, estructuradas en lo que
se llama almacén de datos.
jose guardia
Memoria compartida distribuida
Los sistemas de memoria compartida distribuida (DSM) representan la creación hibrida de dos tipos de computación paralelos: la memoria distribuida en sistemas multiprocesador y los sistemas distribuidos. Ellos proveen la abstracción de memoria compartida en sistemas con memorias distribuidas físicamente y consecuentemente combinan las mejores características de ambos enfoques. Debido a esto, el concepto de memoria compartida distribuida es reconocido como uno de los enfoques mas atractivos para la creación de sistemas escalables, de alto rendimiento de sistemas multiprocesador.
Memoria compartida basada en páginas
El esquema de DSM propone un espacio de direcciones de memoria virtual que integra la memoria de todas las computadoras del sistema, y su uso se realiza mediante paginación. Las páginas quedan restringidas a estar necesariamente en un único nodo. Cuando un programa intenta acceder a una posición virtual de memoria, se comprueba si esa página se encuentra de forma local. Si no se encuentra, se provoca un fallo de página, y el sistema operativo solicita la página al resto de nodos. El sistema funciona de forma análoga al sistema de memoria virtual tradicional, pero en este caso los fallos de página se propagan al resto de ordenadores, hasta que la petición llega al nodo que tiene la página virtual solicitada en su memoria local. A primera vista este sistema parece más eficiente que el acceso a la memoria virtual en disco, pero en la realidad ha mostrado ser un sistema demasiado lento en ciertas aplicaciones, ya que provoca un tráfico de páginas excesivo.
Una mejora dirigida a mejorar el rendimiento sugiere dividir el espacio de direcciones en una zona local y privada y una zona de memoria compartida, que se usará únicamente por procesos que necesiten compartir datos. Esta abstracción se acerca a la idea de programación mediante la declaración explícita de datos públicos y privados, y minimiza el envío de información, ya que sólo se enviarán los datos que realmente vayan a compartirse.
Memoria compartida basada en objetos
Una alternativa al uso de páginas es tomar el objeto como base de la transferencia de memoria. Aunque el control de la memoria resulta más complejo, el resultado es al mismo tiempo modular y flexible, y la sincronización y el acceso se pueden integrar limpiamente. Otra de las restricciones de este modelo es que todos los accesos a los objetos compartidos han de realizarse mediante llamadas a los métodos de los objetos, con lo que no se admiten programas no modulares y se consideran incompatibles.
VENTAJAS / DESVENTAJAS DE LA MEMORIA DISTRIBUIDA
Ventajas:
Ilusión de una memoria física compartida, sin cuellos de botella.
Escabilidad (podemos extender el sistema sin mucho problema).
Menor costo.
Desventajas:
Topología de red muy importante.
Administración de la red.
IMPLEMENTACION DE UNA MEMORIA DISTRIBUIDA
Acceso compartido a la memoria à comunicación Inter-procesos.
Ningún procesador puede acceder directamente a la memoria de otro procesador à NORMA (NO Remote Memory Access) Systems.
Los procesadores hacen referencia a su propia memoria local. Hay que aumentar software para que, cuando un procesador haga referencia a una página remota, esta página sea recuperada.
El espacio de direccionamiento común es particionado en pedazos.
Cada pedazo es situado en una estación.
Cuando un procesador hace referencia a una pagina no local à "trap" (page fault).
http://procesosprocesadore.tripod.com/
jose guardia
Los sistemas de memoria compartida distribuida (DSM) representan la creación hibrida de dos tipos de computación paralelos: la memoria distribuida en sistemas multiprocesador y los sistemas distribuidos. Ellos proveen la abstracción de memoria compartida en sistemas con memorias distribuidas físicamente y consecuentemente combinan las mejores características de ambos enfoques. Debido a esto, el concepto de memoria compartida distribuida es reconocido como uno de los enfoques mas atractivos para la creación de sistemas escalables, de alto rendimiento de sistemas multiprocesador
https://sites.google.com/site/sistemasoperativospaty/unidad-4/41-configuraciones-memoria-compartida-distribuida
Marianell Perez 19132932
Memoria Compartida Distribuida basada en objetos.
Una alternativa al uso de páginas es tomar el objeto como base de la transferencia de memoria. Aunque el control de la memoria resulta más complejo, el resultado es al mismo tiempo modular y flexible, y la sincronización y el acceso se pueden integrar limpiamente. Otra de las restricciones de este modelo es que todos los accesos a los objetos compartidos han de realizarse mediante llamadas a los métodos de los objetos, con lo que no se admiten programas no modulares y se consideran incompatibles.
Tambien conocida como Distributed Shared Memory DSM
Los sistemas de software DSM también tienen capacidad para organizar la región de memoria compartida de manera flexible. Las aproximaciones basadas en páginas organizan la memoria compartida en páginas de tamaño fijo. Por su parte, las aproximaciones basadas en objetos organizan la región como un espacio abstracto en el que se pueden almacenar objetos compartidos de tamaño variable. El funcionamiento de DSM el espacio de direcciones se divide en páginas, mismas que se distribuyen por todos los nodos. En el momento que una CPU hace referencia a una dirección remota se produce una interrupción, el software de DSM obtiene la página que contiene la dirección y retorna a la instrucción fallida, misma que se ahora se completará con éxito.
Modelos de Consistencia.
Un modelo de consistencia es esencialmente un contrato entre procesos y el almacenamiento de datos. Es decir: si los procesos acuerdan obedecer ciertas reglas, el almacenamiento promete trabajar correctamente. Para mantener el modelo, los compiladores pueden reordenar algunas instrucciones de memoria, y las llamadas a las bibliotecas como pthread_mutex_lock(), encapsular la sincronización necesaria. con cada escritura es necesario actualizar todas las copias, el envío de las páginas por la red provoca que el tiempo de espera aumente demasiado, convirtiendo este método en impracticable
Este blog es de un grupo de estudiantes de nuestra area esta muy bueno lean y lo que no entiendan corroboren con google es algo muy cotidiano
http://ais-sistemasdistribuidos.blogspot.com/p/tema-8.html
Jorge Bolívar C.I. 19.725.740
La Memoria compartida distribuida en sus siglas (DSM)es una creación que representa dos tipos dos tipos de computación paralelos: la memoria distribuida en sistemas multiprocesador y los sistemas distribuidos. Esta creación es utilizada para compartir datos entre computadores que no comparten memoria física.
http://procesosprocesadore.tripod.com/
Francisco Parada
C.I: 19.653.147
Los sistemas de memoria distribuida compartida es el logro de dos clases de computadoras paralelas: los multiprocesadores de memoria compartida y los sistemas de cómputo distribuidos. Estos tienen una abstracción compartida de la memoria en los sistemas cuya memoria físicamente está distribuida, combina las ventajas de ambas. El concepto de memoria distribuida compartida es reconocido como una de los avances más llamativos para diseño de sistemas multiprocesadores de alta gama, a gran escala.
Por ejemplo: Usamos nuestra memoria RAM, con un límite fijo pero nuestra PC puede generar una memoria literalmente “física” llamada memoria virtual o de paginación, que es capaz de extender o aliviar el proceso de la memoria RAM, pero al compartir memoria, nos referimos más que todo a una red y ya algo más digital.
Unas de las ventajas de los Sistema de Memoria Compartida Basada en Objetos son:
- Nace como respuesta a la creciente popularización de los lenguajes orientados por objetos.
- Los datos se organizan y son transportados en unidades de objetos, no unidades de -páginas.
- Es un modelo de programación de DSM de alto nivel.
Zoreli Canelón 23.663.662
Los sistemas con memoria distribuida compartida pueden ser implementados en un sistema operativo, o como una librería de programación y se pueden considerar como extensiones del subyacente de la memoria virtual de la arquitectura. Cuando se implementa en el sistema operativo, tales sistemas son transparentes para el desarrollador; lo que significa que el subyacente memoria distribuida está completamente oculto a los usuarios. En contraste, los sistemas de software DSM implementados en la biblioteca o el nivel de idioma no son transparentes y los desarrolladores lo general tienen que programar de forma diferente. Sin embargo, estos sistemas ofrecen un enfoque más portátil para la implementación del sistema DSM.
La memoria compartida distribuida(DSM):
Es una abstracción utilizada para compartir datos entre computadores que no
comparten memoria física. Los procesos acceden a DSM para leer y actualizar,
dentro de sus espacios de direcciones, sobre lo que aparenta ser la memoria
interna normal asignada a un proceso. Sin embargo, existe un sistema
subyacente en tiempo de ejecución que asegura de forma transparente que
procesos diferentes ejecutándose en computadores diferentes observen las
actualizaciones realizadas entre ellas. Es como si 1os procesos accedieran a
una única memoria compartida, pero de hecho la memoria física está distribuida
Modelo de Consistencia:
La cuestión de la consistencia adquiere importancia en los sistemas DSM que
replican el contenido de la memoria compartida mediante su almacenamiento
en las cachés de computadores separados. Cada proceso tiene un gestor
de réplicas local, el cual está encargado de mantener copias en caché para
los objetos. En la mayor parte de las implementaciones, los datos se leen
desde las réplicas locales por cuestiones de eficiencia, pero las actualizaciones
deben propagarse al resto de gestores de réplica.
El gestor de réplica local se implementa mediante una combinación del middleware
(el nivel DSM en tiempo de ejecución en cada proceso) y del núcleo. Es normal
que el middleware realice la mayor parte del procesamiento DSM. Incluso en
las implementaciones de DSM basadas en páginas, el núcleo normalmente
proporciona únicamente una correspondencia de páginas básica, el
manejo de fallos de página y los mecanismos de comunicación, mientras
que el middleware es responsable de implementar las políticas de
compartición de páginas. Si los segmentos DSM son persistentes,
entonces uno o más servidores de almacenamiento (por ejemplo, servidores
de archivos) actuarán también como gestores de réplicas.
Zoreli Canelon 23.663.662
los modelos de consistencias los nombrare del mas fuerte al mas debil.
CONSISTENCIA CASUAL: La condición a cumplir para que unos datos sean causalmente consistentes es:
• Escrituras que están potencialmente relacionadas en forma causal deben ser vistas por todos los procesos en el mismo orden.
• Escrituras concurrentes pueden ser vistas en un orden diferente sobre diferentes máquinas.
Es permitida con un almacenamiento causalmente consistente, pero no con un almacenamiento secuencialmente consistente o con un almacenamiento consistente en forma estricta.
CONSISTENCIA SECUENCIAL: La consistencia secuencial es una forma ligeramente más débil de la consistencia estricta. Satisface la siguiente condición:
El resultado de una ejecución es el mismo si las operaciones (lectura y escritura) de todos los procesos sobre el dato fueron ejecutadas en algún orden secuencial
a) Un dato almacenado secuencialmente consistente.
b) Un dato almacenado que no es secuencialmente consistente.
CONSISTENCIA DÉBIL: Los accesos a variables de sincronización asociadas con los datos almacenados son secuencialmente consistentes.
Propiedades
No se permite operación sobre una variable de sincronización hasta que todas las escrituras previas de hayan completado.
No se permiten operaciones de escritura o lectura sobre datos hasta que no se hayan completado operaciones previas sobre variables de sincronización.
CONSISTECIA DE LIBERACION: Se basa en el supuesto de que los accesos a variables compartidas se protegen en secciones críticas empleando primitivas de sincronización, como por ejemplo locks. En tal caso, todo acceso esta precedido por una operación adquiere y seguido por una operación release. Es responsabilidad del programador que esta propiedad se cumpla en todos los programas.
Memoria Compartida Distribuida Basada en Objetos:
La memoria compartida se estructura como una colección de objetos de nivel
de lenguaje, como pilas o diccionarios, con una semántica de mayor nivel que la
simple de lectura/escritura de variables. Los contenidos de la memoria compartida
se modifican únicamente mediante invocaciones sobre dichos objetos y nunca
a través del acceso directo a sus variables miembro. Una ventaja de esta visión
de la memoria es que la semántica de objetos puede utilizarse para forzar la
consistencia. La visión de DSM proporcionada por Orca es la de una colección
de objetos compartidos en los que automáticamente se serializan las operaciones
simultáneas realizadas sobre cualquiera de ellos.
Maria Arrioja
C.I: 20.877.303
José Araque
C.I. 20.453.265
En un principio las máquinas paralelas MIMD(Multiple Instructions, Multiple Data),se dividía la Memoria en dos clases dependiendo de su arquitectura:
Maquinas De Memorias Compartidas, Que están compuestas por una pila de procesadores accesando a un modulo individual de memoria. La ventaja principal de estas computadoras yace en su fácil programabilidad, debido al hecho de que no hay comunicación entre procesadores. sin embargo, las contenciones y colisiones (que son producto del acceso concurrente a la memoria compartida) impiden a la aplicación de ser realmente escalable. Por lo tanto, a pesar de muchos intentos, la mayoría de las Maquinas de Memoria Compartida están limitadas a un pequeño numero de procesadores (<32).
Maquinas de Memoria Distribuida, al contrario del caso anterior, estas pueden integrar un gran numero de procesadores (>1000). Las aplicaciones que usan esta arquitectura pueden ser escalables (si el programador es lo suficientemente bueno). El modelo de comunicación usado es generalmente paso de mensajes. Que puede permitir considerables aceleraciones. Sin embargo su programación es bastante difícil, ya que los usuarios finales tienen que usar todas las operaciones de comunicaciones.
Bajo este conexto, con la finalidad de permitirle al programador el acceso y la capacidad de compartir "objetos de Memoria", pero sin estar a cargo de su administracion. se creo una plataforma en la que se implementara el modelo de memoria compartida, en los sistemas que carecen de memoria física compartida, a traves del uso de una memoria virtual, que provee un espacio de direcciones compartido entre todos los nodos.
Fuente:
C8-550 Distributed Shared Memory (94)
DOSMOS Team, Distributed Shared Memory Systems
miguel eduardo calles CI: 18.836.523
Memoria Compartida Distribuidas con base en paginas
El esquema de DSM propone un espacio de direcciones de memoria virtual que integra la memoria de todas las computadoras del sistema, y su uso se realiza mediante paginación. Las páginas quedan restringidas a estar necesariamente en un único nodo. Cuando un programa intenta acceder a una posición virtual de memoria, se comprueba si esa página se encuentra de forma local. Si no se encuentra, se provoca un fallo de página, y el sistema operativo solicita la página al resto de nodos. El sistema funciona de forma análoga al sistema de memoria virtual tradicional, pero en este caso los fallos de página se propagan al resto de ordenadores, hasta que la petición llega al nodo que tiene la página virtual solicitada en su memoria local. A primera vista este sistema parece más eficiente que el acceso a la memoria virtual en disco, pero en la realidad ha mostrado ser un sistema demasiado lento en ciertas aplicaciones, ya que provoca un tráfico de páginas excesivo.
Una mejora dirigida a mejorar el rendimiento sugiere dividir el espacio de direcciones en una zona local y privada y una zona de memoria compartida, que se usará únicamente por procesos que necesiten compartir datos. Esta abstracción se acerca a la idea de programación mediante la declaración explícita de datos públicos y privados, y minimiza el envío de información, ya que sólo se enviarán los datos que realmente vayan a compartirse.
Memoria Compartida Distribuida basada en objetos
En los MCD basados en objetos se busca el acceso a datos por medio de la encapsulación de la información y repartida a través de la red, estos objetos serán definidos por el Programador y las CPU´s cambiaran los estados según procedan con los accesos. Nace como respuesta a la creciente popularización de los lenguajes orientados por objetos. Los datos se organizan y son transportados en unidades de objetos, no unidades de páginas.
Ventajas:
Es mas modular que otras técnicas.
La implementación es más flexible por que los accesos son controlados. Sincronización y accesos se pueden integrar juntos, más fácilmente.
Desventajas:
No corre en viejos programas para multiprocesadores.
Los accesos se deben hacer invocando a los accesos, lo que significa más trabajo que los métodos de páginas compartidas.
miguel eduardo calles CI: 18.836.523
Memoria Compartida Distribuida con Variables
En los MCD basados en variables busca evitar la compartición falsa ejecutando un programa en cada CPU que se comunica con una central, la que le provee de variables compartidas, administrando este cualquier tipo de variable, poniendo variables grandes en varias páginas o en la misma página muchas variables del mismo tipo, en este protocolo es muy importante declarar las variables compartidas. La compartición falsa se produce cuando dos procesos se pelean el acceso a la misma página de memoria, ya que contiene variables que requieren los dos, pero estas no son las mismas. Esto pasa por un mal diseño del tamaño de las páginas y por la poca relación existente entre variables de la misma página. En este esquema la granularidad es más fina ya que sólo se comparten variables que han sido marcados previamente en el código del programa. Tanto el compilador como el entorno de ejecución se encargan del acceso y compartición de las variables compartidas.
Ejemplos: Munin y Midway
Se recomienda la duplicación. Ésta puede ser parcial o total.
El Algoritmo de actualización es sumamente importante.
No hay compartición falsa dado que todos los procesos acceden a datos protegidos y consistentes dado que la variable compartida monitoriza los accesos de escritura.
Munin
Se basa en objetos del software (usa MMU).
Declaraciones con “shared”.
Una variable compartida por página (por defecto).
Instrucciones normales de lectura y escritura.
No hay métodos de protección especiales.
Se manejan regiones críticas.
Clases de variables:
Variables ordinarias.
Variables de datos compartidos.
Variables de sincronización.
Categorías de variables:
Exclusiva para lectura.
Migratoria.
De escritura compartida.
Convencional.
Midway
Compartir estructuras de datos individuales.
C, C++ o ML convencional con información adicional.
Mantiene consistentes las variables compartidas de manera eficiente
Publicar un comentario