La semántica de consistencia es un concepto que utilizan los usuarios para verificar los sistemas de archivos que admiten el uso compartido de archivos en sus sistemas. Básicamente, es una especificación para verificar cómo en un solo sistema, varios usuarios obtienen acceso al mismo archivo y al mismo tiempo. Se utilizan para verificar varias cosas en los archivos, como cuándo la modificación de algún usuario en un archivo es perceptible para otros.
La semántica de consistencia es un concepto que está en relación directa con el concepto denominado algoritmos de sincronización de procesos. Pero los algoritmos de sincronización de procesos no se utilizan en el caso de E/S de archivos debido a varios problemas, como una gran latencia, una tasa de transferencia de disco y red más lenta.
Ejemplo:
cuando el usuario realiza una transacción atómica a un disco remoto, implica comunicaciones de red, lectura y escritura de discos o ambas. El sistema que está completando su tarea con un conjunto completo de funcionalidades tuvo un rendimiento deficiente. En el sistema de archivos Andrew, se encuentra una implementación exitosa de la semántica compartida.
Para acceder al mismo archivo por proceso de usuario, siempre se incluye entre las operaciones open() y close(). Cuando hay una serie de accesos para el mismo archivo, se crea una sesión de archivo.
1. Semántica de UNIX:
los sistemas de archivos en UNIX utilizan la siguiente semántica de coherencia:
- El archivo que el usuario va a escribir será visible para todos los usuarios que compartan ese archivo en ese momento.
- Su único modo en la semántica de UNIX para compartir archivos es a través del puntero de uso compartido de la ubicación actual. Pero afectará a todos los demás usuarios compartidos.
En este, un archivo que se comparte se asocia con una sola imagen física a la que se accede como un recurso exclusivo. Esta imagen única provoca retrasos en los procesos del usuario.
2. Semántica de sesión:
el sistema de archivos de Andrew utiliza la siguiente semántica de coherencia.
- El archivo que el usuario va a escribir no será visible para todos los usuarios que compartan ese archivo en ese momento.
- Después de cerrar el archivo, los cambios realizados en ese archivo por el usuario solo son visibles en las sesiones que comienzan más tarde. Si el archivo de cambios ya está abierto por otro usuario, los cambios no serán visibles para ese usuario.
En esto, un archivo que se comparte se asocia con varias imágenes y no hay retraso en esto porque permite que múltiples usuarios realicen accesos de lectura y escritura simultáneamente en sus imágenes.
3. Semántica de archivos compartidos inmutables:
parece que los archivos compartidos inmutables tienen un enfoque único. En esto, el usuario no puede modificar el archivo, que se declara como compartido por su creador.
Un archivo inmutable tiene dos propiedades que son las siguientes:
- Su nombre no puede ser reutilizado.
- Su contenido no puede ser alterado.
En este sistema de archivos, el contenido del archivo es fijo. La implementación de la semántica en un sistema distribuido es simple, porque compartir es disciplinado.
Publicación traducida automáticamente
Artículo escrito por itskawal2000 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA