lunes, 17 de diciembre de 2012

Tarea 4


1-¿Cómo surge la necesidad de utilizar archivos?
Por el inconveniente que representa que la memoria principal o memoria RAM sea el único medio de almacenamiento (usando variables, arreglos o estructuras de datos mas complejas), pues si se apaga la computadora se pierden los datos. Además, algunas aplicaciones exigen transportar los datos de una computadora a otra.

1. ¿Es correcto decir que los dispositivos dealmecenamiento secundario procesan datos y los almacenan?
No procesan datos, sólo los almacenan. En estos dispositivos sólo se reflejan los datos previamente procesados y funcionan exclusivamente como una bodega.

2. Da una analogía de un archivo:
El modo de operación de un archivo puede ser asociado con el de un archivero en una oficina, ya que ambos almacenan datos y operan de forma semejante.

3. ¿Qué sucede al abrir un archivo?
Al abrir el archivo se establece comunicación entre el programa y el sistema operativo a cerca de cómo accesarlo. Es necesario que el programa le proporcione al sistema operativo el nombre completo del archivo y la intención de uso (leer o escribir datos), entonces se definen áreas de comunicación entre ellos.

4. ¿Como se clasifican los archivos por contenido?
Texto y binario.

5. ¿Cuáles son los archivos de texto?
Son aquellos que pueden contener cualquier clase de datos y de tal manera que son “entendibles” por la gente. Los datos en un archivo de texto se almacenan usando el código ASCII, en el cual cada carácter es representado por un simple
byte. Debido a que los archivos de texto utilizan el código ASCII, se pueden desplegar o imprimir. En este tipo de archivos, todos sus datos se almacenan como cadenas de caracteres, es decir, los números se almacenan con su representación ASCII y no su representación numérica, por lo tanto no se pueden realizar operaciones matemáticas directamente con ellos.

6. ¿Cuáles son los archivos binarios?
Este tipo de archivos almacenan los datos numéricos con su representación binaria. Pueden ser archivos que contienen instrucciones en lenguaje máquina listas para ser ejecutadas. En este tipo de archivos también se pueden almacenar diferentes tipos de datos incluyendo datos numéricos; sin embargo, cabe destacar que los datos numéricos se graban con su representación binaria (no con su representación ASCII), por tal razón, cuando se despliegan con un editor de textos o por medio de comandos del sistema operativo, aparecen caracteres raros que no se interpretan.


7. ¿Cómo se clasifican los archivos por tipo de acceso?
Se clasifican en secuenciales o directos (también conocidos como de acceso directo,
relativos o aleatorios).

8. ¿Cuales son los archivos secuenciales?
En este tipo de archivos los registros se graban en secuencia o consecutivamente y deben accesarse de ese mismo modo, es decir, conforme se van insertando nuevos registros, éstos se almacenan al final del último registro almacenado; por lo tanto, cuando se desea consultar un registro almacenado es necesario recorrer completamente el archivo leyendo cada registro y comparándolo con el que se busca. En este tipo de archivo se utiliza una marca invisible que el sistema operativo coloca al final de los archivos: EOF (End of File), la cual sirve para identificar dónde termina el archivo.

9. ¿Cuáles son los archivos archivos directos?
A diferencia de los archivos secuenciales, en los archivos directos no es necesario recorrerlo completamente para acceder un registro en particular, sino se puede colocar el apuntador interno del archivo directamente en el registro deseado, permitiendo con esto mayor rapidez de acceso. Cabe destacar que para reposicionar este apuntador se utiliza el comando SEEK indicándole la dirección del registro que se desea.

10. ¿Qué son las direcciones lógicas y direcciones físicas?
El lenguaje C++ utiliza direcciones físicas para los archivos (a diferencia de direcciones lógicas de otros lenguajes como PASCAL), esto es, que el direccionamiento consiste en el espacio ocupado por los datos en el archivo (calculado en bytes) no en el renglón al que se asignó dicho registro.

11. ¿Que encabezado se requiere Para realizar programas de manejo de archivos en Lenguaje C++?
#include <stdio.h>

12. ¿Como se delcara una variable de tipo FILE?
FILE *alias;

13. ¿Para que se usa la funcion fopen?
Se usa la función fopen para abrir un archivo, determinar el modo de apertura y establecer la vía de comunicación mediante su alias correspondiente. Además determinar el tipo de contenido del archivo (texto o binario).

14. ¿Cuáles son los modos de apertura de archivo de texto?
r, w, a, r+, w+ y a+.

15. ¿Cómo se cierra un archivo?
Esto se logra mediante las funciones fclose o fcloseall. Si se usa fclose es necesario indicarle el alias del archivo que se desea cerrar. La función fcloseall cierra todos los archivos abiertos.    

16. ¿Qué proporciona fwrite?
proporciona el mecanismo para almacenar todos los campos de un registro en un archivo. Cabe destacar que al utilizar esta función, se almacena una variable (de tipo struct) que representa un bloque de datos o campos; es decir, no se almacena campo por campo. Esta función tiene cuatro argumentos: la variable que se desea grabar, su tamaño en bytes, la cantidad de variables y el alias del archivo donde se desea almacenar.

17. ¿Qué es un buffer y que objetivo tienen?
Un buffer es un área de almacenamiento temporal en memoria para el conjunto de datos leídos o escritos en el archivo. Estos buffers retienen datos en tránsito desde y hacia al archivo y tienen la finalidad de hacer más eficiente las operaciones de entrada/salida en los archivos de disco, provocando menor cantidad de accesos, los cuales son más lentos que la memoria.

18. ¿Qué hace la función fread?
La función fread permite “cargar” todos los campos de un registro en un archivo, es decir, lee un registro y lo copia en la memoria RAM.

19. ¿Qué hace la función fseek()?
Permite reposicionar el apuntador del archivo en la dirección física deseada mediante tres argumentos: el alias del archivo, la dirección física (en bytes) y el punto de referencia.

20. ¿Qué es necesario para poder reposicionar el apuntador del archivo?
Para poder reposicionar el apuntador del archivo es necesario que éste se encuentre abierto y se le haya asignado el alias correspondiente, también es necesario calcular la dirección física donde se desea colocar e indicarle el punto de referencia de donde se partirá en el conteo de la cantidad de bytes indicado por la dirección física, los cuales pueden ser desde el principio, desde donde se encuentre el apuntador del archivo y desde el final.

21. ¿Cuales son los puntos de referencia de fseek()?
SEEK_SET, SEEK_CUR y SEEK_END.

22. ¿Cual esla operacion de SEEK_SET?
Inicia elconteo de bytes  desde el principio del archivo.

23. ¿Cual es la operacion de SEEK_CUR?
Inicia el conteo de bytes  desde la posición actual del apuntador del archivo.

24. ¿Cual es la operacion de SEEK_END?
Empieza desde el final del archivo

25. ¿Para que se usa ftell?
Para conocer la posición actual del apuntador de un archivo abierto. La posición se expresa en bytes (dirección física) contados desde el principio del archivo.

No hay comentarios:

Publicar un comentario