Está en la página 1de 13

Tema 5.

El sistema de ficheros
1. Visin del usuario.
1. Concepto de fichero. 2. Organizacin lgica de los ficheros. 3. Estructura del sistema de ficheros. 4. Generalizacin de los servicios del sistema de ficheros.

2.

Organizacin del espacio.


1. Asignacin contigua. 2. Asignacin no contigua. 3. Gestin del espacio libre.

3. 4.

Gestin de ficheros.
1. Estructura interna de un directorio. 2. Implantacin de enlaces.

Integridad y proteccin del sistema de ficheros.


1. Seguridad e integridad. Mtodos. 2. Proteccin. Mecanismos.

rea de Lenguajes y Sistemas Informticos (E.G.R.)

1. Visin del usuario (I)


1.1. Concepto de fichero. (I)
Definiciones: un fichero es un conjunto de informacin con cierta entidad y con vista a su conservacin y a su utilizacin en un entorno informtico. A la informacin contenida en un fichero se puede referenciar como un todo mediante un nombre que se le asocia a cada fichero y que lo identifica. el sistema de ficheros es la parte del S. O. encargada de gestionar los datos almacenados en el almacenamiento secundario. Funciones que debe ofrecer el sistema de ficheros: 1. permitir que los usuarios puedan crear, borrar y modificar sus ficheros; 2. permitir que los usuarios puedan compartir sus ficheros de una forma controlada; 3. proporcionar varios tipos de acceso controlado a la hora de la comparticin;
rea de Lenguajes y Sistemas Informticos (E.G.R.)

1. Visin del usuario (II)


1.1. Concepto de fichero. (II)
Funciones que debe ofrecer el sistema de ficheros: 4. permitir que los usuarios puedan estructurar sus ficheros; 5. permitir que los usuarios puedan ordenar la transferencia de informacin entre ficheros; 6. proporcionar recursos para realizar respaldos y recuperaciones de informacin; 7. permitir que los usuarios puedan referenciar sus ficheros mediante nombres simblicos; 8. proporcionar posibilidades de cifrado y descifrado para conseguir seguridad y privacidad; 9. ofrecer al usuario una interfaz amable, ofreciendo una vista lgica de los datos y de las funciones que se pueden realizar con ellos; 10. efectuar las operaciones sobre los datos de forma independiente al dispositivo; 11. gestionar la memoria secundaria.
rea de Lenguajes y Sistemas Informticos (E.G.R.)

1. Visin del usuario (III)


1.2. Organizacin lgica de los ficheros.
Definicin: la organizacin lgica de un fichero se refiere a la manera en que se disponen sus registros dentro del almacenamiento secundario, en base a realizar un acceso a nivel lgico. Organizaciones comunes: A. Acceso secuencial: la informacin del fichero se procesa en orden consecutivo, por ello una operacin de lectura leer el siguiente registro y una operacin de escritura aadir el registro al final del fichero. B. Acceso directo: se accede a los registros de un fichero sin seguir un orden particular, sino usando una clave. Si la clave es nica existen dos mtodos de bsqueda: 1. Direccionamiento disperso: se usa una funcin que tomando como entrada la clave devuelve la direccin fsica de ese registro; 2. Fichero indexado: se usa una tabla ndice en donde es significativo el orden de las claves.
rea de Lenguajes y Sistemas Informticos (E.G.R.)

1. Visin del usuario (IV)


1.3. Estructura del sistema de ficheros. (I)
El nombre simblico de un fichero puede estar formado por una raz y una extensin. Un directorio es una estructura que permite organizar los ficheros de un sistema. Los nombres simblicos de los ficheros deben ser nicos dentro del directorio. Para identificar un fichero es necesario dar su direccin completa partiendo del directorio raz (pathname o ruta de acceso). (Ejemplo: \Directorio1\Directorio3\Fichero4)

Raz (\) Directorio1


Fichero2

Directorio2

Fichero1

Directorio3
Fichero4

Fichero3

rea de Lenguajes y Sistemas Informticos (E.G.R.)

1. Visin del usuario (V)


1.3. Estructura del sistema de ficheros. (II)
Conceptos:
1. Directorio de trabajo (working directory o directorio activo). Se puede dar la direccin de un fichero a partir del directorio de trabajo (ruta de acceso relativa). (Ejemplo: si el directorio de trabajo es Directorio1 Directorio3\Fichero4) Lista de bsqueda. A cada proceso se le asigna una lista de direcciones de directorios, de forma que si el proceso hace referencia a un fichero y este no esta en su directorio de trabajo, se busca en los directorios que indica dicha lista de bsqueda. Ficheros que hacen referencia a dispositivos de E/S. Enlace (Link). Es un mecanismo que permite que un determinado fichero se vea en dos puntos distintos de la estructura sin necesidad de que existan dos copias del mismo fichero. Raz (\) Directorio1 Fichero1
rea de Lenguajes y Sistemas Informticos (E.G.R.)

2.

3. 4.

Directorio2 Fichero2

1. Visin del usuario (VI)


1.4. Generalizacin de los servicios del sistema de ficheros.
Gestin de directorios:
1. 2. 3. 4. crear un directorio; borrar un directorio; visualizar los elementos que dependen de un directorio; (opcional) cambiar el nombre de un directorio.

Gestin del directorio de trabajo:


1. visualizar el directorio de trabajo actual; 2. modificar el directorio de trabajo.

Gestin de la lista de bsqueda:


1. visualizar la lista de bsqueda actual; 2. modificar la lista de bsqueda.

Gestin de enlaces:
1. crear un enlace; 2. borrar un enlace.
rea de Lenguajes y Sistemas Informticos (E.G.R.)

2. Organizacin del espacio (I)


2.1. Asignacin contigua. (I)
Definicin: la asignacin contigua consiste en asignarle a un fichero un rea
contigua del almacenamiento secundario. Se requiere que el usuario especifique por adelantado el tamao del rea necesaria para almacenar el fichero que va a crear.

Ventajas:
1. minimiza el tiempo de acceso: el tiempo requerido para el intercambio de informacin entre el disco y la memoria principal, o viceversa, necesita el mnimo nmero de desplazamientos de la cabeza del disco y el rotacional; facilita la implementacin de los directorios: basta almacenar por cada fichero su direccin de comienzo y su longitud. presenta fragmentacin externa: requiriendo la combinacin de huecos adyacentes y la compactacin de memoria peridicamente.

2.

Desventaja:
1.

rea de Lenguajes y Sistemas Informticos (E.G.R.)

2. Organizacin del espacio (II)


2.1. Asignacin contigua. (II)
Este esquema es til cuando no son frecuentes las creaciones, destrucciones y cambios de tamao de los ficheros.

Fichero A Libre Fichero B

Libre

Fichero A Libre

Fichero B Fichero C

Aumenta el tamao del fichero B

Fichero C

rea de Lenguajes y Sistemas Informticos (E.G.R.)

2. Organizacin del espacio (III)


2.2. Asignacin no contigua. (I)
Definicin: la asignacin no contigua consiste en alojar los ficheros partidos en una serie de trozos del mismo tamao (bloques), no ocupando necesariamente reas contiguas del almacenamiento secundario. Tamao del bloque: compromiso entre el aprovechamiento de la memoria y la obtencin de una buena velocidad de transferencia.
A. B. tamao del bloque grande: se desperdicia memoria ya que los ficheros, sobre todo los pequeos, no conseguirn ocupar todo el bloque; tamao del bloque pequeo: cuanto mayor sea el tamao del fichero mayor ser el nmero de bloques que se le deben asignar y como estos no se graban contiguos, entonces el tiempo de acceso a ellos ser mayor puesto que existe un retardo en el desplazamiento de la cabeza del disco.

rea de Lenguajes y Sistemas Informticos (E.G.R.)

2. Organizacin del espacio (IV)


2.2. Asignacin no contigua. (II)
Formas de asignar espacio: 1. Asignacin encadenada: en cada bloque se reserva un espacio en donde se guarda la direccin del siguiente bloque del fichero.
370 112 540
540

El ltimo bloque del fichero se indica siguiendo algn criterio preestablecido. La direccin del primer bloque se encuentra en el directorio donde cuelga el fichero.
FIN

112

Inconvenientes: 1. desperdicio de memoria; 2. sirve solo para realizar acceso secuencial y no directo; 3. la estructura empleada es bastante vulnerable.

rea de Lenguajes y Sistemas Informticos (E.G.R.)

2. Organizacin del espacio (V)


2.2. Asignacin no contigua. (III)
Variante de la asignacin encadenada: toda la informacin que contiene los bloques son datos del fichero, almacenndose los apuntadores en una tabla de asignacin de ficheros (FAT). Esta tabla tiene tantas casillas como nmero de bloques en los que se ha dividido el disco, y cada una de ellas contendr el puntero al siguiente bloque lgico dentro del disco.
Tabla de ficheros almacenados en disco FAT 1 112 FIN 540 112

370
370

540

rea de Lenguajes y Sistemas Informticos (E.G.R.)

Si el disco es pequeo entonces se puede mantener la tabla FAT en memoria principal. Si el tamao del disco es muy grande, entonces la FAT no se podr mantener en memoria principal siendo necesario tener que ir descargndola y cargndola por partes.

2. Organizacin del espacio (VI)


2.2. Asignacin no contigua. (IV)
2. Asignacin indexada: cada fichero tiene asociada una pequea tabla (ndice) con la que se mantiene la estructura de sus bloques.
Lectura secuencial: se lee la direccin del primer elemento de la tabla de ndices y se accede al primer bloque de datos, luego se lee la direccin del segundo elemento de dicha tabla para leer el segundo bloque de datos, y as sucesivamente. Lectura directa: se realiza buscando en la tabla la direccin del bloque de datos que se desea leer para acceder a l a continuacin.

370 370 540 112 112 540

rea de Lenguajes y Sistemas Informticos (E.G.R.)

2. Organizacin del espacio (VII)


2.2. Asignacin no contigua. (V)
Problema: la tabla de ndices se almacena en otro bloque del disco, limitando el tamao del bloque el tamao de la tabla y como consecuencia el nmero de bloques de datos que compone el fichero. Solucin: cuando el bloque de ndices se completa y el fichero necesita crecer se coloca un segundo nivel de ndices contenido en otro bloque, de forma que la primera entrada de ese bloque direcciona el bloque que contiene la tabla anterior; y la segunda entrada direccionar a la segunda tabla de ndices y as sucesivamente.

Bloques de datos Bloques de ndices


rea de Lenguajes y Sistemas Informticos (E.G.R.)

2. Organizacin del espacio (VIII)


2.3. Gestin del espacio libre. (I)
Tipo de asignacin: 1. Asignacin contigua. Mantener informacin sobre los huecos y tramos ocupados. 2. Asignacin no contigua. Procedimientos: A. mapa del disco: estructura de datos almacenada en una zona concreta del disco, cuyo tamao es de tantos bits como bloques tiene el disco. Los bloques libres se representan con el valor 1 y los bloques ocupados con el valor 0 (o viceversa). B. usar la FAT: los bloques libres estn marcados con algn distintivo.
1 2 NIL FIN NIL 2 NIL

FAT
rea de Lenguajes y Sistemas Informticos (E.G.R.)

370

2. Organizacin del espacio (IX)


2.3. Gestin del espacio libre. (II)
C. lista de bloques libres. Comparacin: Si existen muchos bloques libres, la lista de bloques ocupa ms espacio del disco que el mapa, ya que una direccin ocupa ms que los bits del mapa. Si el disco esta dividido en un gran nmero de bloques, el mapa del disco, por su tamao, no se puede mantener en memoria principal para realizar su gestin, mientras que si se usa una lista de bloques basta con mantener la cabecera de esta en memoria principal, gestionndola como una cola (se elige el primer bloque de la lista).

rea de Lenguajes y Sistemas Informticos (E.G.R.)

3. Gestin de ficheros (I)


3.1. Estructura interna de un directorio. (I)
Un directorio se implementa generalmente mediante una tabla, donde cada fila corresponde a uno de los elementos que cuelga de ese directorio. Con esta tabla se puede obtener: conocimiento sobre los elementos que dependen del directorio; acceso a un elemento directamente: si el elemento es un directorio se obtendr la direccin donde comienza la tabla que lo representa; en caso de que sea un fichero se obtendr la direccin de comienzo de su tabla de ndices o la direccin del primer bloque del fichero, dentro de la FAT o directamente al bloque del disco que lo contiene; localizacin de un fichero o directorio dada su ruta de acceso: se comienza buscando en la tabla del directorio raz la direccin de la segunda referencia del pathname y as sucesivamente hasta hallar el componente requerido o producirse un error debido a que alguna de las referencias no se encuentren en sus respectivas tablas. En dicha tabla se guarda informacin esencial de cada uno de los elementos: tamao del fichero, fecha de creacin y de ltimo acceso, tipo de fichero, etc.
rea de Lenguajes y Sistemas Informticos (E.G.R.)

3. Gestin de ficheros (II)


3.1. Estructura interna de un directorio. (II)
UNIX solo almacena el nombre simblico del fichero y el nmero de inode, ya que adems gestiona la tabla de inodes donde guarda la informacin esencial de cada fichero: tamao, propietario del fichero y las direcciones para localizar los bloques de datos del fichero en el disco. Existen trece direcciones que se ajustan al siguiente esquema: 1
2 3 4 5 6 7 8 9 10 11 12 13

Direcciones directas

. . . . .

. . . .

... ... . . ...

... ...

Indirecta simple Indirecta doble Indirecta triple

... ...

rea de Lenguajes y Sistemas Informticos (E.G.R.)

3. Gestin de ficheros (III)


3.2. Implantacin de enlaces.
Formas de representar un enlace: 1. Se crea un archivo de tipo enlace dependiendo del directorio donde se crea el enlace, cuyo contenido es la ruta absoluta de acceso al archivo al cual se enlaza. Unix almacena en la estructura con la que se implementa el directorio del cual depende el enlace, el nmero del inode del fichero correspondiente, es decir, apunta a la tabla de inodes.

2.

rea de Lenguajes y Sistemas Informticos (E.G.R.)

4. Integridad y proteccin del sistema de ficheros (I)


4.1. Seguridad e integridad. Mtodos. (I)
Definicin: la integridad se refiere a que la informacin que contiene todo el sistema de ficheros debe ser consistente. Problemas: 1. 2. 3. Fallo en la superficie del dispositivo: el sistema de ficheros queda incompleto. Errores en la lectura o escritura de la informacin: el sistema de ficheros queda integro pero no consistente. Fallo del sistema global: el sistema de ficheros queda no consistente.

rea de Lenguajes y Sistemas Informticos (E.G.R.)

4. Integridad y proteccin del sistema de ficheros (II)


4.1. Seguridad e integridad. Mtodos. (II)
Mtodos: 1. Copias de seguridad (backup). Tipos: Copias globales peridicamente: cada cierto tiempo se graba manualmente todo el sistema de ficheros. El proceso de recuperacin consiste en cargar la ltima copia global realizada. Copias incremntales: se realizan copias globales ms espaciadas y durante ese tiempo solo se copian las modificaciones que se producen. Para ello, el Sistema Operativo mantendr la fecha de la ltima vez que se modifico cada componente y tambin la de la ltima copia incremental. El proceso de recuperacin se ralentiza: se carga la ltima copia global y se aade a ella todas la modificaciones que indican las copias incrementales siguientes, siguiendo el mismo orden en que se grabaron.
rea de Lenguajes y Sistemas Informticos (E.G.R.)

4. Integridad y proteccin del sistema de ficheros (III)


4.1. Seguridad e integridad. Mtodos. (III)
2. Tratamiento atmico estable. La informacin del sistema de ficheros esta duplicada en dos conjuntos de dispositivos idnticos. Requiere un mayor nmero de dispositivos (coste) y un mayor tiempo de acceso, ya que se debe realizar las actualizaciones en ambas copias, primero en una de ellas y cuando se compruebe que esta bien hecha, ser el momento en que se actualice la otra copia. Tratamiento diferencial de los ficheros. Asegura la integridad de cada fichero mientras se esta usando, ya que consiste en usar un nuevo bloque para almacenar la informacin modificada de uno ya existente y no rescribirlo.

3.

rea de Lenguajes y Sistemas Informticos (E.G.R.)

4. Integridad y proteccin del sistema de ficheros (IV)


4.1. Seguridad e integridad. Mtodos. (IV)
En asignacin indexada, cada direccin a un bloque tiene un campo que indica si ese bloque esta modificado o no. Si se modifica el contenido del bloque se toma un nuevo bloque, aadiendo su direccin a la tabla y modificando el campo citado anteriormente. Al terminar de trabajar con el fichero es cuando se actualizan las direcciones a los bloques ya modificados, se inicializan el campo modificado a no modificado, y se liberan los bloques antiguos.
Bit Direccin modificado bloque antiguo Direccin bloque nuevo

rea de Lenguajes y Sistemas Informticos (E.G.R.)

4. Integridad y proteccin del sistema de ficheros (V)


4.1. Seguridad e integridad. Mtodos. (V)
4. Utilidades que comprueben la consistencia de la estructura de datos que soporta el sistema de ficheros. Posibles errores que detectan: si un mismo bloque pertenece a dos ficheros distintos, si un bloque designado como libre esta asignado tambin a un fichero, etc. Generalmente estas utilidades se ejecutan cuando se producen errores al acceder a los ficheros. Con estas utilidades no se comprueba la consistencia del contenido de los ficheros.
rea de Lenguajes y Sistemas Informticos (E.G.R.)

4. Integridad y proteccin del sistema de ficheros (VI)


4.2. Proteccin. Mecanismos. (I)
Definicin: la proteccin se refiere al control que debe realizar el Sistema Operativo sobre el uso que hacen los usuarios de la informacin existente en el sistema de ficheros. Mecanismos: 1. Uso de contraseas. La informacin es propiedad de los usuarios no de los procesos, aunque son estos los que piden acceso a esa informacin. El Sistema Operativo determina el usuario al que pertenece cada proceso de la siguiente forma: cuando el usuario se conecta se debe identificar (nombre de usuario y contrasea) y en ese momento se crea un proceso que se le asocia a dicho usuario. Este proceso crear otros procesos dependiendo de l, de forma que todos ellos pertenecen al mismo usuario.
rea de Lenguajes y Sistemas Informticos (E.G.R.)

4. Integridad y proteccin del sistema de ficheros (VII)


4.2. Proteccin. Mecanismos. (II)
2. Lista de control de acceso (ACL). El Sistema Operativo mantiene de cada elemento del sistema una lista de control de acceso formada por pares de usuarios-operaciones permitidas (leer, ejecutar, aadir y modificar), de forma que antes de admitir el acceso de un usuario a un elemento se comprueba si ese usuario esta en la lista de ese elemento y que la operacin que solicita tambin est. Cada vez que se crea un elemento del sistema de ficheros se le asocia una lista de control de acceso por defecto que consiste en el usuario que lo crea con todas las operaciones. Esta lista se puede modificar. Adems, existe un usuario privilegiado (superusuario) que cuando accede a un elemento del sistema de ficheros, el Sistema Operativo no comprueba si esta en la lista de acceso de dicho elemento, permitindole de esta forma acceder a todo el sistema. Es por ello el encargado de realizar las copias de seguridad y de reorganizar el sistema de ficheros.

rea de Lenguajes y Sistemas Informticos (E.G.R.)

También podría gustarte