<< >> Título

Visión general del sistema


Arquitectura en dos niveles del SFB

El programa actual implementa un sistema de ficheros muy básico. Este sistema de ficheros se soporta sobre un archivo regular UNIX, que actuará a modo de disco virtual. Se ofrece una interfaz, llamada nivel de bloques físicos (NBF), definida en sffisico.h y que ofrece primitivas para leer y escribir bloques físicos de ese disco virtual. (Ustedes no deberán tocar este módulo, sólo usar sus servicios).

En el nivel de bloques físicos, los datos del disco virtual se organizan en forma de una secuencia de bloques de tamaño fijo, numerados de cero en adelante. A cada bloque de datos lo llamaremos bloque físico.

Por encima del nivel de bloques físicos, se encuentra el sistema de ficheros propiamente dicho, llamado sistema de ficheros básico (SFB). El SFB utiliza la interfaz de sffisico.h para trabajar con el disco virtual. En la implementación actual, el sistema de ficheros básico organiza el disco virtual en varias zonas: un bloque con la información del sistema, una zona con los descriptores de ficheros, y una zona de bloques de datos, según se expone más adelante.

El sistema de ficheros básico no es un programa autónomo. Es una biblioteca de funciones que pueden emplear en programas escritos por ustedes. Para servir de ejemplo y pruebas, con la distribución de muestra se acompañan algunos programas que hacen uso de los servicios del SFB.

Módulos que componen el programa

El programa actual reside en el directorio /prac/sfb, visible en la máquina SOPA y los PC del laboratorio. En él se encuentran la interfaz y la implementación del programa, así como algunos programas simples de ejemplo.

Interfaces públicas

errores.h

Códigos de error
sfbasico.h
Interfaz con el Sistema de Ficheros Básico
sffisico.h
Interfaz con los bloques físicos
tipos.h
Tipos básicos del programa

Implementación

bfb.h

Bloques de fichero básico (interfaz)
bfb.c
Bloques de fichero básico (implementación)
descr.h
Descriptor de sistema de ficheros (interfaz)
descr.c
Descriptor de sistema de ficheros (implementación)
sfbasico.c
Implementación del Sistema de Ficheros Básico
sffisico.c
Implementación del nivel de bloques físicos

Makefile y pruebas

Estos ficheros se hallan en el directorio /prac/sfb/pruebas. Son programas muy simples que emplean los servicios del Sistema de Ficheros Básico, y que les servirán a la vez como ejemplos y como programas de prueba para sus modificaciones.

makefile

Para compilar las pruebas
borra.c
Borra un fichero básico
crea.c
Instala y da formato a un disco virtual
dire.c
Muestra el directorio de un disco
escribe.c
Escribe un bloque en un fichero básico
lee.c
Lee un bloque de un fichero básico


<< >> Título