La parte ms visible de un sistema operativo es el sistema de
archivos. La mayora de los programas leen o escriben cuando menos un archivo y los usuarios siempre tienen conocimiento de la existencia de archivos y sus propiedades. Para muchas personas, la comodidad y utilidad del sistema operativo dependen principalmente de la interfaz, estructura y confiabilidad del sistema de archivos. Estructuras de un Disco Duro Los archivos normalmente se almacenan en disco, de manera que el manejo del espacio de disco es de inters fundamental para los diseadores de sistemas. En todo disco siempre hay que diferenciar entre su estructura fsica y su estructura lgica. Estructura fsica. La estructura fsica es inherente al disco y se crea cuando se construye el disco en la fabrica, asignndole un numero determinado de caras, cilindros (pistas) y sectores. Las caras o cabezas (heads) son los lados del disco en los que se puede informacin. En un CD- ROM se lee una cara, en un disquete hay dos caras y en un disco duro puede haber varias, por ejemplo, 16 caras, porque estn formados por varios platos de disco (cada uno con su correspondiente cabeza de lectura/escritura). A su vez, cada cara de un disco est dividida en crculos concntricos llamados pistas (tracks) en los disquetes y cilindros (cylinders) en los discos duros. Finalmente, cada pista o cilindro se divide en segmentos llamados sectores y el mayor o menor numero de sectores por pista define la densidad del disco. Un sector es la unidad mnima de informacin que puede tratar la estructura fsica del disco y, normalmente, tiene espacio para almacenar 512 bytes de datos. Estructura lgica. La estructura lgica se crea cuando se formatea el disco y su funcin es organizar la superficie del disco para almacenar datos. La estructura lgica depende del sistema operativo que formatea el disco y, generalmente, divide el disco en un sector de arranque, una tabla de localizacin de archivos (FAT) y el rea para los datos del usuario. El sector de arranque (boot sector) es el primer sector (512 bytes) y se encarga de comenzar el arranque del sistema operativo (o mostrar el mensaje de error No es disco de sistema cuando el disco no esta preparado para arrancar un sistema operativo). Se reserva un espacio para la FAT y el resto se deja para almacenar los datos del usuario (incluyendo el directorio raz de la unidad). Organizacin lgica de un disco duro El Cluster Clusters de un disco duro Se ha comentado que el sector es la unidad mnima de informacin desde el punto de vista de la estructura fsica, pero el sistema operativo, ya sea DOS o Windows, no entiende de sectores y slo trabaja con clusters. Un cluster no es ms que un conjunto de varios sectores contiguos del disco (y recuerde que un sector es un bloque de 512 bytes), por ejemplo, ocho sectores contiguos. El nmero de sectores contiguos que tiene un cluster, es decir, el tamao del cluster, vara en cada unidad de disco y depende del tamao de la unidad (cuanto ms grande sea la unidad, ms grande ser el tamao del cluster), pero siempre es potencia de 2 (1, 2, 4, 8, etc). Cuando se graba un archivo en un disco, el sistema operativo no lo graba en el sector xx de la pista xx de la cara xx, sino en el cluster nmero xx. Como mnimo, cualquier archivo ocupa un cluster. En definitiva, el cluster es la unidad mnima de informacin desde el punto de vista de la estructura lgica del disco, que es la que cuenta para el sistema operativo. El Directorio Raz La tercera zona del disco que se crea en la estructura lgica es el directorio raz, que ocupa un numero fijo de sectores y se sita detrs del ltimo sector de la FAT. Qu se almacena en los sectores del directorio raz? Pues una entrada de 32 bytes por cada elemento que posee el directorio raz. Estos 32 bytes contienen algunos de los datos que se muestran al ejecutar la orden DIR (nombre, extensin, tamao, fecha y hora), as como el estado de los atributos del elemento y el cluster de inicio de dicho elemento. Sin embargo, antes de continuar explicando qu es la zona del directorio raz conviene definir con precisin el concepto de directorio. Para el DOS, un directorio es simplemente un fichero especial que tiene activado el atributo de directorio y cuyo contenido son las entradas (los 32 bytes) correspondientes a cada elemento que se almacena en dicho directorio. Por ejemplo, si el directorio C:\TEXTOS posee los ficheros FICH1.TXT y FICH2.TXT, esto quiere decir que en el directorio raz existe un fichero llamado TEXTOS cuyo contenido son 64 bytes (32 bytes para la entrada de directorio de FICH1.TXT y 32 bytes para la entrada de FICH2.TXT). Estrategias de almacenamiento Son posibles dos estrategias generales para almacenar un archivo de n bytes: Se distribuyen n bytes consecutivos de espacio del disco o bien el archivo se divide en varios bloques (no necesariamente) contiguos. Una vez que se ha decidido almacenar archivos en bloques de tamao fijo, surge la pregunta de cun grande debe ser el bloque. Dada la forma en que se organizan los discos, el sector, la pista y el cilindro son candidatos claros para la unidad de asignacin. Si un archivo consta de una sucesin de bloques, el sistema de archivo debe contar con alguna manera de llevar el control de los bloques de cada archivo. La forma ms evidente suele no ser viable porque los archivos pueden crecer. De hecho, fue precisamente ste problema el que nos llev a dividir los archivos en bloques en primer trmino. Un mtodo que resulta adecuado consiste en almacenar los bloques de un archivo como una lista enlazada. Cada bloque del disco de 1024 bytes contiene 1022 bytes de datos y un apuntador de 2 bytes al siguiente bloque de la cadena. Sin embargo, ste mtodo tiene dos desventajas: Primero, el nmero de bytes de datos en un bloque ya no es una potencia de dos, lo que con frecuencia es una molestia. Segundo y ms grave, el acceso al azar es costoso de implementar. Si un programa hace la localizacin del byte 32786 y despus inicia la lectura, el sistema operativo tiene que hallar su camino a travs de 32768/1022 o 33 bloques para hallar los datos que se necesitan. Tener que leer 33 bloques para hacer la localizacin es ineficiente. Pese a ello, la idea de representar un archivo como una lista enlazada puede salvarse si se conservan los apuntadores en la memoria. Tipos de sistemas de archivos Cada sistema operativo utiliza su propio sistema de archivos (file system), que indica cmo se almacenan los archivos en el disco. Los tipos de sistemas de archivos ms utilizados son los siguientes: FAT16. La FAT original del sistema operativo MS-DOS y que, normalmente, soportan todos los sistemas operativos. Se llama FAT16 porque utiliza 16 bits para cada elemento de la FAT. VFAT. La FAT incluida en Windows 95. Es igual que la FAT16, pero con soporte para nombres largos de archivo y funcionamiento en modo protegido. Normalmente, no se suele realizar distincin entre FAT16 y VFAT, al revs, para evitar confusiones, es recomendable que se olvide la VFAT y piense que la FAT16 es la utilizada tanto en MS-DOS como en Windows 95. FAT32. La FAT especifica de Windows (aunque ya exista en Windows 95 OSR2, la versin de Windows 95 que se venda con ordenadores nuevos desde 1997). Como su nombre indica, utiliza 32 bits para cada elemento. NTFS. (NT File System). El sistema de archivos de Windows NT, que incluye caractersticas de proteccin a nivel archivo. HPFS. (High Performance File System. El sistema de archivos del sistema operativo OS/2, que tambin posee caractersticas avanzadas de seguridad y proteccin. NODO-I. El sistema de archivos del sistema operativo UNIX, que incluye caractersticas de seguridad, proteccin y enlace de archivos. CDFS. (CD-ROM File System). El sistema de archivos utilizados en las unidades CD-ROM para ser reconocidas como unidades lgicas dentro de un ordenador. UDF. (Universal Disk File System). El sistema de archivos utilizado en los discos DVD-Video (slo permite lectura, no escritura). Un Sistema de listas enlazadas. Nodo-i El meollo del problema de la FAT es que los punteros de todos los ficheros del disco estn mezclados de forma aleatoria en al misma tabla. Esto quiere decir que puede hacer falta la FAT completa, aunque slo se haya abierto un fichero. Un mtodo mejor sera tener listas de bloques de los diferentes ficheros en sitios distintos, que es lo que hace UNIX. Cada fichero UNIX tiene una pequea tabla asociada (en disco), llamada nodo-i, como muestra la figura, que contiene informacin de proteccin y de facturacin. Todas las direcciones de los bloques se guardan en el nodo-i, lo que facilita su localizacin. Estructura de un nodo-i Cuando un fichero tiene ms de 10 bloques de disco, se adquiere un bloque libre y se pone el puntero indirecto simple apuntndole. Este bloque se usa para contener punteros a bloques de disco. Para bloques de 1K y direcciones de disco de 32 bits, el bloque indirecto simple puede contener hasta 256 direcciones de disco. Este mtodo es suficiente para ficheros de hasta 266 bloques (10 en el nodo-i y 256 en el bloque indirecto simple). LA FAT Los archivos se guardan en clusters, pero esos clusters no tienen por qu ser contiguos (consecutivos). Imagine un disco duro cuyo tamao son 10 MB y en el que se copian diez archivos de 1 MB cada uno, llenando todo el disco. Suponga ahora que borra los archivos colocados en la posicin 1, 3, 5, 7 y 9; es decir, el disco duro tendra 5 MB ocupados y 5 MB libres. Pues bien, si se guardaran los archivos en clusters contiguos, no seria posible copiar en ese disco un archivo de 1.1 MB, pues el sistema operativo utiliza los clusters libres de todo el disco. Ahora bien, cmo sabe el sistema operativo cul es la cadena de clusters de un archivo, por ejemplo, cul es el primer cluster de un archivo y en qu cluster contina? El primer cluster de un archivo aparece en la entrada de directorio del archivo, junto con otros datos como el nombre, la extensin, el tamao, la fecha de creacin y los atributos del archivo. Y para saber cules son los clusters siguientes de un archivo se utiliza la FAT (File Allocation Table; tabla de localizacin de archivos). La FAT es una tabla formada por elementos que se corresponden con cada uno de los clusters del disco. Es decir, el elemento situado en la posicin 40 de la FAT controla el cluster 40 del disco (que a su ve corresponder a unos determinados sectores del disco). Cada elemento de la FAT puede tener uno de los tres valores siguientes: Una marca especial (el valor 0) para indicar que se trata de un cluster libre; es decir, que los sectores gobernados por ese cluster no tiene datos. Una marca especial para indicar que se trata del ltimo cluster de un archivo; es decir, que los sectores de ese cluster almacenan la parte final del archivo. Cualquier otro valor numrico se interpreta como el cluster siguiente del archivo. Por ejemplo, si el elemento 135 de la FAT tiene el valor 227, quiere decir que detrs de los sectores del cluster 135, el archivo continua con los sectores del cluster 227. En definitiva, la FAT es una tabla que permite al sistema operativo utilizar clusters no consecutivos para almacenar los archivos. Si por cualquier motivo se corrompe la FAT posiblemente perder gran parte de sus datos, ya que el sistema operativo no sabr dnde continua un archivo y donde termina. Es tal la importancia de la FAT, que normalmente se guardan 2 copias de la FAT para recuperar los datos en caso de que se corrompa una de las copias. Organizacin conceptual Existe una correspondencia uno a uno entre las entradas de la FAT y los bloques del disco, excepto por las primeras dos entradas de la FAT, que codifican la clase del disco. En este ejemplo, mostramos tres archivos A, B y C. El archivo A comienza en el bloque 6. El dato de la FAT para 6 es 8, lo que significa que el segundo bloque del archivo es el bloque 8. La entrada de la FAT para 8 es 4, lo que indica que el siguiente bloque es 4. El dato de la FAT para 4 es 2. Por ultimo, el dato para 2 es un cdigo especial que indica el fin del archivo. As, con el nmero del primer bloque de un archivo, es posible localizar todos los dems bloques, al seguir la cadena a travs de la FAT. El dato del directorio para cada archivo contiene el bloque inicial y la FAT proporciona el resto de la cadena. Tabla de distribucin de archivos FAT 16 La FAT 16 es el sistema de archivos de MS-DOS y Windows 95 y se caracteriza por utilizar 16 bits para los nmeros de cluster. La FAT 16 tiene dos inconvenientes muy importantes, casi fundamentales. En primer lugar, se utilizan unos clusters demasiado grandes y, en segundo lugar, no permite crear unidades superiores a 2 GB. Clusters muy grandes Las unidades con FAT 16 utilizan unos clusters que tienen un tamao excesivamente grande, lo que supone un desperdicio importante del espacio libre en el disco duro. La tabla siguiente muestra el tamao del cluster segn el tamao de la unidad del disco y advierta que las unidades de ms de 512 MB, algo muy habitual hoy en da, tienen clusters de 16 KB (incluso 32 KB si tiene ms de 1 GB). Puede comprobar el tamao del cluster en sus unidades de disco ejecutando el programa ScanDisk (o la orden CHKDSK del DOS), pues al finalizar aparece una ventana de informacin donde se indican los bytes utilizados en cada cluster (en la terminologa de Microsoft no se habla de clusters, traducindose como unidad de asignacin; por ejemplo, la frase 8.192 bytes en cada unidad de asignacin indica que el tamao del cluster es 8 KB). Tamao unidad FAT 16 Tamao del cluster Menos de 128 MB 2 KB 128 a 255 MB 4 KB 256 MB a 511 MB 8 KB 512 MB a 1 GB 16 KB 1 GB a 2 GB 32 KB Suponga que tiene una unidad de disco duro que utiliza clusters de 16 KB. Si en ese disco duro crea un archivo de texto que solo tiene las letras HOLA, ese archivo de texto tendr un tamao de 4 bytes, pero en el disco duro ocupar un cluster entero, es decir, 16 KB, lo que supone una prdida de espacio de ms de 15 KB. Y no piense que se trata tan slo de los archivos pequeos, sino que la prdida se produce en todos los archivos, aunque en unos ms y en otros menos; por ejemplo, si en su disco duro guarda un archivo de 161 KB, se utilizar once cluster(total 176 KB), producindose una prdida de 15 KB de espacio inutilizado. Dependiendo de los archivos que usted guarde la prdida de espacio ser mayor o menor, pero piense en las cifras siguientes: imagine una unidad de 2 GB que posee 20.000 archivos (lo cual es muy habitual); puesto que el tamao del cluster en una unidad de 2 GB es 32 KB, la prdida media por archivo son 16 KB, que multiplicados por 20.000 archivos arroja una prdida media de espacio total de 320 MB, cantidad bastante importante. Para saber cul es la prdida real de espacio de sus unidades de disco puede consultar las Propiedades de un archivo (o una carpeta), que muestran en el campo Tamao tanto el tamao real del archivo como el tamao que se gasta en los clusters del disco. Por ejemplo, la figura siguiente muestra una carpeta con 46 archivos cuyo tamao real es de 100 KB pero que ocupa en un disco un total de 184 KB, por lo cual hay una perdida de espacio de uno 84 KB. Por supuesto, si se quiere conocer la prdida de espacio de toda la unidad de disco duro se puede seleccionar todos los elementos de la carpeta raz de la unidad, abrir el men contextual de cualquiera de los elementos seleccionados y elegir el comando Propiedades. No permite crear unidades superiores a 2 GB La FAT 16 no permite crear unidades de disco superiores a 2 GB (superiores a 2047 MB). Esto no quiere decir que los sistemas operativos que trabajen con FAT 16 sean incapaces de gestionar discos duros superiores a 2 GB, sino que la unidad de disco lgica (no el disco duro fsico) no puede ser mayor de 2 GB. El disco se puede dividir en varias particiones, creando de esta forma diferentes unidades lgicas. Pues bien, si quiere que alguna de esas unidades tenga ms de 2 GB, no puede usar FAT 16 y tiene que optar por FAT 32. Cul es la razn de este lmite de la FAT 16? Muy sencillo. Usted ya sabe que las unidades FAT 16 utilizan una tabla de elementos con nmeros de 16 bits y que cada elemento controla un cluster de la unidad, lo que permite un mximo de 216 (65.536) clusters en un disco FAT 16. Tambin sabe que las unidades de ms de 1 GB utilizan un cluster de 32 KB. Por tanto, si hay 65.536 clusters de 32 KB cada uno, el tamao mximo es 2.097.152 KB, que corresponde a 2047 MB (2 GB). FAT 32 La FAT 32 es una tabla de localizacin de archivos que utiliza 32 bitas para los numero de cluster. Como se puede imaginar, la FAT 32 resuelve los problemas de la FAT 16, aunque sea a costa de pagar el precio de cierta incompatibilidad. Las principales caractersticas de la FAT 32 son las siguientes: Unidades de ms de 2 GB. Si se utiliza FAT 32 puede crear unidades de disco con ms de 2 GB, lo que es interesante en muchos casos, sobre todo ahora que todos los discos duros que se venden superan con creces ese tamao. Clusters ms pequeos. La FAT 32 utiliza clusters mucho ms pequeos que la FAT 16, lo que evita los problemas de prdida de espacio mencionados anteriormente. Por ejemplo, las unidades hasta 8 GB usan clusters de 4 KB. La tabla siguiente recoge el tamao del cluster en funcin del tamao de la unidad. Tamao unidad FAT 32 Tamao del cluster 513 MB a 8 GB 4 KB 8 GB a 16 GB 8 KB 16 GB a 32 GB 16 KB Ms de 32 GB 32 KB Velocidad. La Fat 32 ofrece la misma velocidad que FAT 16 al trabajar desde Windows. Sin embargo, la FAT 32 es ms lenta cuando se trabaja en aplicaciones DOS o en modo DOS. No es compatible con FAT 16. Si se arranca el ordenador con un sistema operativo que no soporta FAT 32, por ejemplo, MS-DOS 6.2, Windows NT 4.0, Windows 3.1 o la versin original de Windows 95, no podr acceder a los datos de la unidad FAT 32. Las unidades FAT 32 no se pueden comprimir, pues Drivespace no soporta FAT 32. No se puede usar en unidades de menos de 512 MB. Slo es posible crear una FAT 32 en las unidades de disco cuyo tamao sea superior a 512 MB. Es decir, todas las unidades de menos de 512 MB siempre utilizan FAT 16. Pros y contras de FAT 32 Ventajas La principal ventaja es que FAT 32 usa el espacio del disco duro de forma ms eficiente (no est de ms recordar que ese disco interno es el sitio en el que el PC guarda los programas y la informacin). La razn est en que FAT 32 usa clusters ms pequeos. Los clusters de FAT 32 en discos duros de hasta 8 GB son de 4 KB; en cambio los clusters de FAT 16 son de 32 KB (en discos duros de ms de 1 GB). Tener clusters ms grandes desperdicia espacio en el disco duro porque cada archivo est obligado a usar clusters completos. Por ejemplo, un archivo de 10 KB ocupa un cluster de 32 KB completo, o sea que desperdicia 22 KB de espacio. En cambio, en FAT 32 ese mismo archivo ocupa tres clusters de 4 KB; slo se desperdician 2 KB. Por ello, la principal consecuencia de pasar el disco duro a FAT32 es que tendr ms espacio disponible. Por ejemplo, en un disco duro de 1,2 GB, que tena 46 MB de espacio libre, la conversin a FAT32 aument el espacio libre a 413 MB. Otro beneficio es que, segn Microsoft, los programas se inician hasta 50 por ciento ms rpido. El hecho de usar clusters ms pequeos permite que el Desfragmentador de disco ubique en el disco duro de forma ms eficiente los archivos que hacen parte de un programa y los archivos necesarios para cargar el programa. Una ventaja adicional, que todava no lo beneficia, es que FAT32 puede manejar discos duros de hasta 2 terabytes (TB); es decir, de 2.000 GB. Aprovechamiento del cluster
Como se observa en el grfico la FAT aprovecha en un 30 % ms, el espacio del disco duro, es decir, desperdicia menos el tamao del cluster. Desventajas La principal desventaja es que FAT 32 no tiene reversa. Un disco duro convertido a FAT32 no se puede devolver a FAT 16. Y como Windows 95 no soporta FAT 32, no podr desinstalar Windows 98 si convierte el disco duro a FAT 32. Claro que si no tiene intenciones de regresar a Windows 95, eso no debera ser un problema. Otra limitacin es que FAT 32 no es compatible con el programa de compresin DriveSpace, que viene con Windows. Si convierte el disco a FAT 32, no puede comprimirlo con DriveSpace; adems, no puede convertir a FAT 32 un disco que est comprimido con DriveSpace. Si planea usar el sistema operativo Windows NT 4 en el mismo PC en el que tiene Windows 98, por medio de la funcin inicio dual (dual boot), tampoco debera convertir el disco. FAT 32 no permite inicio dual con Windows NT 4.0. Finalmente, despus de pasar el disco a FAT 32 dos procesos se harn ms lentos que en un disco con FAT 16: usar Windows 98 en modo a prueba de fallos y Desfragmentar el disco duro. Crear una unidad FAT 32 Existen dos formas de crear una unidad FAT 32, dependiendo de si se trata un disco duro que se est configurando por primera vez o si es una unidad FAT 16 ya creada que contiene datos. Disco duro nuevo. Cuando est creando las particiones de un disco duro, tiene que elegir la opcin que activa la compatibilidad con discos grandes, es decir, compatibilidad con FAT 32. En caso contrario, se crean particiones para unidades FAT 16. Al formatear el disco, se formatear con la FAT definida al crear la particin. Unidad FAT 16 existente. Para convertir una unidad FAT 16 a FAT 32, ejecute el programa Convertidor de unidades FAT 32, localizado enInicio- Programas-Accesorios-Herramientas del sistema. Este programa ejecuta un asistente que le gua paso a paso en el proceso de convertir la unidad a FAT 32. Dicho programa tiene estas etapas: Primero tiene que seleccionar la unidad. Segundo, se comprueba si tiene instalado algn programa antivirus para que lo desactive. Tercero, se le pregunta si desea hacer una copia de seguridad de los datos, lo que no es necesario, pero siempre es recomendable para evitar problemas posteriores. Al finalizar el asistente, se reinicia el ordenador, entrando en modo DOS y se realizan las acciones siguientes: Se verifica la unidad con Scandisk. Se eliminan los archivos de desinstalacin de Windows 98. Se convierte la tabla FAT 16 a FAT 32. Por ltimo, se reinicia el ordenador entrando ahora en Windows 98 y se ejecuta automticamente el desfragmentador de disco sobre esa unidad. BIBLIOGRAFA WINDOWS 98 de JAIME DE YRAOLAGOITIA Ed. PARANINFO, MADRID 1998 EL SISTEMA OPERATIVO WINDOWS 98 de JOSE MANUEL ALONSO GARCA Ed. PARANINFO, MADRID 1998 EL DOS NO DOCUMENTADO de SCHLMAN Ed. ADDISON - WESLEY, E.U.A 1995 Tambin se ha recogido informacin en internet y en revistas especializadas en informtica. 1