Sistema de archivos Sistemas operativos. Organizaciones comunes de un archivo Tres tipos de...

25
Sistema de archivos Sistemas operativos

Transcript of Sistema de archivos Sistemas operativos. Organizaciones comunes de un archivo Tres tipos de...

Page 1: Sistema de archivos Sistemas operativos. Organizaciones comunes de un archivo Tres tipos de archivos. (a) Secuencia de bytes. (b) Secuencia de registros.

Sistema de archivos

Sistemas operativos

Page 2: Sistema de archivos Sistemas operativos. Organizaciones comunes de un archivo Tres tipos de archivos. (a) Secuencia de bytes. (b) Secuencia de registros.

Organizaciones comunes de un archivo

1 byte

1 registroZorra CerdoPerro

Vaca PatoGato León BúhoCabra Rata GansoPony

Ibis SapoGallo

Tres tipos de archivos. (a) Secuencia de bytes. (b) Secuencia de registros. (c) Árbol

Page 3: Sistema de archivos Sistemas operativos. Organizaciones comunes de un archivo Tres tipos de archivos. (a) Secuencia de bytes. (b) Secuencia de registros.

Tipos de archivos

La mayoría de los sistemas operativos tienen muchos tipos distintos de archivos, UNIX, por ejemplo, tiene archivos regulares, directorios y archivos especiales (de bloques y caracteres). Los archivos regulares contienen la información que se necesita para dar a los archivos nombres simbólicos (es decir, cadenas ASCII). Los archivos especiales de bloques y de caracteres se utilizan para modelar dispositivos de disco y otros como terminales, respectivamente.

Page 4: Sistema de archivos Sistemas operativos. Organizaciones comunes de un archivo Tres tipos de archivos. (a) Secuencia de bytes. (b) Secuencia de registros.

Directorios

Para llevar el control de los archivos se utilizan directorios, es muchos sistemas, éstos, son archivos. En la figura se muestra un directorio, en él, se tiene una captación por cada archivo.

Entrada

Directorio Información acerca de cada archivo

Entrada

Entrada

Entrada

Nombre del archivoTipo de archivoTamaño del archivoPropietarioInformación de protecciónConteo de usoTiempo de creaciónTiempo de la última modificaciónLista de bloques del disco que se usen

Page 5: Sistema de archivos Sistemas operativos. Organizaciones comunes de un archivo Tres tipos de archivos. (a) Secuencia de bytes. (b) Secuencia de registros.

Configuraciones de directorios

AA

Directorio Archivo

Directorio raízDirectorio raíz

Directorio raíz

CBCB

A A B C CCA CB

B B C C

CC

CC CC

B

B

A

Subdirectorios del usuario

Directorios del usuario

Archivos

(a)

(b)

(c)

Page 6: Sistema de archivos Sistemas operativos. Organizaciones comunes de un archivo Tres tipos de archivos. (a) Secuencia de bytes. (b) Secuencia de registros.

Acceso a directorios

Para el caso árbol se emplean dos métodos de acceso, el nombre de ruta absoluto y el nombre de ruta relativa. Para este último se requiere la definición de el directorio de trabajo.

Nombre absoluto: incluyendo todos los directorios, ej.: /usr/lupe/agenda.c

Nombre relativo: referente al directorio de trabajo, ej.: notas/c/tar1.txt

Page 7: Sistema de archivos Sistemas operativos. Organizaciones comunes de un archivo Tres tipos de archivos. (a) Secuencia de bytes. (b) Secuencia de registros.

Diseño del sistema de archivo

Se utilizan dos métodos para controlar el espacio libre en el disco, uno es la lista enlazada y el otro el mapa de bits.

Para bloques de 1K y un disco de 20MB se necesitan 40 bloques máximo para contener los 20000 número de bloques del disco en una lista enlazada.

Usando mapas de bits solo se necesitarán 3 bloques (20000 bits / (8 bits/bytes) = 2500 bytes = 3 bloques de 1K).

Page 8: Sistema de archivos Sistemas operativos. Organizaciones comunes de un archivo Tres tipos de archivos. (a) Secuencia de bytes. (b) Secuencia de registros.

421362109741632148262

310516

230162612342214160664216320

180482

86234897422140223223160126

142141

Bloques libres del disco: 16,17,18

Un bloque del disco de 1K puede contener 512 númerosde bloques de disco de 16 bits

100110110110110001101101111101111010110110110110011011011011101111101110111011111101101010001111000011101101011110111011011011111100100011101111

01110111011101111101111101110111

Un mapa de bits

(a) (b)

Page 9: Sistema de archivos Sistemas operativos. Organizaciones comunes de un archivo Tres tipos de archivos. (a) Secuencia de bytes. (b) Secuencia de registros.

Almacenamiento de los archivos Esquema de asignación de bloques de ms-dos

Las entradas 0 y 1 se utilizan para especificar el tamaño del disco. Los código EOF y FREE se utilizan para las captaciones fin de

archivo y libre, respectivamente.

XX

EOF13298

FREE4123

FREEEOFEOFFREEBAD

01234

67

5

89101112131415

FATTamaño deldisco

Archivo A:

Archivo B:

Archivo C:

6 8 4 2

5 9 12

10 3 13

Este bloque se marca como bloque erróneo

Page 10: Sistema de archivos Sistemas operativos. Organizaciones comunes de un archivo Tres tipos de archivos. (a) Secuencia de bytes. (b) Secuencia de registros.

continuación

Este esquema se diseño para discos de 320K con un bloque de 1K. Los números de los bloques son de 12 bits, de modo que la FAT de 320 captaciones requiere 480 bytes (1 bloque). Con discos de 360K se requieren 540 bytes (2 bloque). Con más de 4096 bloques, se reqiere un número mayor de 12 bits para representarlos.

Page 11: Sistema de archivos Sistemas operativos. Organizaciones comunes de un archivo Tres tipos de archivos. (a) Secuencia de bytes. (b) Secuencia de registros.

Esquema de UNIX

El esquema de UNIX es diferente, en éste se tiene con cada archivo una tabla pequeña llamada nodo i como se muestra en la figura siguiente. Esta contiene la información contable y de protección. En el nodo i se conservar apuntadores a 10 bloques del disco, cuando un archivo tiene más de 10 bloques, se adquiere un bloque del disco libre y se coloca un apuntador hacia él. Este bloque se usa para contener apuntadores a los bloques del disco. Con bloques de 1K y direcciones del disco de 32 bits, el bloque indirecto puede contener 256 direcciones del disco. Este esquema basta para archivos de 266 bloques.

Page 12: Sistema de archivos Sistemas operativos. Organizaciones comunes de un archivo Tres tipos de archivos. (a) Secuencia de bytes. (b) Secuencia de registros.

Estructura de un nodo i

Nodo del archivoNúmero de enlaces del archivo

Uid del propietarioGid del propietarioTamaño del archivoTiempo de creación

Tiempo del último accesoTiempo de la última modificación

10 números de bloque del disco

Indirecto individualIndirecto dobleIndirecto triple

Apuntadores aa bloques de datos

Apuntadores aa bloques de datos

.

Apuntadores aa bloques de datos

Nodo i

Page 13: Sistema de archivos Sistemas operativos. Organizaciones comunes de un archivo Tres tipos de archivos. (a) Secuencia de bytes. (b) Secuencia de registros.

continuación

Después de 266 bloques, el apuntador doble indirecto se utiliza para apuntar a un bloque de disco de hasta 256 apuntadores. Estos apuntadores no apuntan a bloques de datos sino que a 256 bloques indirectos individuales. El bloque indirecto doble basta para archivos hasta de 266 + 2562 = 65802. Para archivos de más de 64 MB, se utiliza el apuntador triple indirecto para apuntar a un bloque que contiene apuntadores a 256 bloques indirectos dobles. Archivos de más de 16 GB no se pueden manejar.

Page 14: Sistema de archivos Sistemas operativos. Organizaciones comunes de un archivo Tres tipos de archivos. (a) Secuencia de bytes. (b) Secuencia de registros.

Estructura del directorio

Cuando un archivo se abre, el sistema operativo utiliza el nombre de ruta proporcionado por el usuario para localizar los bloques del disco, de manera que se puedan leer y escribir más adelante.

Esquema de CP/M

Nombre del archivo

Códigodel usuario

Tipo del archivo(extensión)

Grado

Conteodel bloque

Números de bloque del disco

1 8 3 1 2 16Bytes

Page 15: Sistema de archivos Sistemas operativos. Organizaciones comunes de un archivo Tres tipos de archivos. (a) Secuencia de bytes. (b) Secuencia de registros.

Directorio en MS-DOS

Nombre

Extensión

Atributos

1 8 3 1 10Bytes

Tamaño

Reservado TiempoFecha

Primer númerode bloque

2 2 2 4

El directorio raíz puede tener 112 entradas en un disco de 360K.

Page 16: Sistema de archivos Sistemas operativos. Organizaciones comunes de un archivo Tres tipos de archivos. (a) Secuencia de bytes. (b) Secuencia de registros.

Directorio en UNIX

Cada entrada contiene un nombre de archivo y su número de nodo i. Los directorios de unix son archivos y pueden contener muchas de estas entradas.

Nombre del archivo

2Bytes 14

Número del nodo i

Page 17: Sistema de archivos Sistemas operativos. Organizaciones comunes de un archivo Tres tipos de archivos. (a) Secuencia de bytes. (b) Secuencia de registros.

Localización en UNIX

Para localizar un archivo se sigue el siguiente algoritmo. Por ejemplo para localizar /usr/mbox, unix localiza el nodo i, el cual está en un lugar fijo del disco. Después busca la primera componente de la ruta, usr, en el diretorio raíz con objeto de hallar el nodo i del archivo /usr. A partir de este nodo i, el sistema localiza el directorio de /usr y busca la siguiente componente, ast, en él. Cuando ha encontrado la entrada de ast, éste tiene el nodo i del directorio /usr/ast. A paritir de este nodo i, puede hallar el directorio mismo y buscar mbox. El nodo i de este archivo se lee después en la memoria y se guarda ahí hasta que el archivo se cierra.

Page 18: Sistema de archivos Sistemas operativos. Organizaciones comunes de un archivo Tres tipos de archivos. (a) Secuencia de bytes. (b) Secuencia de registros.

continuación

1

Directorio raíz

.1 ..4 bin7 dev14 lib9 etc6 usr8 tmp

La búsqueda deusr produce elnodo i 6

El nodo i 6

132

modotamañotiempos

es de /usr

El nodo i 6indica que/usr está enel bloque 132

6

es el directorio

.1 ..19 dick30 erik51 jim26 ast45 bal

/usr/astes el nodo i26

El nodo i 26

406

modotamañotiempos

es de /usr/ast

El nodo i 26indica que/usr/ast esel bloque 406

El bloque 132

de /usr

26

es el directorio

.6 ..64 grants92 books60 mbox81 minix17 src

/usr/ast/mboxes el nodo i60

El bloque 406

de /usr/ast

Page 19: Sistema de archivos Sistemas operativos. Organizaciones comunes de un archivo Tres tipos de archivos. (a) Secuencia de bytes. (b) Secuencia de registros.

Archivos compartidos

Se utilizan dos enfoques para el manejo de archivos compartidos. El primero consiste en generar una nueva ruta al nodo i, en este caso se lleva en el nodo la contabilidad de las rutas hacia ese nodo i. Cuando se elimina un enlace, simplemente se decrementa este contador, si el resultado es cero, el archivo es eliminado del disco.

La otra forma es crear un enlace símbolico, el nuevo archivo simplemente contiene la ruta hacia el archivo al cual se enlazará.

Page 20: Sistema de archivos Sistemas operativos. Organizaciones comunes de un archivo Tres tipos de archivos. (a) Secuencia de bytes. (b) Secuencia de registros.

continuación

Directorio raíz

A CB

B B C C

CC

CC CC

B

B

A

Archivos compartidos

Page 21: Sistema de archivos Sistemas operativos. Organizaciones comunes de un archivo Tres tipos de archivos. (a) Secuencia de bytes. (b) Secuencia de registros.

Confiabilidad del sistema de archivos

Respaldos

Para respaldar la información puede usarse un disco imagen. Este contiene la misma información que el original, si se pierde el original, se puede recuperar la información a partir de la imagen. Otras formas de respaldo son: los disquettes de respaldo, cinta magnética, etc.

Consistencia del sistema de archivo

Cuando ocurre una falla de energía, puede darse el caso que la información del disco pierda consistencia. En la figura se muestran las posibles inconsistencias.

Page 22: Sistema de archivos Sistemas operativos. Organizaciones comunes de un archivo Tres tipos de archivos. (a) Secuencia de bytes. (b) Secuencia de registros.

continuación

1 1 0 1 0 1 1 1 1 0 0 1 1 1 0 0

0 0 1 0 1 0 0 0 0 1 1 0 0 0 1 1

0 1 2 3 4 5 6 7 8 10 11 129 14 1513

Bloques en uso

Bloques libres

Número del bloque

(a)

1 1 0 1 0 1 1 1 1 0 0 1 1 1 0 0

0 0 0 0 1 0 0 0 0 1 1 0 0 0 1 1

0 1 2 3 4 5 6 7 8 10 11 129 14 1513

Bloques en uso

Bloques libres

(b)

1 1 0 1 0 1 1 1 1 0 0 1 1 1 0 0

0 0 1 0 2 0 0 0 0 1 1 0 0 0 1 1

0 1 2 3 4 5 6 7 8 10 11 129 14 1513

Bloques en uso

Bloques libres

(c)

1 1 0 1 0 2 1 1 1 0 0 1 1 1 0 0

0 0 1 0 1 0 0 0 0 1 1 0 0 0 1 1

0 1 2 3 4 5 6 7 8 10 11 129 14 1513

Bloques en uso

Bloques libres

(d)

Estados de un sistema de archivo.

(a) Consistente.

(b) Bloque faltante.

(c) Bloque duplicado en la lista libre.

(d) Bloque de datos duplicado.

Page 23: Sistema de archivos Sistemas operativos. Organizaciones comunes de un archivo Tres tipos de archivos. (a) Secuencia de bytes. (b) Secuencia de registros.

Panorama general del sistema de archivos en MINIX

Bloque de carga

Super bloque Nodos i

Nodos i

Mapa de bits del nodo i

Mapa de bits de la zona

Datos

Un bloque del disco

...

Esquema de un disco flexible de 360K, con 127 nodos i y un tamaño de boque de 1k.

Page 24: Sistema de archivos Sistemas operativos. Organizaciones comunes de un archivo Tres tipos de archivos. (a) Secuencia de bytes. (b) Secuencia de registros.

Superbloque de MINIX

Número de nodos

Número de zonas

Número de bloques del mapa de bits del nodo i

Número de bloques del mapa de bits de la zona

Primera zona de datos

Log 2 (tamaño de la zona/tamaño del bloque)

Tamaño máximo del archivo

Número mágico

Apuntador al bloque del mapa de bits del nodo i

.

Apuntador al bloque del mapa de bits de la zona

.

Número del dispositivo del superbloque

Nodo i del sistema de archivos montado

Nodo i montado

Tiempo de la última actualización

Señal sólo de lectura/Señal de sucio

01011011101101110011011011101110....

1011011111111011101101110101011111111011....

Mapa de bits del nodo i

Mapa de bits de la zona

Presente en la memoria pero no en el disco

Presente en el disco y la memoria

Page 25: Sistema de archivos Sistemas operativos. Organizaciones comunes de un archivo Tres tipos de archivos. (a) Secuencia de bytes. (b) Secuencia de registros.

Nodo iModo

Uid

Tamaño del archivo

Tiempo de la última modofocación

Enlaces Gid

Número 0 de la zona

Número 1 de la zona

Número 2 de la zona

Número 3 de la zona

Número 4 de la zona

Número 5 de la zona

Número 6 de la zona

Indirecto

Indirecto doble

32 bytes

16 bitsTipo de archivo y bits RWX

Identifica al usuario que posee el archivo

Número de bytes en el archivo

En segundos, desde el 1 de enero de 1970

Directorios que listan este grupo del nodo i/Propietario

Números de zona de las primeras 7 zonas de datos del archivo

Solo se utiliza para archivos mayores que 7 zonas