jueves, 19 de julio de 2012

SISTEMA DE ARCHIVOS

Sistema de archivos

    
Los sistemas de archivos o ficheros (en inglés:filesystem), estructuran la información guardada en una unidad de almacenamiento (normalmente un disco duro de una computadora), que luego será representada ya sea textual o gráficamente utilizando un gestor de archivos. La mayoría de los sistemas operativos manejan su propio sistema de archivos.[1]

Lo habitual es utilizar dispositivos de almacenamiento de datos que permiten el acceso a los datos como una cadena de bloques de un mismo tamaño, a veces llamados sectores, usualmente de 512 bytes de longitud (También denominados clústers). El software del sistema de archivos es responsable de la organización de estos sectores en archivos y directorios y mantiene un registro de qué sectores pertenecen a qué archivos y cuáles no han sido utilizados. En la práctica, un sistema de archivos también puede ser utilizado para acceder a datos generados dinámicamente, como los recibidos a través de una conexión de red (sin la intervención de un dispositivo de almacenamiento).
Los sistemas de archivos tradicionales proveen métodos para crear, mover, renombrar y eliminar tanto archivos como directorios, pero carecen de métodos para crear, por ejemplo, enlaces adicionales a un directorio o archivo (enlace duro en Unix) o renombrar enlaces padres (".." en Unix).
El acceso seguro a sistemas de archivos básicos puede estar basado en los esquemas de lista de control de acceso o capacidades. Las listas de control de acceso hace décadas que demostraron ser inseguras, por lo que los sistemas operativos experimentales utilizan el acceso por capacidades. Los sistemas operativos comerciales aún funcionan con listas de control de acceso.[cita requerida]

Contenido

 

 Rutas y nombre de archivos

Normalmente los archivos y carpetas se organizan jerárquicamente.
La estructura de directorios suele ser jerárquica, ramificada o "en árbol", aunque en algún caso podría ser plana. En algunos sistemas de archivos los nombres de archivos son estructurados, con sintaxis especiales para extensiones de archivos y números de versión. En otros, los nombres de archivos son simplemente cadenas de texto y los metadatos de cada archivo son alojados separadamente.
En los sistemas de archivos jerárquicos, usualmente, se declara la ubicación precisa de un archivo con una cadena de texto llamada "ruta" —o path en inglés—. La nomenclatura para rutas varía ligeramente de sistema en sistema, pero mantienen por lo general una misma estructura. Una ruta viene dada por una sucesión de nombres de directorios y subdirectorios, ordenados jerárquicamente de izquierda a derecha y separados por algún carácter especial que suele ser una diagonal ('/') o diagonal invertida ('\') y puede terminar en el nombre de un archivo presente en la última rama de directorios especificada.

 Ejemplo de 'ruta' en un sistema Unix

Así, por ejemplo, en un sistema tipo Unix como GNU/Linux, la ruta para la canción llamada "La canción.ogg" del usuario "Iván" sería algo como:
/home/Iván/Mi música/La canción.ogg
donde:
  • '/' representa el directorio raíz donde está montado todo el sistema de archivos.
  • 'home/Iván/Mi música/' es la ruta del archivo.
  • 'La canción.ogg' es el nombre del archivo.
que se establece como único.

 Ejemplo de 'ruta' en un sistema Windows

Un ejemplo análogo en un sistema de archivos de Windows (específicamente en Windows XP) se vería como:
C:\Documents and Settings\Iván\Mis Documentos\Mi Música\canción.mp3
donde:
  • 'C:' es la unidad de almacenamiento en la que se encuentra el archivo.
  • '\Documents and Settings\Iván\Mis Documentos\Mi Música\' es la ruta del archivo.
  • 'canción' es el nombre del archivo.
  • '.mp3' es la extensión del archivo, este elemento, parte del nombre, es especialmente relevante en los sistemas Microsoft Windows, ya que sirve para identificar qué tipo de archivo es y la aplicación que está asociada con el archivo en cuestión, es decir, con qué programa se puede editar o reproducir el archivo. Para la mayoría de los sistemas operativos modernos la extensión del archivo es un complemento burocrático solo útil para la observación del usuario, ya que los entornos de administración de archivos y aplicaciones varias, analizan la información contenida en el principio del interior del archivo (MIME headers) para determinar su función o asociación, la cual normalmente esta catalogada en la tabla MIME Content-Type en el sistema. El sistema Windows permite ocultar la extensión de los archivos si el usuario lo desea, de no hacerlo la extensión aparece en los nombres de todos los archivos. En el sistema operativo Windows XP, si el usuario cambia la extensión de un archivo, éste puede quedar inutilizable si la nueva extensión lo asocia a un programa que no tenga la capacidad de editar o reproducir ese tipo de archivo. Algunos usuarios aún así habilitan la visualización de las extensiones en los sistemas Windows como medida de precaución para evitar virus que utilicen íconos o nombres parecidos a los archivos personales del usuario, ya que la extensión permite identificar a los ficheros .EXE, los ejecutables en Windows.

 Resumen de características de los sistemas de Archivos

  • Seguridad o permisos
    • listas de control de acceso (ACLs)
    • UGO (Usuario, Grupo, Otros, o por sus siglas en inglés, User, Group, Others)
    • Capacidades granuladas
    • Atributos extendidos (ej.: sólo añadir al archivo pero no modificar, no modificar nunca, etc.)
  • Mecanismo para evitar la fragmentación
  • Capacidad de enlaces simbólicos o duros
  • Integridad del sistema de archivos (Journaling)
  • Soporte para archivos dispersos
  • Soporte para cuotas de discos
  • Soporte de crecimiento del sistema de archivos nativo

Tipo de sistemas de archivos

 Sistemas de archivos de disco

Un sistema de archivo de disco está diseñado para el almacenamiento de archivos en una unidad de disco, que puede estar conectada directa o indirectamente a la computadora.

(ver Anexo:Sistemas de archivos de disco)

Sistemas de archivos de red
Un sistema de archivos de red es el que accede a sus archivos a través de una red. Dentro de esta clasificación encontramos dos tipos de sistemas de archivos: los sistemas de archivos distribuidos (no proporcionan E/S en paralelo) y los sistemas de archivos paralelos (proporcionan una E/S de datos en paralelo).
(ver Anexo:Sistemas de archivos de red)

Sistemas de archivos de propósito especial

(Special purpose file system). Aquellos tipos de sistemas de archivos que no son ni sistemas de archivos de disco, ni sistemas de archivos de red. Ejemplos: acme (Plan 9), archfs, cdfs, cfs, devfs, udev, ftpfs, lnfs, nntpfs, plumber (Plan 9), procfs, ROMFS, swap, sysfs, TMPFS, wikifs, LUFS, etc.

ARCHIVOS

Archivo (informática)

Un archivo o fichero informático es un conjunto de bits almacenado en un dispositivo.
Un archivo es identificado por un nombre y la descripción de la carpeta o directorio que lo contiene. Los archivos informáticos se les llama así porque son los equivalentes digitales de los archivos escritos en libros, tarjetas,libretas, papel o microfichas del entorno de oficina tradicional. Los archivos informáticos facilitan una manera de organizar los recursos usados para almacenar permanentemente datos en un sistema informático.
Contenido de los archivos
En lo que concierne al sistema operativo, un archivo es, en la mayoría de los casos, simplemente un flujo unidimensional de bits , que es tratado por el sistema operativo como una única unidad lógica. Un archivo de datos informático normalmente tiene un tamaño, que generalmente se expresa en bytes; en todos los sistemas operativos modernos, el tamaño puede ser cualquier número entero no negativo de bytes hasta un máximo dependiente del sistema. Depende del software que se ejecuta en la computadora el interpretar esta estructura básica como por ejemplo un programa, un texto o una imagen, basándose en su nombre y contenido. Los tipos especiales de archivos, como los nodos de dispositivo que representan simbólicamente partes del hardware, no consisten en un flujo de bits y no tienen tamaño de archivo.
Los datos de un archivo informático normalmente consiste de paquetes más pequeños de datos (a menudo llamados registros o líneas) que son individualmente diferentes pero que comparten algún rasgo en común. Por ejemplo, un archivo de nóminas puede contener datos sobre todos los empleados de una empresa y los detalles de su nómina; cada registro del archivo de nóminas se refiere únicamente a un empleado, y todos los registros tienen la característica común de estar relacionados con las nóminas-esto es muy similar a colocar todos los datos sobre nóminas en un archivador concreto en una oficina que no tenga ninguna computadora. Un archivo de texto puede contener líneas de texto, correspondientes a líneas impresas en una hoja de papel.
La manera en que se agrupan los datos en un archivo depende completamente de la persona que diseñe el archivo. Esto ha conducido a una plétora de estructuras de archivo más o menos estandarizadas para todos los propósitos imaginables, desde los más simples a los más complejos. La mayoría de los archivos informáticos son usados por programas de computadora. Estos programas crean, modifican y borran archivos para su propio uso bajo demanda. Los programadores que crean los programas deciden qué archivos necesitan, cómo se van a usar, y (a menudo) sus nombres.
En algunos casos, los programas de computadora manipulan los archivos que se hacen visibles al usuario de la computadora. Por ejemplo, en un programa de procesamiento de texto, el usuario manipula archivos-documento a los que él mismo da nombre. El contenido del archivo-documento está organizado de una manera que el programa de procesamiento de texto entiende, pero el usuario elige el nombre y la ubicación del archivo, y proporciona la información (como palabras y texto) que se almacenará en el archivo.
Muchas aplicaciones empaquetan todos sus archivos de datos en un único archivo, usando marcadores internos para discernir los diferentes tipo de información que contienen. Los archivos de datos usados por juegos como Doom y Quake son ejemplos de esto.
Los archivos de una computadora se pueden crear, mover, modificar, aumentar, reducir y borrar. En la mayoría de los casos, los programas de computadora que se ejecutan en la computadora se encargan de estas operaciones, pero el usuario de una computadora también puede manipular los archivos si es necesario. Por ejemplo, los archivos de Microsoft Office Word son normalmente creados y modificados por el programa Microsoft Word en respuesta a las órdenes del usuario, pero el usuario también puede mover, renombrar o borrar estos archivos directamente usando un programa gestor de archivos como Windows Explorer (en computadoras con sistema operativo Windows).
También un archivo es un documento donde uno introduce algún tipo de Dato para almacenar en un objeto que lo pueda leer o modificar como una computadora.
Identificación y organización de archivos


Los archivos y carpetas se organizan jerárquicamente.

En los sistemas informáticos modernos, los archivos siempre tienen nombres. Los archivos se ubican en directorios. El nombre de un archivo debe ser único en ese directorio. En otras palabras, no puede haber dos archivos con el mismo nombre en el mismo directorio.
El nombre de un archivo y la ruta al directorio del archivo lo identifica de manera unívoca entre todos los demás archivos del sistema informático -no puede haber dos archivos con el mismo nombre y ruta-. El aspecto del nombre depende del tipo de sistema informático que se use. Las primeras computadoras sólo permitían unas pocas letras o dígitos en el nombre de un archivo, pero las computadoras modernas permiten nombres largos que contengan casi cualquier combinación de letras unicode y dígitos unicode, haciendo más fácil entender el propósito de un archivo de un vistazo. Algunos sistemas informáticos permiten nombres de archivo que contengan espacios; otros no. La distinción entre mayúsculas y minúsculas en los nombres de archivo está determinada por el sistemas de archivos. Los sistemas de archivos Unix distinguen normalmente entre mayúsculas y minúsculas, y permiten a las aplicaciones a nivel de usuario crear archivos cuyos nombres difieran solamente en si los caracteres están en mayúsculas o minúsculas. Microsoft Windows reconoce varios sistemas de archivos, cada uno con diferentes políticas en cuanto a la distinción entre mayúsculas y minúsculas. El popular antiguo sistema de archivos FAT puede tener varios archivos cuyos nombres difieran únicamente en las mayúsculas y minúsculas si el usuario utiliza un editor de discos para editar los nombres de archivo en las entradas de directorio. Las aplicaciones de usuario, sin embargo, normalmente no permitirán al usuario crear varios archivos con el mismo nombre pero con diferentes letras en mayúsculas y minúsculas.
La mayoría de las computadoras organizan los archivos en jerarquías llamadas carpetas, directorios o catálogos. (El concepto es el mismo independientemente de la terminología usada.) Cada carpeta puede contener un número arbitrario de archivos, y también puede contener otras carpetas. Las otras carpetas pueden contener todavía más archivos y carpetas, y así sucesivamente, construyéndose un estructura en árbol en la que una «carpeta raíz» (el nombre varía de una computadora a otra) puede contener cualquier número de niveles de otras carpetas y archivos. A las carpetas se les puede dar nombre exactamente igual que a los archivos (excepto para la carpeta raíz, que a menudo no tiene nombre). El uso de carpetas hace más fácil organizar los archivos de una manera lógica.
Cuando una computadora permite el uso de carpetas, cada archivo y carpeta no sólo tiene un nombre propio, sino también una ruta, que identifica la carpeta o carpetas en las que reside un archivo o carpeta. En la ruta, se emplea algún tipo de carácter especial -como una barra- para separar los nombres de los archivos y carpetas. Por ejemplo, en la ilustración mostrada en este artículo, la ruta /Payroll/Salaries/Managers identifica unívocamente un archivo llamado Managers que está en una carpeta llamada Salaries que a su vez está contenida en una carpeta llamada Payroll. En este ejemplo, los nombres de las carpetas y archivos están separados por barras; la superior o carpeta raíz no tiene nombre, y por ello la ruta comienza con una barra (si la carpeta raíz tuviera nombre, precedería a esta primera barra).
Muchos (pero no todos) sistemas informáticos usan extensiones en los nombres de archivo para ayudar a identificar qué contienen. En computadoras Windows, las extensiones consisten en un punto al final del nombre del archivo, seguido de unas pocas letras para identificar el tipo de archivo. Una extensión .txt identifica un archivo de texto; la extensión .doc identifica cualquier tipo de documento o documentación, comúnmente en el formato de archivo de Microsoft Office Word; etc. Incluso cuando se utilizan extensiones en un sistema informático, el grado con el que un sistema informático los reconoce y trata puede variar; en algunos sistemas son obligatorios, mientras que en otros sistemas se ignoran completamente si están presentes.
Operaciones sobre ficheros completos
Las operaciones sobre ficheros completos con el fichero como unidad, sin tener en cuenta sus registros. Sin embargo, la organización del fichero y la estructura lógica de sus registros sí debe ser tenida en cuenta al operar con él.
Creación de un fichero
El objetivo de esta operación es permitir a los usuarios la creación de nuevos ficheros. Mediante esta operación se indican las propiedades y las características del fichero para que el sistema de ficheros pueda reconocerlo y procesarlo. En el proceso de creación del fichero debe registrarse la información necesaria para que el sistema pueda localizar el fichero y manipular sus registros lógicos. Para ello, el método de acceso debe obtener información sobre el formato y el tamaño de los registros lógicos y físicos, la identificación del fichero, la fecha de creación, su posible tamaño, su organización, aspectos de seguridad, etc.
Apertura de un fichero
En esta operación el método de acceso localiza e identifica un fichero existente para que los usuarios o el propio sistema operativo pueda operar con él. En algunos sistemas la operación de creación no existe como tal, y es la operación de apertura de un fichero no existente, la que implícitamente, crea un nuevo fichero. Los errores que pueden producirse en la apertura de un fichero son los siguientes:

     .El fichero no se encuentra en el lugar indicado (dispositivo, directorio, nombre

  • El fichero se ha localizado pero el usuario no tiene permiso para acceder al mismo.

  • El fichero no se puede leer por errores en el hardware del dispositivo de almacenamiento.

Cierre de un fichero
Esta operación se utiliza para indicar que se va a dejar de utilizar un fichero determinado. Mediante esta operación el método de acceso se encarga de "romper" la conexión entre el programa de usuario y el fichero, garantizando la integridad de los registros. Al ejecutar esta operación, el sistema se encarga de escribir en el dispositivo de almacenamiento aquella información que contienen los búfer asociados al fichero y se llevan a cabo las operaciones de limpieza necesarias. Tras cerrar el fichero, sus atributos dejan de ser accesibles para el método de acceso. El único parámetro necesario para realizar esta operación es el identificador del fichero devuelto por el método de acceso al crear o abrir el fichero. Los errores que se pueden producir al cerrar un fichero son los siguientes:
  • El fichero no está abierto.
  • No se ha podido escribir en el dispositivo toda la información del fichero, debido a fallos en el hardware.
  • No se ha podido escribir en el dispositivo toda la información del fichero por falta de espacio en el dispositivo de almacenamiento.

Extensión del fichero
Esta operación permite a los programas de usuario aumentar el tamaño de un fichero asignándole más espacio en el dispositivo de almacenamiento. Para realizar esta operación el método de acceso necesita conocer el identificador del fichero y el tamaño del espacio adicional que se debe asignar al fichero. En función de la organización del fichero, el método de acceso determinará si el espacio adicional que debe asignar debe ser contiguo al fichero o no. Mediante esta operación el atributo que indica el tamaño del fichero será modificado y se devolverá al programa de usuario con un código de estado. El único motivo para que esta operación no se lleve a cabo con éxito es que no haya suficiente espacio disponible en el lugar adecuado (no contiguo).
Protección de archivos
Muchos sistemas informáticos modernos proporcionan métodos para proteger los archivos frente a daños accidentales o intencionados. Las computadoras que permiten varios usuarios implementan permisos sobre archivos para controlar quién puede o no modificar, borrar o crear archivos y carpetas. A un usuario dado se le puede conceder solamente permiso para modificar un archivo o carpeta, pero no para borrarlo; o a un usuario se le puede conceder permiso para crear archivos o carpetas, pero no para borrarlos. Los permisos también se pueden usar para permitir que solamente ciertos usuarios vean el contenido de un archivo o carpeta. Los permisos protegen de la manipulación no autorizada o destrucción de la información de los archivos, y mantienen la información privada confidencial impidiendo que los usuarios no autorizados vean ciertos archivos.
Otro mecanismo de protección implementado en muchas computadoras es una marca de sólo lectura. Cuando esta marca está activada en un archivo (lo que puede ser realizado por un programa de computadora o por un usuario humano), el archivo puede ser examinado, pero no puede ser modificado. Esta marca es útil para información crítica que no debe ser modificada o borrada, como archivos especiales que son usados solamente por partes internas del sistema informático. Algunos sistemas incluyen también una marca oculta para hacer que ciertos archivos sean invisibles; esta marca la usa el sistema informático para ocultar archivos de sistema esenciales que los usuarios nunca deben modificar.
Protección legal de datos de archivos
La protección de datos personales y velar por la privacidad de la información es un tema de suma importancia a nivel de empresas y de países. El mal uso de información personal puede constituir un delito.
Algunos países han creado organismos que se encargan del tema y de legislar respecto del acceso, uso y confidencialidad de los datos.
 Almacenamiento de archivos
En términos físicos, la mayoría de los archivos informáticos se almacenan en discos duros —discos magnéticos que giran dentro de una computadora que pueden registrar información indefinidamente—. Los discos duros permiten acceso casi instantáneo a los archivos informáticos.
Hace unos años solían usarse cintas magnéticas para realizar copias de seguridad. También se usaban otros medios de almacenamiento como discos compactos grabables, unidades Zip, etcétera.
No obstante en la actualidad han cobrado mucho auge las memorias flash, dispositivos con mucha capacidad de almacenamiento que tienen la ventaja de ser pequeños y portátiles; suelen usarse para guardar archivos en dispositivos pequeños como teléfonos móviles o reproductores de audio portátiles
 Respaldo de archivos
Cuando los archivos informáticos contienen información que es extremadamente importante, se usa un proceso de respaldo (back-up) para protegerse contra desastres que podrían destruir los archivos. Hacer copias de respaldo de archivos significa simplemente hacer copias de los archivos en una ubicación separada de modo que se puedan restaurar si le pasara algo a la computadora, o si fueran borrados accidentalmente.
Hay muchas maneras de hacer copias de respaldo de archivos. La mayoría de los sistemas informáticos proporcionan utilidades para ayudar en el proceso de respaldo, que puede llegar a consumir mucho tiempo si hay muchos archivos a salvaguardar. Copiar los archivos a otro disco duro en la misma computadora protege contra el fallo de un disco, pero si es necesario protegerse contra el fallo o destrucción de la computadora entera, entonces de deben hacer copias de los archivos en otro medio que puede sacarse de la computadora y almacenarse en una ubicación distante y segura.
Sistemas de archivos y gestores de archivos

 Sistema de archivos.

La manera en que un sistema operativo organiza, da nombre, almacena y manipula los archivos se denomina globalmente como su sistema de archivos. Todos los sistemas operativos tienen al menos un sistema de archivos; algunos sistemas operativos permiten usar varios sistemas de archivos diferentes. Por ejemplo, en Microsoft Windows 7, se reconocen los antiguos sistemas de archivos FAT y FAT32 de las versiones antiguas de Windows, además del sistema de archivos NTFS que es el sistema de archivos normal en las versiones recientes de Windows. NTFS no es más moderno que FAT32; ha existido desde que Windows NT se publicó en 1993.
Cada sistema de archivos tiene sus propias ventajas y desventajas. La FAT estándar solamente permite nombres de archivo de ocho bytes (u ocho caracteres de sólo 1 byte) sin espacios (más una extensión de tres bytes/caracteres), por ejemplo, mientras que NTFS permite nombres mucho más largos que pueden contener espacios, y tener varias letras Unicode. Se puede llamar a un archivo "Registros de nóminas" en NTFS, mientras que en FAT estaría limitado a algo como "nominas.dat" (salvo que estuviera usando VFAT, una extensión de FAT que permite nombres de archivo largos).
Los programas gestores o administradores de archivos son utilidades que le permiten manipular archivos directamente. Le permiten mover, crear, borrar y renombrar archivos y carpetas, aunque no le permiten realmente leer el contenido de un archivo o almacenar información en él. Cada sistema informático proporciona al menos un programa gestor de archivos para su sistema de archivos nativo. En Windows, el gestor de archivos usado más comúnmente es Windows Explorer.