Cuando se habla de sistemas de archivos uno hace referencia a
varios conceptos relacionados: archivos de oficinas, libros e informática
principalmente. Cada oficina tiene una manera de clasificar sus expedientes,
generalmente en función a ciertas necesidades de los usuarios. En
bibliotecología y ramas afines se usa la clasificación Dewey que por cierto se
puede aplicar en muchas otras áreas, inclusive en el ámbito de oficinas. En
informática existen muchas formas de archivar la información pero existe un
protocolo que siguen todos los sistemas de archivos.
Lo primero que tenemos que
saber es que existen varios tipos de archivos informáticos o ficheros: los
archivos que contienen a otros archivos y se denominan directorios; luego están
los ficheros de datos y los ficheros de programas. Dentro de los primeros están
los ficheros de hojas de calculo, los de texto, de imágenes y similares. Dentro
de los ficheros de programas están los sistemas operativos, las suite
ofimáticas, juegos y demás programas. La información se guarda en dispositivos
como discos duros, memorias usb o llaves usb, discos ópticos, discos flexibles
(que están despareciendo), cintas magnéticas (que todavía se usan mucho) y
otros. El problema siempre ha sido el ¿cómo localizar un fichero? Para ello en
una sección de los discos duros (usaré el ejemplo más corriente) se lleva una
lista de los archivos y directorios que allí se encuentran. En esa lista se
designa la dirección y nombre del disco duro. Claro como cuando vamos a una
ciudad nueva, lo primero que buscamos son las direcciones de nuestros amigos (si
es el caso de vamos a visitar amigos). El sistema operativo lee la dirección de
los archivos y así los localiza en el disco duro. El ejemplo clásico sería “/carlos/manuel/solano.txt”
que traduciríamos así : en la carpeta “carlos” hay una carpeta “manuel” y en
ella se encuentra el archivo “solano.txt” .
Todos los sistemas operativos van a utilizar este tipo de
direcciones para localizar los archivos. Sin embargo la forma en que almacenan
esta información depende del “formato” que se le da al disco duro, por ello
muchos al hablar de sistema de archivos también hablan del formato. Para ello es
casi que seguro que cada sistema operativo puede “leer” varios formatos, pero
suelen utilizar un número limitado. Por ejemplo el DOS utilizó el formato FAT12
y luego el FAT16, para cuando llega el Windows 95 se empieza a utilizar el
FAT32, que luego se desecha con el Windows XP, aunque lo soporta (lo puede leer
y utilizar). Este Formato es muy sencillo y es popular en los dispositivos
portátiles como las memorias usb. El término quiere decir “File Allocation Table”
y traducido quiere decir tabla de localización de archivos. El sistema fue
sustituido por el NTFS que se usa actualmente en el Windows XP, Windosws Vista y
Windows 7. Al acrónimo quiere decir Sistema de archivos en red (NeT File System)
aunque si voy a ser sincero nunca se ha dicho las siglas NT sean del término
“NeT” pero se usaron por primera vez para los sistemas operativos que trabajaban
en servidores y por tanto en red.
Otros sistemas operativos también tienen sus historias con
sus propios sistemas de archivos HFS y HFS+ en Mac; ext2, ext3, ext4, JFS,
ReiserFS y XFS en Linux y UFS, ZFS en Solaris, por citar los ejemplos más
importantes. Es bueno citar una crítica entre estos sistemas de archivos
(derivados de UNIX) y los primeros (derivados de DOS). Los sistemas derivados de
DOS almacenan los archivos en forma casi lineal, a semejanza de las hojas de
papel continuo o formularios continuos que son usados por la impresoras de
matriz de puntos. Pues cuando se toma un archivo y se hace más grande ya no va a
caber en el espacio original y se tiene que colocar en otro sitio quedando
espacios vacíos. A esto se llama fragmentar un disco y entonces periódicamente
hay de defragmentar el disco, proceso que requiere de todos los recursos del
disco y hace perder tiempo valioso pues no se puede hacer otro trabajo.
En los
sistemas UNIX la información se almacena a manera de libros en un estante de
biblioteca y si el libro se agranda pues se puede colocar en el mismo lugar pues
no tiene un “espacio limitado ” pero sí determinado. Esto evita que los discos
se fragmenten con frecuencia y hay que defragmentarlos menos o casi nunca. Otra
crítica que tiene que ver con las políticas de las empresas, es que los sistemas
UNIX dan soporte de lectura y escritura a los sistemas DOS pero no lo contrario
y si lo dan hay que pagarlo. Esto provoca limitaciones en el intercambio de
información que muchos denominan con el eufemismo de “incompatibilidad”.
Quiero
añadir una nota personal sobre estos dos aspectos. Sobre la defragmetación de un
disco puedo decir que en los archivos NTFS es mucho menor que en los archivos
FAT pero tengo más de nueve años de utilizar sistemas Linux y en ese tiempo no
he tenido la necesidad de defragmentar nunca un disco duro, esto redunda mucho
en la vida útil de estos aparatos y en una menor posibilidad de perder datos en
un momento dado. También la pérdida de información en un apagón suele ser menor
en sistemas UNIX pero en los NTFS también ha mejorado mucho en comparación.
Por último sobre las políticas de las empresas es una
verdadera lástima que se mantenga un hermetismo y se tenga que recurrir a trucos
como particiones compartidas en red para intercambiar información entre un sistema de archivos
y otro diferente. Y si esto se aplica a nivel de programas se amplifica mucho más el
problema, ahora si pensamos que un simple parche podría eliminar la
“incompatibilidad” mejorando la experiencia de los clientes y ampliando la
funcionalidad del sistema operativo entonces nos enfrentamos a un pequeño
absurdo que nunca he podido entender.