Práctica File Systems Distribuidos (Sistemas Operativos)
Ejercicio 01:
Qué se entiende por Transparencia en un esquema de Archivos distribuidos ?
Rta:
Transparencia de Acceso
Transparencia de ubicación
Transparencia de movilidad
Transparencia de prestación
Ejercicio 02:
Se permite el Mount en Cascada en una administración con NFS ? Justifique.
Rta:
Si, porque una vez montado el fs es transparente por lo que no deberia existir diferencia. Si la existiese entonces se romperia la transparencia.
Ojo no confundir con transitividad que no es verdadera, montar un fs remoto montado en un cliente.
Ejercicio 03:
Indique las diferencias entre AFS y NFS.
Rta:
AFS:
Semántica Sesión.
Estructurado en clusters(es mas escalable).
Utiliza caching. (Ojo creo que NFS lo tiene a nivel cliente depende la version)
Utiliza ACL para proteccion
transparencia ubicacion independiente.
NFS:
Semántica Unix.
Server sin estado, el estado lo mantienn los clientes.
Se comunica por RPC.
Utiliza los bits rwx para proteccion
transparencia ubicacion (despues del hacer el mount)
Ejercicio 04:
Con semántica UNIX se pueden compartir archivos en NFS / AFS (tachar lo que no corresponde)
Rta:
Con semántica Unix se pueden compartir archvos en NFS
Ejercicio 05:
Con semántica UNIX una modificación a un archivo es vista inmediatamente por todos los procesos que lo acceden. Piense un caso en que esto no sea cierto.
Rta:
No es cierto si se utilza caching, ó por problemas de la demora de la red(un READ llega antes que un WRITE o cosa similares)
Ejercicio 06:
Indique las diferencias entre un servidor de archivos con estado y otro sin estado. Indique para cada caso en dónde se mantiene la información de los archivos abiertos. Finalmente aclare qué efectos causa en cada situación la caída del servidor.
Rta:
Los servidores con estado mantienen la informacion de los clientes que realizan solicitudes a dicho servidor, mientras que los sin estados no mantienen información alguna.
Si se cae un servidor con Estado se pierde toda información de los clientes y la recuperación de dicha información queda a cargo de estos últimos.
Si se cae un servidor sin Estado, en principio no pasaria nada .
Un server sin estado es mas tolerante a fallos, quiza se cae y en el medio el cliente no pide nada al server...se restaura el server el cliente hace uso del server sin notar la caida. Con esta hay problemas con las tablas del server.
Con estado se puede implementar cerraduras
Con estado los mensajes son mas cortos, mientras que sin estado son mas largos
Si se cae un cliente con un server sin estado no trae problemas, mientras que con el otro si.
Ejercicio 07:
Indique en qué situación es más coherente una semántica de Transacciones atómicas respecto de una semántica Unix en archivos compartidos.
Rta:
Ejercicio 08:
Indique por lo menos dos ventajas de los servidores con estado y sin estado en un sistema de archivos distribuido.
Rta:
Ventajas Server Con Estado:
- Tamaño de solicitudes de clientes mas cortas.
- Facilmente implemntable la IdemPotencia. (alguien sabe como?)
- Puede existir lectura adelantada(implica mejor desempeño).
Ventajas Server Sin Estado:
- Si se cae el cliente, no pasa nada.
- Utiliza menos espacio para tablas, ya que no guarda info de los clientes.
- Tolerancia a Fallas.
- No existe límite para el número de archivos abiertos.
- No necesita llamadas OPEN/CLOSE.(alguien sabe por que?)
Ejercicio 09:
Cuál es la semántica que se usa en NFS ? Justifique.
Rta:
Utiliza semántica Unix.
Ejercicio 10:
Mencione dos ventajas de AFS.
Rta:
- Es altamente escalable, ya que esta estructurado en forma de clusters.
- Movilidad de los clientes, esto es que cada cliente puede logearse desde cualquier máquina.
- Vision unica de la jerarquia de niveles de archivos.
- independecia de ubicacion de archivos (es decir , q pueden transladarse de servidores si cambiar el nombre).
- Heterogeneidad ( q se pueden compartir datos con maquinas con diferentes hardwares y softwares)
Ejercicio 11:
La siguiente frase es falsa. Porqué ? Cuál es la correcta definición :
" En un file system se entiende por TRANSPARENCIA la capacidad que poseen los usuarios de poder loguearse solo desde una máquina determinada".
Rta:
Porque esa definición no es de transparencia sino de la "NO movilidad de clientes/usuarios". La definición de Transparencia es la del Ej 1 o Ej 16.
Ejercicio 12:
En qué semántica las actualizaciones de archivos son vistas por todos los procesos ? Justifique.
Rta:
En semántica Unix, siempre y cuando no se utilice caching ni haya execivas demoras en la red. Esto es porque la semántica unix establece un orden absoluto respecto al tiempo, ya que secuencia las lecturas y escrituras.
Ejercicio 13:
Cuál es la semántica utilizada en AFS ?
Rta:
La semántica utilizada en ASF es la de Sesión. Excepto cuando se modifican los atributos de un archivo , los cuales se propagan de inmediato.
Ejercicio 14:
Cuántos servidores de archivos existen en una semántica NFS ? Justifique.
Rta:
Pueden existir tantas como maquinas interconectadas. Ya que NFS permite compartir archivos, con una gran transparencia, entre maquinas basandose en la comunicacion cliente-servidor donde cualquier maquina puede ser tanto cliente como servidor.
A una maquina con NFS solo tiene que exportar los directorios que desea compartir e indicar que usuarios pueden acceder a ellas y como (solo lectura, lect/escritura, etc).
Ejercicio 15:
Escalabilidad en un File System Distribuido. Comente en general.
Rta:
Ejercicio 16:
Se entiende como TRANSPARENCIA
a) Los nombres de los archivos no contienen la ubicación de almacenamiento físico.
b) Los nombres de los archivos necesitan ser cambiados cuando se actualizan las
unidades físicas.
c) Los usuarios pueden "loguearse" solo desde una máquina determinada.
d) todas.
e) ninguna.
Rta:
a) Los nombres de los archivos no contienen la ubicación de almacenamiento Físico.
Ejercicio 17:
En NFS:
a) Los servers son con estado y se implementa sobre RPC.
b) La característica más importante es la utilización de la semántica de "Sesión".
c) Existen operaciones de búsqueda de archivos dentro de un directorio.
d) No se permite el Mount en cascada.
e) Las actualizaciones de los archivos son vistas por todos los usuarios que los
comparten.
f) todas.
g) ninguna.
Rta:
c) Existen operaciones de búsqueda de archivos dentro de un directorio.
e) Las actualizaciones de los archivos son vistas por todos los usuarios que los comparten.
Ejercicio 18:
Indique cuáles de las siguientes formas de compartir archivos corresponden a NFS y a AFS:
a) semántica de Unix
b) semántica de Sesión
c) archivos inmutables
d) transacciones
Rta:
NFS:
a) Semántica Unix
AFS:
b) Semántica Sesión
Ejercicio 19:
Describir los métodos antes mencionados resaltando las diferencias entre ellos.
Rta:
- La semántica Unix mantiene un orden absoluto respecto al tiempo ya que secuencia las lecturas y escrituras.
- En la semántica Sesión, las modificaciones son vistas luego de cerrar el archivo.
Ejercicio 20:
Considere el Mount Protocol. Indicar cuál de las siguientes afirmaciones es verdadera y justificar.
a) conexión lógica inicial entre el server y el cliente
b) el server mantiene una lista de exportación de los File Systems locales
c) cuando se realiza un mount de un file system que se cuenta en la lista de
exportación del server, el cliente obtiene un File Handler del file system para accederlo
d) el server mantiene una lista de exportación de los file systems remotos
Rta:
a) verdadera, el protocolo mount es utilizado parsa establecer la conexion inicial
b) verdadero, las guarda por lo gral en /etc/exports y se utiliza para indicar lo que se puede compartir
c) verdadero, el cliente obtiene un file handler que es el que el cliente utiliza.
d) verdadero, el server mantiene un lista de los clientes con los fs que exporto. (entiendo esto por lista, pero se puede entender de otra forma quiza)
Ejercicio 21:
Indique la diferencia entre la capa Virtual File System, Name Info Server, Venus y Vice.
Rta:
VENUS es un proceso a nivel de usuario que intercepta las llamadas al sistema con respecto a la apertura y el cierre de un archivo remoto, con el fin de comunicarse con el VICE y descargar por completo (si es q se puede) todo el archivo en cuestion o cargarlo por completo al servidor
VICE es el conjunto de maquinas que actuan como servidores en un FSD
VFS es una capa entre la interface y la implementacion de un FS.
Name info server supongo que se refiere a un server que con un nombre indica la direccion binaria de un server.
Ejercicio 22:
Indique qué comando de DOS realiza lo mismo que el mount en una computadora stand-alone.
Rta:
Ejercicio 23:
Indique las diferencias entre las siguientes semánticas:
a) de Transacción
b) de Sesión
c) de Unix
Enumere dos ejemplos de sistemas operativos indicando qué semántica utilizan.
Rta:
a) Los cambios son atomicos.
b) Los cambios se ven en el momento donde se cierra el archivo.
c) Cambios en el momento.
Ejercicio 24:
Indique qué modelo (NFS o AFS) brinda la transparencia en la ubicación y movilidad de archivos. Cómo se implementa o implementaría la Movilidad de Archivos en forma transparente, en NFS y en AFS ?
Rta:
Ejercicio 25:
Cuál es la diferencia entre semántica UNIX y semántica de transacciones ?
Rta:
En la semántica Unix los cambios son vistos inmediatamente, mientras que en la de Transacciones solo son vistos al cerrar el archivo, esto es por la política Todo o Nada.
Ejercicio 26:
Compare la semántica UNIX y la semántica de sesión.
Rta:
En la semántica Unix los cambios son vistos inmediatamente, mientras que en Sesión los cambios son visibles solo al cerrar el archivo.
Ejercicio 27:
Indique cuáles son las formas que adoptan los servicios de archivos y comente cada una.
Rta:
1 - Upload/Download Model
La totalidad del archivo requerido es trnasferida al cliente, luego este lo transfiere nuevamente al servidor luego de usarlo.
2 - Montaje remoto
Las operaciones sobre el archivo se realizan solo con las provistas por el server, sin necesidad de transferencia total del archivo.
Ejercicio 28:
Qué importancia tiene la transparencia de nombres en un File System Distribuido ?
Rta:
Ejercicio 29:
Qué servicios provee NFS y a través de qué se los implementa ?
Rta:
- Lectura de un conjunto de entradas de directorio.
- Lectura y Escritura de archivos.
- Acceso a atributos de archivos.
- Busqueda de un archivo dentro de un directorio.
- Manipulación de links y directorios.
Todas se implementan a través de RPC.