La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Introducción a NTFS.

Presentaciones similares


Presentación del tema: "Introducción a NTFS."— Transcripción de la presentación:

1 Introducción a NTFS

2 ¿Qué es un sistema de archivo?
Organización del espacio de almacenamiento Espacio de almacenamiento: secuencia de unidades mínimas de transferencia (sectores) Partición: unidad de uso mínima de un disco ¿Parte del sistema operativo? Un Sistema de archivos es una forma de organizar el espacio de almacenamiento de un disco o de cualquier otro dispositivo cuyo cometido sea el almacenamiento de información. Por encima de esto hablaríamos de organización de la información y sería el cometido de las bases de datos. Por debajo de esto hablamos de la tecnología del dispositivo en cuestión. Lo que la tecnología ofrece a un sistema de archivos es un espacio de almacenamiento accesible en términos de unidades mínimas de almacenamiento que como mínimo van estar direccionadas. En el caso de los discos estamos hablando de sectores disponiendo, cada sector de una dirección dentro del disco,y en este caso concreto, pudiéndose acceder a cada sector de forma individual. (En las cintas magnéticas por ejemplo, el acceso es secuencial). Ya se deben tener nociones de la estructura y organización de un disco y por lo tanto conocemos el término Partición. Una partición es una sección del disco. El disco puede ser dividido en particiones cada una de las cuales funciona como una entidad independiente de cara al sistema operativo (los llamamos drives y los designamos a: b: c:). Cada partición es ocupada por un Sistema de Archivos. En un disco pueden convivir varios sistemas de archivos. Ya debemos tener nociones del sistema de archivos FAT o más bien la familia de sistemas de archivos FAT y ahora vamos a introducir a el sistema de archivos NTFS. Para ello tomaremos como referencia el ya conocido y anticuado.

3 NTFS Sucesor de FAT[] Soporta tamaños de partición mayores
Incorpora mecanismos de protección a nivel de archivo Mejora la eficiencia de acceso a los archivos Un archivo de log permite la recuperación del sistema retrocediendo en la secuencia de acciones. Incorpora funciones especiales: compresión, encriptación, tratamiento optimizado de archivos “escasos”… Soporta el tratamiento de archivos enlazados (archivos con múltiples nombres)

4 Punto de entrada BS: primer sector de la partición
Contiene información básica (técnica y específica) sobre el sistema de archivos En primer lugar todo sistema de archivos tiene que tener un punto de entrada. Habitualmente este punto de entrada es el primer sector de la partición. En la FAT le llamábamos BOOT Sector, en NTFS le llaman igual, para diferenciarlos diremos BS BS El Boot Sector es el primer sector de cada partición. Y es el punto de entrada a cualquier Sistema de Archivos tal y como los conocemos. Contiene información básica sobre el sistema de archivos que reside en esa partición. En el caso de NTFS:

5 BS 0x00 3 bytes Jump instruction 0x03 8 bytes OEM ID 0x0B 25 bytes BPB
La instrucción de salto es el punto de entrada al BootStrap code. El código de arranque del MBR selecciona la partición “activa” y continúa la ejecución por esta instrucción de salto Byte Offset Field Length Field Name 0x00 3 bytes Jump instruction 0x03 8 bytes OEM ID 0x0B 25 bytes BPB 0x24 48 bytes Extended BPB 0x54 426 bytes Bootstrap code 0x01FE 2 bytes End of sector marker La instrucción de salto naturalmente es una instrucción x86 pues este es el entorno en el que estamos trabajando y saltaría al comienzo del Bootstrap code que sería el código necesario para arrancar (o informar de su inexistencia) el sistema operativo que pudiera estar almacenado en este sistema de archivos. Como ya hemos comentado, todo computador de la familia PC realiza siempre el mismo protocolo de arranque: una vez que la BIOS accede al disco, ejecuta el codigo de arranque que se encargaría de verificar si existe una partición activa, si es así, leería el sector cero de tal partición y ejecutaría este código que sería el encargado de iniciar el sistema operativo. El siguiente campo es de información. Identifica al sistema operativo que formateó esta partición. Sería utilizado para verificar criterios de compatibilidad.

6 Identificación del S.O. que formateó.
BS Byte Offset Field Length Field Name 0x00 3 bytes Jump instruction 0x03 8 bytes OEM ID 0x0B 25 bytes BPB 0x24 48 bytes Extended BPB 0x54 426 bytes Bootstrap code 0x01FE 2 bytes End of sector marker Identificación del S.O. que formateó. BPB – BPB extendido: información básica del FS. En particular localización de la MFT Los campos BPB y extended BPB son propios de NTFS y sustituyen a la lista de parámetros que aparecería a continuación en el sector de arranque de una partición FAT. Se observarán que muchos de los parámetros son muy semejantes a los que aparecían en aquel:

7 BPB (página html) Logical Cluster Number for the File $MFT”
Apunta al comienzo de la tabla de archivos Logical Cluster Number for the File $MFTMirr Apunta a una copia de la tabla de archivos Clusters Per Index Buffer (tamaño de un nodo relacionado con la estructura de directorio) De todos ellos, tres campos deberían despertar nuestro interés: “Logical Cluster Number for the File $MFT”, “Logical Cluster Number for the File $MFTMirr” y “Clusters Per Index Buffer” En primer lugar hay que indicar que MFT es la estructura que en NTFS sustituye a la tabla FAT y el directorio en los sistemas de archivo FAT. Estas entradas contienen una dirección (número de sector lógico) que indica dónde comienza esta MFT y su copia. (Innecesario explicar por qué es necesaria una copia de la MFT) Más abajo se indica cuántos clusters ocupa cada entrada de la MFT. Naturalmente esto apunta a que MFT es una tabla, cada entrada en la tabla describe un elemento (ver más adelante qué son esos elementos). Obsérvese que la unidad de medida es el cluster. En una de las entradas anteriores ya se ha indicado cuántos sectores abarcará un cluster para esta instancia del Sistema de archivos (parámetro que también aparecía en FAT) IndexBuffer???

8 MFT MFT: tabla de archivos.
Combina las funciones de la FAT de directorio y tabla FAT Cada entrada a la tabla (Record) implica un “archivo” “Archivo” es todo elemento almacenado en el disco. Esta propia tabla es considerada un archivo. Cada entrada está compuesta de Atributos “Atributo” es cualquier característica asociada al archivo, desde su nombre hasta sus propios datos. MFT es la tabla que almacena la información sobre todos los elementos almacenados en el disco. Cada entrada implica un elemento ocupando espacio. Las entradas se organizan en campos que se llaman Atributos. Cualquier característica del archivo es un atributo: su nombre, su dimensión, sus datos, etc

9 MFT Las primeras 16 entradas están reservadas para archivos de sistema
Las dos primeras hacen referencia a la propia MFT y su copia Una entrada: LogFile contiene la secuencia de últimas acciones realizadas (+ ó -) Una entrada: BitMap indica los clusteres libres y ocupados El sistema reserva sus 16 primeras entradas para uso propio. En ellas aparecen por ejemplo referencias a la propia MFT y su copia. La función de la copia de la MFT es evidente. Un fallo en la lectura de la MFT implica un acceso a su copia. Cualquier actualización de la MFT es necesariamente replicada en su copia. Otra entrada es la de LogFile: . Es decir, un archivo en el que se verán reflejadas las operaciones realizadas sobre el sistema de archivos. Servirá para poder recuperar acciones, es decir retroceder por una secuencia de acciones hasta recuperar un estado inicial.

10 Clusteres El cluster es la unidad mínima de asignación
Se define su tamaño (en términos de sectores en BPB) Todo sistema de archivos debe tener un medio de mecanismo de control de clusters en uso FAT: tabla FAT NTFS: $BitMap record De todos los campos, destacamos el Cluster bitmap. Como dice la leyenda “representa al volumen (la partición) indicando qué clusters están libres y qué clusters están en uso”. Este campo es el correspondiente a la tabla FAT en los sistemas de archivos FAT, en el sentido de que aquella también nos indicaba el estado de uso de cada cluster. Y además nos indicaba la pertenencia de una serie de cluster a un mismo archivo. Esta última información no es reflejada aquí, pues por cada cluster hay un único bit indicado su estado.

11 MFT Zone MFTZone es el espacio reservado para la MFT.
El resto del espacio de la partición lo ocupan los clústeres libres. (excluyendo el sector de arranque y la copia de la MFT) La copia de la MFT no es completa (primeros cuatro records) Es reconfigurable Si muchos archivos de pequeño tamaño (900 bytes) => MFTZone grande Si muchos archivos de gran tamaño => MFTZone pequeña La MFT tiene un espacio reservado en el volumen (otra forma de denominar a la partición). Habitualmente 12.5% del tamaño total. El resto de espacio es libre y será asignado a medida que el almacenamiento de archivos lo vaya requiriendo. Si recordamos el sistema de archivos FAT, el directorio tenía un tamaño prefijado –lo que se indicaba en el Boot Sector. Cuando se llena el directorio raiz ya no caben más archivos. Algo semejante ocurre con la MFT. Su tamaño prefijado limita el número de entradas y por lo tanto el número de archivos en el directorio raíz. Sin embargo es posible redimensionar el tamaño de la MFT (MFT Zone es el espacio reservado para la MFT). El redimensionado de la MFT puede implicar que esta se fraccione con la consiguiente pérdida de eficiencia en el acceso a los archivos. MFT Zone

12 Esquema de almacenamiento
Cada entrada un archivo completo Incluido datos Los archivos se describen en términos de atributos Si los datos no caben en el espacio reservado (1Kbyte) un atributo extiende el espacio La clave de NTFS es su esquema de almacenamiento de archivos. Cada entrada de la MFT representa un archivo completo. Es decir, se evitan en lo posible las indirecciones propias de los sistemas de archivo FAT. En la propia entrada de la tabla se almacenan la identificación y los datos del archivo. Sólo en el caso de que los datos no quepan en el espacio reservado para cada entrada es cuando se recurrirá a la indirección: se asignarán entonces clusters del espacio de clusters no asignados. Si el archivo buscado es de pequeño tamaño (cada entrada tiene 1kByte, un archivo de hasta 900 bytes es considerado de pequeño tamaño) la búsqueda de un archivo implica directamente el acceso a sus datos, (recordar que en la FAT siempre es necesaria una indirección: buscar el nombre del archivo en el directorio, acceder a la tabla FAT y recuperar las identificaciones de los cluster y luego acceder al propio cluster). Si el archivo es de gran tamaño, al menos los primeros datos son inmediatamente recuperables. Otro elemento diferenciador importante es que por cada archivo se puede incluir información específica que puede servir para proteger o tratar cada archivo de manera particular. Las entradas a la MFT que describen los archivos se organizan en campos llamados Atributos. Toda información concerniente a un archivo, desde su nombre hasta los propios datos es un atributo. Cada archivo ocupa una entrada en la tabla. Sin embargo si el archivo tiene muchos atributos o puede volverse muy fragmentado, un solo archivo puede ocupar más de una entrada. En ese caso, en la primera entrada se indicarían qué otras entradas de la MFT pertenecen al mismo archivo. Una tercera característica a destacar es que las estructuras de directorio se organizan en forma de árbol binario, lo que hace más eficiente la búsqueda de archivos. En los sistemas de archivos FAT la estructura de directorio era básicamente lineal. El acceso a los archivos se realiza de manera directa, sin indirecciones (en los archivos pequeños)

13 Otras características
Multiple Data Stream Permite asociar varios archivos bajo un mismo nombre bloque.cod:cabeza.h bloque.cod:codigo.c bloque.cod:librería.lib Compresión Permite la manipulación habitual de un archivo comprimido sin necesidad de realizar de forma explícita las operaciones de compresión y descompresión. Encriptación Se realiza a nivel de usuario. Otro usuario no podría acceder al archivo, ni tampoco en otro S.O. Permite también la manipulación sin requerir desencriptación explícita. Archivos escasos Un tipo especial de compresión para archivos con información redundante. NTFS Multiple Data Stream Es una facilidad que permite asociar a un archivo otros archivos creando así estructuras de archivos que facilitan su manejo. Por ejemplo, tengo un programa que consta de un archivo de cabecera cabeza.h, un archivo de código código.c y un archivo de librería librería.lib. Puedo asociarlos todos a un único nombre de archivo bloque.cod de la siguiente manera. Type cabeza.h>bloque.cod:cabeza.h Type codigo.c>bloque.cod:codigo.c Type librería.lib>bloque.cod:librería.lib Así creamos un archivo bloque.cod que aparentemente está vacío, pero que tiene asociados los otros archivos. Para verlo More < bloque.cod:cabeza.h También es posible asociar un codigo ejecutable y ejecutarlo Type cabeza.exe>bloque.cod:cabeza.exe Stara bloque.cod:cabeza.exe Es posible realizar las mismas asociaciones a un nombre de carpeta. Archivos Comprimidos. La facilidad de archivos comprimidos permite que un archivo sea comprimido y que esta característica aún permita la manipulación corriente del archivo sin necesidad de descomprimir y volver a comprimir explícitamente el mismo. (el archivo tiene atributo C en el Explorer). La compresión se aplica desde a un archivo hasta todo un volumen. La limitación es que los clusters no pueden ser mayores de 4KB. Encriptación La facilidad de encriptación ofrece las mismas características de transparencia que la compresión. La protección es realizada a nivel de usuario (otro usuario no puede acceder al archivo, tampoco otro sistema operativo) Archivos “Escasos” Se refiere a archivos que tienen bloques de información no relevante. Por ejemplo largas cadenas de cero. El sistema de archivos es capaz de detectar esas cadenas (si el archivo tiene “activado” el atributo correspondiente) y decidir no localizar espacio para esas cadenas de datos. Cuando se recupera el archivo esas cadenas son restauradas como cadenas de ceros.

14 Referencias http://technet.microsoft.com/en-us/library/cc778410.aspx


Descargar ppt "Introducción a NTFS."

Presentaciones similares


Anuncios Google