unidad v

12
Sistemas distribuidos de archivos Un componente fundamental de cualquier sistema distribuido es el sistema de archivos. Como en el caso de lo sistemas con un procesador, la tarea del sistema de archivos en los sistemas distribuidos es almacenar los programas y datos y tenerlos disponibles cuando sean necesarios. Se deben distinguir dos conceptos: Servicio de archivos: especificación de los servicios ofrecidos al cliente. Servidor de archivos: proceso ejecutado en una máquina y que ayuda a implantar el servicio de archivos.

Upload: luis-moran

Post on 12-Jun-2015

273 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Unidad V

Sistemas distribuidos de archivos

Un componente fundamental de cualquier sistema distribuido es el sistema de archivos. Como en el caso de lo sistemas con un procesador, la tarea del sistema de archivos en los sistemas distribuidos es almacenar los programas y datos y tenerlos disponibles cuando sean necesarios.

Se deben distinguir dos conceptos:

• Servicio de archivos: especificación de los servicios ofrecidos al cliente.• Servidor de archivos: proceso ejecutado en una máquina y que ayuda a implantar el servicio de archivos.

Page 2: Unidad V

Sistemas distribuidos de archivos

Diseño de los sistemas distribuidos de archivos

Por lo general, se tienen dos componentes distintos:

• El servicio de archivos• El servicio de directorios

El primero se encarga de las operaciones de archivos individuales, como lectura, escritura y adición.

El segundo, crear y administrar directorios, añadir y eliminar archivos de los directorios.

Page 3: Unidad V

Sistemas distribuidos de archivos

¿ Qué es un archivo ?

Una secuencia de bytes sin interpretación alguna. El significado y estructura de la información depende de los programas, no interesa al sistema operativo.

Un archivo tiene atributos: propietario, tamaño, fecha y hora de creación, modificación, último acceso y permisos.

Los sistemas de archivos establecen distintos esquemas de permisos, algunos rígidos, otros más flexibles, como las ACL ( Access Control List ).

Page 4: Unidad V

Sistemas distribuidos de archivos

Modelos de Acceso

Los servicios de archivos se pueden dividir en dos tipos:

Modelo carga/descarga: se proporcionan solo dos operaciones principales, la lectura de un archivo y la escritura del mismo. Si ventaja es la sencillez del concepto. Es ineficiente cuando el tamaño del archivo es grande y congestiona el medio de transporte.

Modelo de acceso remoto: proporciona varias operaciones, para abrir y cerrar archivos, leer, escribir partes del archivo, moverse a través del archivo ( LSEEK ), examinar, modificar atributos, etc. Se ejecuta en los servidores y no en los clientes.

Page 5: Unidad V

Sistemas distribuidos de archivos

Servicio de Directorios

El servicio de directorios define un alfabeto y una sintáxis para formar los nombres de archivos y directorios.Algunos servicios establecen reglas para el nombre de archivo y una extensión, por ejemplo, para determinar si es un archivo ejecutable o convencional. Sin embargo, otros servicios utilizan un atributo para el efecto.

Se define como un sistema jerárquico de archivos al conjunto de directorios y subdirectorios.

En ciertos sistemas, es posible crear enlaces o apuntadores ( accesos directos, enlaces simbólicos ).

Page 6: Unidad V

Sistemas distribuidos de archivos

Transparencia de los nombres

Son relevantes dos formas de transparencia:

• La transparencia con respecto a la posición ( \\servidor\dir1\dir2\ )• Independencia con respecto a la posición ( G:\dir1\ )

Existen tres métodos para nombrar los archivos y directorios en un sistema distribuido:

• Nombre de máquina + ruta de acceso: /pc-01/dir1.• Montaje de sistemas de archivos remoto en la jerarquía local de archivos.• Un espacio de nombre que tenga la misma apariencia en todas las máquinas.

Page 7: Unidad V

Sistemas distribuidos de archivos

Nombre de dos niveles:

La mayoría de los sistemas distribuidos utilizan nombres con dos niveles:• Nombres simbólicos, i.e. prog.c• Nombres binarios internos.

Los nombres binarios varían de sistema en sistema y son únicos.

Page 8: Unidad V

Sistemas distribuidos de archivos

Archivos compartidos

Si dos o más usuarios comparten el mismo archivo, es necesario definir con precisión la semántica de la lectura y escritura para evitar problemas.

Ejemplo: si dos WRITE se realizan en serie y después se ejecuta un READ, el valor que se lee es el almacenado en la última escritura. El sistema impone en todas las operaciones un orden absoluto con respecto del tiempo y siempre regresa el valor más reciente.

Page 9: Unidad V

Sistemas distribuidos de archivos

Aspectos de Implantación

• Uso de archivos: tener idea del posible uso.• Tamaño de los archivos: ( desde kbytes a gigabytes ).• Solo lectura vs lectura/escritura.• Propiedades de los archivos.

Page 10: Unidad V

Sistemas distribuidos de archivos

Ocultamiento:

En un sistema Cliente/Servidor, cada equipo tiene su disco y memoria principal, existen cuatro lugares donde se pueden almacenar los archivos o partes del archivo:

• Disco del servidor• Memoria principal del servidor• Disco del cliente• Memoria principal del cliente

Se puede lograr mejor desempeño si los datos se ocultan, colocándolos en memoria principal en vez de discos. Para ello se recurre al uso de caché.

Eso a la vez necesita que el sistema tenga algoritmos que puedan administrar el uso de caché. Se pueden administar en caché archivos completos o partes, o bloques del disco.Mantener el caché debe ser transparente para el cliente. Se deben cuidar la sincronización y consistencia.

Page 11: Unidad V

Sistemas distribuidos de archivos

Compartir archivos en un sistema distribuido

Método DescripciónSemántica UNIX Cada operación en un archivo es visible a todos los

procesos de manera instantánea

Semántica de Sesión Ningún cambio es visible a otros procesos hasta que el archivo se cierra

Archivos inmutables No existen actualizaciones; es más fácil compartir y replicar

Transacciones Todos los cambios tienen la propiedad del todo o nada

Page 12: Unidad V

Sistemas distribuidos de archivos

Tendencias:

• Pilas de discos• Discos de estado sólido• Almacenamiento remoto• Cloud Computing