viernes, 27 de enero de 2017

Glosario de Términos

  • Almacenamiento Lógico: El cual es un modelo conceptual del modo en que se almacenan los datos en el disco. Este modelo mental cómodo que ayuda al usuario a comprender el sistema de almacenamiento de la computadora. 
  • Almacenamiento Físico: Permite Indicar cómo es el almacenamiento en el disco físico.
  • Bloque: Es la cantidad de información que se transfiere en cada operación de lectura o escritura sobre un archivo.
  • Campo: es un conjunto de caracteres capaz de suministrar una determinada información referida a un concepto.
  • Claves: Se denomina a un campo especial del registro que sirve para identificarlo.
  • Dispositivo de Almacenamiento: Es el aparato mecánico, como una unidad de disco, que registra y recupera los datos que hay en el medio de almacenamiento. . 
  • Medio de Almacenamiento: Es el disco, cinta, papel u otro medio que contiene los Archivos de Datos
  • Tecnología de Almacenamiento: Se refiere a un dispositivo de almacenamiento y los medios físicos que utiliza.



Registro

       Registro es un conjunto de campos referentes a una entidad en particular y constituyen una unidad para su proceso. Un ejemplo de un registro puede ser la información de un determinado alumno universitario, que contiene los campos: libreta universitaria, apellido y nombre, número de documento, domicilio, fecha de nacimiento, entre otros campos.

       Tipos


  • Registro Fisico: Cantidad de datos que puede transferirse en una operación de I / O a traves del buffer.
  • Registro Logico: Definido por el programador. 
  • Factor de Bloqueo: Numero de Registros Logicos que puede contener un Registro Fisico.

Importancia

       En todo ámbito de la vida trabajamos recolectando, leyendo y analizando distintos Datos, que mediante un debido proceso y metodología permiten alcanzar la generación de una Información Útil, que forma parte de lo que es posteriormente conocido como Banco de Datos, siendo un objeto de consulta en todo ámbito socio económico.

       Esta información es guardada en conjunto con el emplazamiento de un Archivo, consistiendo básicamente en habitaciones o inclusive edificios enteros que se encargan de almacenar una gran cantidad de datos que fueron debidamente Clasificados y Ordenados, encontrándose su aplicación por ejemplo en el Registro de las Personas, que cuentan con información acerca de la emisión de los Documentos de Identidad, con un vasto archivo de documentaciones relativas a su emisión.

Ejemplos

Ejemplo de procesamiento de archivos
Por ejemplo, para mostrar todas las líneas de un archivo, precedidas por el número de línea, podemos hacerlo como en el Código 11.1.
# Código 11.1: numera_líneas.py**: Imprime las líneas de un archivo con su número

archivo = open("archivo.txt")
i = 1
for linea in archivo:
    linea = linea.rstrip("\\n")
    print " %4d: %s" % (i, linea)
    i+=1
archivo.close()
La llamada a rstrip es necesaria ya que cada línea que se lee del archivo contiene un fin de línea y con la llamada a rstrip("\\n") se remueve.
NOTALos archivos de texto son sencillos de manejar, pero existen por lo menos tres formas distintas de marcar un fin de línea. En Unix tradicionalmente se usa el caracter \n (valor de ASCII 10, definido como nueva línea) para el fin de línea, mientras que en Macintosh el fin de línea se solía representar como un \r (valor ASCII 13, definido como retorno de carro) y en Windows se usan ambos caracteres \r\n.

Si bien esto es algo que hay que tener en cuenta en una diversidad de casos, en particular en Python por omisión se maneja cualquier tipo de fin de línea como si fuese un \n, salvo que se le pida lo contrario. Para manejar los caracteres de fin de línea a mano se puede poner una U en el parámetro modo que le pasamos a open.

Jerarquización


Registro de Archivos

       Tipos de Registros

  • Registro Físico: Cantidad de datos que puede transferirse en una operación de I / O a través del buffer.
  • Registro Lógico: Definido por el programador.
  • Factor de Bloqueo: Numero de Registros Lógicos que puede contener un Registro Físico.

Sistema de Manejo de Archivos


Tiene las siguientes funciones:
  • Controla los datos en almacenamiento secundario [ ]
  •  Proporciona al usuario una abstracción de cómo se manipulan los datos internamente. [ ]
  • Proporciona independencia de E/S con los dispositivos [ ]
  • Soporte de compartición, protección, recuperación de archivos y posibles caídas del sistema. [ ]
  • Transmisión de datos de memoria principal a secundaria.[ ]


 Operaciones Generales que se realizan con un Archivo
  • Creación: Escritura de todos sus registros.
  •  Consulta: Lectura de todos sus registros.
  • Actualización: Inserción supresión o modificación de algunos de sus registros
  • Clasificación: Reubicación de los registros de tal forma que queden ordenados según determinados criterios.
  • Borrado: Eliminando total del archivo, dejando libre el espacio del soporte que ocupaba.

Clasificación Y Ordenación de Archivos

Clasificación de Archivos

Clases de archivo

Acceso a los Archivos

       Se refiere al método utilizado para acceder a los registros de un archivo prescindiendo de su organización. Existen distintas formas de acceder a los datos:
  • Secuenciales: los registros se leen desde el principio hasta el final del archivo, de tal forma que para leer un registro se leen todos los que preceden.
  • Directo: cada registro puede leerse / escribirse de forma directa solo con expresar su dirección en el fichero por él numero relativo del registro o por transformaciones de la clave de registro en él numero relativo del registro a acceder.
  • Por Índice: se accede indirectamente a los registros por su clave, mediante consulta secuenciales a una tabla que contiene la clave y la dirección relativa de cada registro, y posterior acceso directo al registro.
  • Dinámico: es cuando se accede a los archivos en cualquier de los modos anteriormente citados.

La elección del método esta directamente relacionada con la estructura de los registros del archivo y del soporte utilizado.

       Tipos de Accesos
  • Acceso Secuencial: Exige el tratamiento de elemento, para esto es necesario una exploración secuencial comenzando desde el primer momento (Pascal permite este acceso)
  • Secuenciales:  archivo de texto que debe ser leído del principio hasta el final.
  •  Acceso Directo. Permite procesar o acceder a un elemento determinado y referencia directamente por su posición en el soporte de almacenamiento (Turbo Pascal permite este acceso.
  •  Aleatorios:  es un archivo con registros de un mismo largo.  Un programa puede accesar directamente cualquier registro sin tener que leer los registros previos.
  • Binarios:  es un archivo que lee bite por bite sin asumir ninguna estructura. Los archivos Binarios no son un nuevo tipo de archivo, pero si una nueva forma de manipular cualquier tipo de archivo. Las técnicas de archivo binarios permiten leer o cambiar cualquier byte de un archivo. Son herramientas extremadamente potentes, pero como toda herramienta potente debe manejarse con cuidado. Entre otras características, a las técnicas de archivo binario no les preocupa los caracteres EOF intercalados (Control+Z = Chr$(26)) que pueda tener un archivo.

Ejemplo Open NombreArchivo for Binary as #NumeroArchivo.
Instrucciones para manejar archivos
OPEN:  reserva un espacio del buffer para la data que moverá entre el programa y los archivos.  La estructura es:
    OPEN filespec FOR {Append|Binary|Input|Outuput|Random} As #filenumber
Por ejemplo:
     OPEN "C:\Windows\AddrBook.ini" FOR Input As #1
Filespec:  Es la localización de archivo en el que se trabajará, incluyendo usualmente el drive y path.
    "C:\Windows\AddrBook.ini"
{Append| Binary| Input| Outuput| Random}  El programador tiene que seleccionar uno.  Binary y Random se utiliza para archivos binarios y aleatorios.  Append, Input y Output son usados con archivos secuenciales.  Un archivo secuencial no puede ser abierto para leer y escribir simultaneamente.  Output es usado para escribir en el archivo.  Input es usado para leer del archivo.  Append es usado para colocar data al final de un archivo exitente.
#filenumber:  es necesario asignar un número al archivo.  El número puede estar en el rango de #1 a #511 y es usado por Visual Basic para identificar el archivo.
CLOSE:  para cerrar un archivo.  La estructura es:
     CLOSE #filenumber
Por ejemplo:
    CLOSE #1
WRITE:  envia data del programa al archivo secuencial.  La estructura es:
    WRITE #filenumber, [OutputList]
Por ejemplo:
    WRITE #1, UserName, UserCompany, SerialNumber
WRITE es la operación opuesta al INPUT.  Las expresiones en el OutputList son separadas por comas.  WRITE inserta comillas y comas a la data que envia al archivo.
INPUT:  lee data del archivo.  La estructura es:
    INPUT #filenumber, InputList
Por ejemplo:
    INPUT #1, UserName, UserCompany, SerialNumber
Declaración y asignación de archivos
La declaración de un archivo con tipo se efectúa con la ayuda de las palabras reservadas file of.
El procedimiento de asignación es idéntico al utilizado anteriormente.
Ejemplo:
Type
datos = record
clave : integer;
nombre : string[30];
puesto : string[20];
sueldo : real;
estado : boolean;
{true activo,false baja lógica}
end;
Var
archivo:file of datos;
begin
Assign(archivo,'empleado.dat');

Organización de Archivos

       Los archivos se encuentran organizados lógicamente como una secuencia de registros de varias longitudes diferentes.
  • Los archivos de registros de longitud fija: son los que almacenan la información en los archivos mediante un encabezado y luego se introducen uno a uno los registros ubicados en posiciones consecutivas.
  • Los registros de longitud variable: es el almacenamiento de registros de varios tipos en un archivo y permite uno o más campos de longitudes variables y dichos campos pueden ser repetidos. La longitud de los registros debe estar definida correctamente para poder leer y escribir de forma efectiva.

Enfoques Generales
  • Enfoque de acceso secuencial: Se refiere al procesamiento de los archivos de acuerdo con el orden especifico. Ejemplo archivo secuenciales y de texto.
  • Enfoque de acceso Directo Permite recuperar registros individuales sin leer otros registros del archivo, ejemplos archivos indizados.

       Archivos Secuenciales

       Se refiere al procesamiento de los registros, no importa el orden en que se haga, para eso los registros están organizados en forma de una lista y recuperarlos y procesarlos uno por uno de principio a fin. Dependiendo del dispositivo de almacenamiento utilizado el archivo se puede mostrar el usuario como si fuera un sistema secuencial.
       Al finalizar un archivo secuencial se denota con una marca de fin de archivo. (End end-of-file). El usuario de un archivo secuancial puede ver los registros en un orden secuancial simple. La única forma de recuperar registros es comenzar al principio y extraerlos en el orden contemplado.
       La manipulación de los archivos se hace en el contexto de la programación en un lenguaje por procedimientos de alto nivel. Estos lenguajes tienden a expresar la manipulación de archivos mediante subrutinas que se definen como parte del lenguaje formal o se incluyen como extensiones del lenguaje en una biblioteca estándar.
       La mayor parte de los lenguajes por procedimiento de alto nivel cuenta con características que ayudan a detectar la marca de fin de archivo.

       Archivos de Texto

       También conocidos como (Stream File) son utilizados para almacenar documentos que consisten en texto; En ellos, cada registro es un solo símbolo o código de control. El leer estos archivos recibimos la información en orden secuencial en el que aparece cuando lo vemos en un monitor. Los archivos de texto son una secuencia de líneas separadas por marcas de fin de línea. El usuario escribe los archivos de textos mediante un procesador de palabras que le permitirá almacenar la información pero no estrictamente en forma secuencial. El procesador también nos permite desplazarnos por todo el bloque de información y permitirnos realizar modificaciones. Mientras el usuario avance rápidamente en la lectura de registro lograra ver mas archivos. Casi todos los entornos de programación por procedimientos de alto nivel cuentan con subrutinas para manipular los archivos de texto.

       Archivos Indizados

       Es la aplicación de incluir índices en el almacenamiento de los archivos; de esta forma nos será más fácil buscar algún registro sin necesidad de ver todo el archivo. Un índice en un archivo consiste en un listado de los valores del campo clave que ocurren en el archivo, junto con la posición de registro correspondiente en el almacenamiento masivo.

       Fundamento de los Índices
  • La colocación de un listado al inicio del archivo: para la identificación del contenido.
  • La presentación de un segundo índice: para reflejar la información de cada punto principal del índice anterior.
  • La actualización de los índices: Cuando se insertan y eliminan archivos, es preciso actualizar los índices para evitar contratiempos actualizando un archivo.
  • La organización de un índice: Nos evita examinar archivo por archivo para recuperar algún registro buscado; por lo tanto ahorraríamos tiempo si tenemos una adecuado organización de los índices.
       Archivos Dispersos

       También llamados (Hashed Files) representan un sistema de almacenamiento de archivos que solo ofrece acceso directo, y permiten calcular la posición de un registro en el almacenamiento masivo. El usuario debe dividir el área de almacenamiento asignando al archivo en varias secciones llamadas cubetas para poder ingresar los datos. La distribución de la información en las cubetas es problemática debido a que la estructura de los archivos es dispersa. Dentro de los archivos se presentan colisiones de información debido al agrupamiento de los registros ingresados. Casi ninguno de los lenguajes de programación por procedimientos en la actualidad ofrece implantaciones directas de archivos dispersos; esto es debido a las cuestiones dependientes de la aplicación implicadas en el diseño de estos archivos.



Tipos de archivos

Tipos de Archivos

Archivos y carpetas en informática e Internet

Operaciones Sobre Archivos

       Creación de un archivo.

       El objetivo de esta operación es permitir a los usuarios la creación de nuevos archivos. Mediante esta operación se indican las propiedades y las características del archivo para que el sistema de archivos pueda reconocerlo y procesarlo. En el proceso de creación del archivo debe registrarse la información necesaria para que el sistema pueda localizar el archivo 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 archivo, la fecha de creación, su posible tamaño, su organización, aspectos de seguridad, etc.
       Apertura de un archivo.

       En esta operación el método de acceso localiza e identifica un archivo 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 archivo de un fichero no existente, la que implícitamente, crea un nuevo archivo. Los errores que pueden producirse en la apertura de un archivo son los siguientes:
  • ·      El archivo no se encuentra en el lugar indicado (dispositivo, directorio, nombre).
  •      El archivo se ha localizado pero el usuario no tiene permiso para acceder al mismo.
  •   El archivo no se puede leer por errores en el hardware del dispositivo de almacenamiento.

       Cierre de un archivo.

       Esta operación se utiliza para indicar que se va a dejar de utilizar un archivo determinado. Mediante esta operación el método de acceso se encarga de "romper" la conexión entre el programa de usuario y el archivo, 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 archivo y se llevan a cabo las operaciones de limpieza necesarias. Tras cerrar el archivo, 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 archivo devuelto por el método de acceso al crear o abrir el archivo. 

       Extensión del archivo.

       Esta operación permite a los programas de usuario aumentar el tamaño de un archivo 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 archivo y el tamaño del espacio adicional que se debe asignar al archivo. En función de la organización del archivo, el método de acceso determinará si el espacio adicional que debe asignar debe ser contiguo al archivo o no. Mediante esta operación el atributo que indica el tamaño del archivo 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 leer, 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.

       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.

       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.

       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.

Características de los Archivos

  • Independencia de las informaciones respecto de los programas
  • La información almacenada es permanente
  • Un archivo puede ser accedido por distintos programas en distintos momentos
  • Gran capacidad de almacenamiento.

Clasificación de Archivos

Según Su Función:

a. Archivos Permanentes: Son aquellos cuyo registros sufren pocas o ninguna variación a lo largo del tiempo, se dividen en:
  • Constantes: Están formados por registros que contienen campos fijos y campos de baja frecuencia de variación en el tiempo.
  • De Situación: Son los que en cada momento contienen información actualizada.
  • Históricos: Contienen información acumulada a lo largo del tiempo de archivos que han sufridos procesos de actualización o bien acumulan datos de variación periódica en el tiempo.

b. Archivos de Movimiento: Son aquellos que se utilizan conjuntamente con los maestros (constantes), y contienen algún campo común en sus registros con aquellos, para el procesamiento de las modificaciones experimentado por los mismos.
c. Archivo de Maniobra o Transitorio: Son los archivos creados auxiliares creados durante la ejecución del programa y borrados habitualmente al terminar el mismo.

Según Sus Elementos:
  • Archivo de Entrada: Una colección de datos localizada en un dispositivo de entrada.
  • Archivo de Salida: Una colección de información visualizada por la computadora.
  • Archivo de Programa: Un programa codificado en un lenguaje especifico y localizado o almacenado en un dispositivo de almacenamiento.
  • Archivo de Texto: Una colección de caracteres almacenados como una unidad en un dispositivo de almacenamiento.

Tipos de Archivo

  • Archivos de Datos: Contienen palabras, números y figuras que pueden ser visualizados, editados, grabados, enviados e impresos. Son creados por las Aplicaciones; por ejemplo como documentos creados con un procesador de texto, o cuando se graba una figura, gráfica, sonido o vídeo. 
  • Archivos fuente:Contienen instrucciones comprensibles para el usuario, pero que no pueden ser ejecutadas directamente por la computadora. Pueden recibir también el nombre de Programas Fuente, ya que deben ser traducidos a formato ejecutable por la computadora, mediante unos Programas Traductores (Compilador o Ensamblador).
  • Archivos ejecutables Son archivos en disco que contienen la parte ejecutable de un programa de computación. Dependiendo de su tamaño y complejidad, una aplicación o cualquier otro programa, tal como un sistema operativo, se puede almacenar en varios archivos distintos, cada uno de los cuales contendrá las instrucciones necesarias para ejecutar ciertas partes del funcionamiento global del programa. 
  • Archivo en Lote o Batch File: Es un archivo ASCII que contiene una secuencia de órdenes del sistema operativo, posiblemente incluyendo parámetros y operadores admitidos por el  “Lenguaje de Comando por lotes".  Al introducir el usuario un nombre de archivo en la linea de comandos, se procesan las ordenes secuenciales.

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 bites; en todos los sistemas operativos modernos, el tamaño puede ser cualquier número entero no negativo de bites 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.

Objetivos de los Archivos


  • Almacenamiento permanente.
  • Manipulación de un gran numero de datos.
  • Independencia de los programas.
  • Residentes en soportes externos.

Definiciones de Archivos

       Los archivos también denominados ficheros (file) son una colección de información (datos relacionados entre sí y con nombre), localizada o almacenada como una unidad en alguna parte de la computadora. Es decir, son el conjunto organizado de informaciones del mismo tipo, que pueden utilizarse en un mismo tratamiento; como soporte material de estas informaciones.Para poder acceder a determinada información en cualquier momento, se necesitará que ella esté depositada en soportes físicos los cuales la almacenan en forma permanente. Este es el caso de la memoria externa o auxiliar como ser disquete, disco duro, cinta magnética, etc. En las cuales sin necesidad de estar conectadas a la corriente eléctrica, la información permanece allí. 

       Un archivo es la unidad básica de almacenamiento que habilita a una computadora para distinguir un conjunto de información relacionada de otro. El archivo permite reunir una serie de instrucciones, números, imágenes, palabras, etc. que tengan relación entre sí y organizarlas. 

       También se puede definir como un conjunto de bits que son almacenados en un dispositivo. Es identificado por un nombre y la descripción de la carpeta o directorio que lo contiene. A los archivos informáticos se les llama así porque son los equivalentes digitales de los archivos escritos en expedientes, tarjetas, libretas, papel o microfichas del entorno de oficina tradicional.

Introducción al Tema de Archivos

       Se entiende por archivo a una colección de datos que está relacionados entre sí,  organizados y que se encuentran almacenados en conjunto en alguna parte de la memoria del computador. Un archivo es la unidad básica de almacenamiento que habilita a una computadora para distinguir un conjunto de información relacionada de otro. También conocido como ficheros, son el equivalente no tangible y virtual de los archiveros en el mundo físico.

       Hoy en día es innegable que los adelantos de la ciencia y tecnología han tenido una significativa influencia en todos los ámbitos del quehacer humano y por supuesto en la educación, donde los aportes que se le han brindado tanto al docente como al estudiante han sido significativos, proveyéndoles un conjunto de conocimientos científicos y técnicos que hacen posible el tratamiento automático de la información por medio de la informática.



Presentación

Este Blog fue creado como parte de la evaluación de la materia Estructura de Datos sección V del Politécnico Santiago Mariño del bachiller Franco Marrocco 
C.I: 20.422.735. Contiene material relacionado a los Archivos. Espero puedan disfrutar su contenido.