PDF de programación - Sistemas de archivos: Archivos y directorios

Imágen de pdf Sistemas de archivos: Archivos y directorios

Sistemas de archivos: Archivos y directoriosgráfica de visualizaciones

Publicado el 4 de Septiembre del 2018
355 visualizaciones desde el 4 de Septiembre del 2018
848,9 KB
104 paginas
Creado hace 2a (06/09/2017)
Semántica de archivos
Tipos de archivo
Métodos de acceso
Organización de archivos
Sistemas de archivos remotos

Sistemas de archivos: Archivos y directorios

Gunnar Wolf

Gunnar Wolf

Sistemas de archivos: Archivos y directorios

Semántica de archivos
Tipos de archivo
Métodos de acceso
Organización de archivos
Sistemas de archivos remotos

Índice

1 Semántica de archivos

2 Tipos de archivo

3 Métodos de acceso

4 Organización de archivos

5 Sistemas de archivos remotos

Gunnar Wolf

Sistemas de archivos: Archivos y directorios

Semántica de archivos
Tipos de archivo
Métodos de acceso
Organización de archivos
Sistemas de archivos remotos

Sistemas de archivos

Gestión del espacio de almacenamiento
Probablemente el rol con más visibilidad de los que cubren los
sistemas operativos

Comprendido casi universalmente por los usuarios

Gunnar Wolf

Sistemas de archivos: Archivos y directorios

Semántica de archivos
Tipos de archivo
Métodos de acceso
Organización de archivos
Sistemas de archivos remotos

Abstracción primaria

El modelo primario, con el cual todos estaremos familiarizados,
es el del directorio jerárquico
Unidad de almacenamiento visible al usuario: Archivo

No podemos grabar información como no sea en un archivo
Se ubica por un nombre (o por una ruta) en el directorio
Una de las abstracciones más longevas en la historia de la
computación

Gunnar Wolf

Sistemas de archivos: Archivos y directorios

Semántica de archivos
Tipos de archivo
Métodos de acceso
Organización de archivos
Sistemas de archivos remotos

Tipo de datos abstracto

Cuando hablamos de manejo de archivos, necesariamente lo
hacemos a través de un tipo de datos abstracto

Esto es, en el lenguaje y bajo el paradigma que sea, un tipo de
programación orientada a objetos
Una estructura de datos (archivo) es opaca (no se puede
accesar a sus contenidos más que a través de operaciones que
trabajan en su interior)
Hay una serie de operaciones definidas

Cada sistema operativo nos presenta un conjunto de
operaciones que define la semántica de archivos que maneja

Gunnar Wolf

Sistemas de archivos: Archivos y directorios

Semántica de archivos
Tipos de archivo
Métodos de acceso
Organización de archivos
Sistemas de archivos remotos

Operaciones con archivos

Hay algunas diferencias entre sistemas operativos, pero en general

tendremos las siguientes operaciones disponibles:

Crear
Borrar
Abrir
Cerrar
Leer
Escribir
Reposicionar (seek)

Gunnar Wolf

Sistemas de archivos: Archivos y directorios

Semántica de archivos
Tipos de archivo
Métodos de acceso
Organización de archivos
Sistemas de archivos remotos

Operaciones con archivos: Crear

Asigna una entrada en el directorio para un nuevo archivo
Posiblemente, también asigna espacio en el dispositivo para
sus contenidos.

Gunnar Wolf

Sistemas de archivos: Archivos y directorios

Semántica de archivos
Tipos de archivo
Métodos de acceso
Organización de archivos
Sistemas de archivos remotos

Operaciones con archivos: Borrar

Elimina al archivo del directorio
Si corresponde, libera el espacio del dispositivo que el archivo
emplea

Gunnar Wolf

Sistemas de archivos: Archivos y directorios

Semántica de archivos
Tipos de archivo
Métodos de acceso
Organización de archivos
Sistemas de archivos remotos

Operaciones con archivos: Abrir

Verificar si tenemos acceso para el modo de acceso indicado
Verificar si el medio soporta el modo de acceso

Por ejemplo, no podemos abrir para escritura un archivo en un
disco de sólo lectura
Aunque tengamos permisos

Asigna un descriptor de archivos a la relación entre el proceso
y el archivo en cuestión
Es necesario abrir un archivo para todas las operaciones que
realizaremos con sus datos

Gunnar Wolf

Sistemas de archivos: Archivos y directorios

Semántica de archivos
Tipos de archivo
Métodos de acceso
Organización de archivos
Sistemas de archivos remotos

Operaciones con archivos: Cerrar

Indica al sistema que el proceso terminó de usar al archivo
El sistema vacía los buffers a disco
El sistema elimina la relación archivo-proceso de las tablas
activas
Se invalida al descriptor de archivo
Si un proceso cierra un archivo y quiere emplearlo de cualquier
manera, tiene que volverlo a abrir explíticamente.

Gunnar Wolf

Sistemas de archivos: Archivos y directorios

Semántica de archivos
Tipos de archivo
Métodos de acceso
Organización de archivos
Sistemas de archivos remotos

Operaciones con archivos: Leer

Indicamos al sistema un buffer donde poner el resultado
El sistema copia el siguiente pedazo de información en el
archivo hacia el buffer
¿Qué es siguiente?

Gunnar Wolf

Sistemas de archivos: Archivos y directorios

Semántica de archivos
Tipos de archivo
Métodos de acceso
Organización de archivos
Sistemas de archivos remotos

Operaciones con archivos: Leer

Indicamos al sistema un buffer donde poner el resultado
El sistema copia el siguiente pedazo de información en el
archivo hacia el buffer

¿Qué es siguiente? Lo que indique el apuntador de última
posición
¿Qué es pedazo?

Gunnar Wolf

Sistemas de archivos: Archivos y directorios

Semántica de archivos
Tipos de archivo
Métodos de acceso
Organización de archivos
Sistemas de archivos remotos

Operaciones con archivos: Leer

Indicamos al sistema un buffer donde poner el resultado
El sistema copia el siguiente pedazo de información en el
archivo hacia el buffer

¿Qué es siguiente? Lo que indique el apuntador de última
posición
¿Qué es pedazo? Un bloque de longitud fija, una línea de texto
— dependiendo del modo en que esté abierto el archivo /
solicitada la lectura

Gunnar Wolf

Sistemas de archivos: Archivos y directorios

Semántica de archivos
Tipos de archivo
Métodos de acceso
Organización de archivos
Sistemas de archivos remotos

Operaciones con archivos: Escribir

Indicamos un buffer al sistema
El sistema copia de dicho buffer al archivo
¿A qué parte del archivo?

Truncar Descartar al contenido actual del archivo (pero
no su entrada en el directorio) y reemplazar por
lo que indique el buffer

Agregar (append) Se guarda la información al final del

archivo ya existente

Escribir tras la última posición Se puede seguir un apuntador

análogo al que presentamos en la lectura

Gunnar Wolf

Sistemas de archivos: Archivos y directorios

Semántica de archivos
Tipos de archivo
Métodos de acceso
Organización de archivos
Sistemas de archivos remotos

Operaciones con archivos: Reposicionar (seek)

Lectura y escritura se hacen siguiendo a un apuntador
El apuntador puede ser reposicionado arbitrariamente dentro
del archivo

O, si está abierto en modo de escritura, a veces fuera del
mismo
No todos los sistemas lo soportan, pero puede emplearse para
crear un archivo muy grande empleando archivos dispersos:

Se crea un archivo vacío
Reposicionamos a cierta posición lejana (digamos, +50MB)
Grabamos un sólo bloque

Gunnar Wolf

Sistemas de archivos: Archivos y directorios

Semántica de archivos
Tipos de archivo
Métodos de acceso
Organización de archivos
Sistemas de archivos remotos

Semántica de unidad de cinta

La forma en que opera este conjunto de funciones presenta
una semántica en que cada archivo se comporta como si fuera
una unidad de cinta

Apuntador → Cabeza lectora
Posición actual, mas rebobinado/adelantado
Lectura/escritura secuencial

Gunnar Wolf

Sistemas de archivos: Archivos y directorios

Semántica de archivos
Tipos de archivo
Métodos de acceso
Organización de archivos
Sistemas de archivos remotos

Tablas de archivos abiertos

Cuando se abre un archivo, se crean entradas para
representarlo en dos diferentes tablas

Global Todos los archivos abiertos en el sistema

La referencia debe seguirse manejando por un
descriptor global: Probablemente, por i-nodo (lo
veremos a detalle posteriormente)

Por proceso Los archivos empleados por cada uno de los

procesos

La referencia a cada archivo se hace por
descriptor de archivo

Gunnar Wolf

Sistemas de archivos: Archivos y directorios

Semántica de archivos
Tipos de archivo
Métodos de acceso
Organización de archivos
Sistemas de archivos remotos

Tablas de archivos abiertos

Semántica (¿cuál es el comportamiento?) al haber múltiples
procesos abriendo un archivo:

Depende del sistema operativo

Estas tablas no deben caer en redundancia

Cada una tiene información distinta y específica

Gunnar Wolf

Sistemas de archivos: Archivos y directorios

Semántica de archivos
Tipos de archivo
Métodos de acceso
Organización de archivos
Sistemas de archivos remotos

Tabla global de archivos abiertos (1)

Conteo de usuarios del archivo El sistema debe saber cuántos

procesos dependen del archivo y de qué manera. Se
emplea, por ejemplo, para determinar si una unidad
puede ser desmontada, para saber si un archivo puede
ser abierto para escritura, etc.

Modos de acceso Aunque un usuario tenga los permisos necesarios
para determinado acceso al archivo, el sistema puede
negarlo si esto lleva a inconsistencias (p.ej. dos
procesos abriendo un mismo archivo para escritura)

Gunnar Wolf

Sistemas de archivos: Archivos y directorios

Semántica de archivos
Tipos de archivo
Métodos de acceso
Organización de archivos
Sistemas de archivos remotos

Tabla global de archivos abiertos (2)

Ubicación en disco El o los bloques físicos en disco donde se ubica

cada fragmento del archivo, evitando que cada
proceso tenga que consultar el directorio (y
estructuras relacionadas) para cada acceso

Información de bloqueo Si el modo de acceso requiere

sincronización explícita (manejo de bloqueo), puede
representarse en la tabla global.

Gunnar Wolf

Sistemas de archivos: Archivos y directorios

Semántica de archivos
Tipos de archivo
Métodos de acceso
Organización de archivos
Sistemas de archivos remotos

Tabla por proceso de archivos abiertos

Descriptor de archivo Relación entre el archivo abierto (típicamente
especificado por nombre) y un identificador numérico
con que lo manejamos dentro del proceso.
Un mismo archivo tendrá diferente descriptor de
archivo en cada proceso.

Permisos Modos válidos de acceso para un archivo. No e
  • Links de descarga
http://lwp-l.com/pdf13355

Comentarios de: Sistemas de archivos: Archivos y directorios (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios
Es necesario revisar y aceptar las políticas de privacidad