1 / 28

V. ADMINISTRACIÓN DE ARCHIVOS

UNIVERSIDAD LATINA. V. ADMINISTRACIÓN DE ARCHIVOS. Que son los archivos. Los archivos son colecciones de información relacionada, definidas por sus creadores . Éstos almacenan programas (en código fuente y objeto) y datos tales como imágenes, textos, información de bases de datos , etc.

anneke
Download Presentation

V. ADMINISTRACIÓN DE ARCHIVOS

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. UNIVERSIDAD LATINA. V. ADMINISTRACIÓN DE ARCHIVOS

  2. Que son los archivos Los archivos son colecciones de información relacionada, definidas por sus creadores. Éstos almacenan programas (en código fuente y objeto) y datos tales como imágenes, textos, información de bases de datos, etc. El SO es responsable de: • Construir y eliminar archivos y directorios. • Ofrecer funciones para manipular archivos y directorios. •Establecer la correspondencia entre archivos y unidades de almacenamiento. • Realizar copias de seguridad de archivos.

  3. Sistemas de Archivos Son las diferentes formas de organizar la información que se almacena en las memorias (normalmente discos) de las computadoras. Por ejemplo, existen los sistemas de archivos FAT (Tabla de asignación de archivos, comúnmente conocido como FAT (file allocation table de Windows), FAT32, EXT3 (third extended filesystem o tercer sistema de archivos extendido ) es un sistema de archivos de Linux , NTFS (New Technology File System) es un sistema de archivos de Windows NT incluido en las versiones de Windows 2000, Windows XP, Windows Server 2003, Windows Server 2008, Windows Vista, Windows 7 y Windows 8, XFS es un sistema de archivos de 64 bits con journaling (registro de transacciones por diario) de alto rendimiento creado por SGI (antiguamente Silicon Graphics Inc.) para su implementación de UNIX llamada IRIX. En mayo de 2000, SGI liberó XFS bajo una licencia de código abierto.

  4. Sistemas de Archivos, diferencias Desde el punto de vista del usuario estas diferencias pueden parecer insignificantes a primera vista, sin embargo, existen diferencias muy importantes. Por ejemplo, los sistemas de ficheros FAT32 y NTFS, que se utilizan fundamentalmente en sistemas operativos de Microsoft, tienen una gran diferencia para un usuario que utilice una base de datos con bastante información ya que el tamaño máximo de un archivo con un sistema de archivos FAT32 está limitado a 4 gigabytes, sin embargo, en un sistema NTFS el tamaño es considerablemente mayor.

  5. Conceptos básicos de archivos. Todos los sistemas proporcionan una unidad de almacenamiento lógico, que oculta los detalles del sistema físico de almacenamiento denominada archivo. Un archivo es una unidad de almacenamiento lógico no volátil o permanente que agrupa un conjunto de información relacionada entre sí bajo el mismo nombre. El sistema de administración de archivos es el software que crea, elimina, modifica y controla el acceso a los archivos (además de administrar los recursos utilizados por los archivos). El administrador de archivos está a cargo de los componentes físicos del sistema, sus recursos de información y de las políticas que se usan para almacenar y distribuir los archivos. A fin de desempeñar sus funciones, tiene que ejecutar estas cuatro tareas: a) Llevar el control de donde se almacena cada archivo. b) Utilizar una política que determine donde y como se almacenaran los archivos, asegurando el uso eficiente del espacio de almacenamiento disponible y proporcionando un acceso eficiente a los archivos. c) Asignar cada archivo cuando se ha aceptado el acceso de un usuario al mismo y registrar su uso. d) Desasignar el archivo cuando éste es devuelto a almacenamiento y comunicar su disponibilidad a otros interesados que pudieran estar esperándolo.

  6. Conceptos básicos de archivos. Algunas definiciones importantes: Campo. Es un número de bytes relacionados que puede identificar el usuario mediante un nombre, tipo y tamaño. Registro. Un grupo de campos relacionados. Archivo. Es un grupo de registros relacionados que contienen información utilizada por un programa de aplicación específica para generar informes. Este tipo de archivo contiene datos y a veces se conoce como archivo plano, ya que o contiene conexiones con otro archivo; a diferencia de las base de datos, carece de dimensionalidad. Base de datos. Para el administrador de archivos es un tipo de archivo, pero resultan más complicadas porque son grupos de archivos relacionados interconectados en diversos niveles, para dar a los usuarios flexibilidad de acceso a los datos almacenados. Si la base de datos del usuario requiere una estructura específica, el administrador de archivos debe ser capaz de aceptarla. Archivos programa. Contienen instrucciones. Archivos de datos. Contienen datos.

  7. Conceptos básicos de archivos. Directorios. Son listados de nombres de archivos y sus atributos y el administrador de archivos los maneja como archivos. Directorios y nombres de archivos. Los directorios son agrupaciones lógicas de archivo que siguen criterios definidos por sus creadores o manipuladores, a la vez es un mecanismo que permite al usuario estructurar el acceso a los archivos. El directorio tiene información sobre los archivos, incluyendo atributos, ubicación y propietario. Gran parte de esta información, especialmente la relativa al almacenamiento, la gestiona el sistema operativo. El directorio es propiamente un archivo, poseído por el sistema operativo y accesible a través de diversas rutinas de gestión de archivos. Las operaciones que se pueden hacer con un directorio son: a) Buscar. Cuando un usuario o aplicación referencia un archivo, debe buscarse en el directorio la entrada correspondiente. b) Crear archivo. Al crear un nuevo archivo, debe añadirse una entrada al directorio. c) Borrar archivo. Al borrar un archivo, debe eliminarse una entrada del directorio. d) Listar directorio. Puede solicitarse todo el directorio o una parte. Por lo general esta petición la hace un usuario y el resultado es una lista de todos los archivos poseídos por dicho usuario, junto a algunos de los atributos de cada archivo.

  8. Almacenamiento de archivos Modo Texto: en este caso los datos son almacenados usando Ascii y por tanto son plenamente visibles usando cualquier editor. Modo Binario: en este caso los datos son almacenados en notación hexadecimal y por tanto se ocupa un editor binario para reconocerlos, sin embargo un archivo binario es mas compacto que un archivo texto.

  9. Operaciones básicas con archivos 1.- Creación de Archivo.- En este proceso se pretende solamente crear un archivo nuevo en disco con su nombre tipo y especialidad de almacenamiento de datos apropiado. 2.- Apertura de Archivos.- En este caso se pretende abrir un archivo ya existente en disco para procesarlo ya sea para cargar o grabar estructuras en sus registros o leer algun registro en especial para mandarlo a una variable de cualquier tipo. 3.-Cierre de archivos: Es la operación mas importante en cualquier programa que maneje archivos, o se cierra el archivo como ultima instrucción del pograma o se vera el anuncio ABORT,RETRY,FAIL. 4.-Altas en archivo.- En este proceso se captura una estructura en memoria con sus datos pertinentes y despues se graba la estructura al archivo en disco. 5.-Lectura de archivo.- En este proceso se abre el archivo, se manda el registro de disco a una estructura en memoria para su procesamiento.

  10. Operaciones básicas con los archivos 6.- Consulta de archivos: En este proceso se pretende desplegar todos los registros del archivo en disco a la pantalla ya sea consola o mejor aún, a una pagina html 7.-Busqueda en archivos: Una de las operaciones mas comunes consiste en que el usuario pide toda la información de algun renglon en disco porporcionando la información de algun campo generalmente el campo clave de la estructura. 8.- Filtros.- En este proceso el usuario esta interesado en algun conjunto de renglones con caracteristicas comunes (condición), por ejemplo todos los alumnos de “sistemas” o todos los empleados que ganen mas de $500.00 pesos, o todos los clientes que sean de “tijuana”, etc 9.-Modificaciones de registros o archivos: Problema muy comun, donde los datos originales ya grabados se tienen que cambiar o actualizar, por ejemplo el nombre no era “juan” es “juana”, o la calificación no es 100 es 20, etc. 10.- Bajas de registros: tambien muy comun este proceso,por ejemplo el alumno ya egreso, el cliente huyo, etc. (baja fisica o baja logica)

  11. Abrir y cerrar un archivo en C o C++. Abrir y cerrar FILE *fopen(char *nombre, char *modo); Devuelve NULL en caso de error modo="r" Lectura modo="r+" Lectura (y escritura) modo="w" Escritura modo="w+" Escritura (y lectura) modo="a" Añadir al final modo="a+" Añadir al final (y lectura) modos=rb, rb+, wb, wb+, ab, ab+ binario int fclose(FILE *puntero al archivo); Devuelve 0 si no hay error

  12. Ejemplos de creación, altas y consultas de un archivo en C. FILE//Prog17.cpp // Objetivo : Crear la estructura del archivo, sin datos #include <stdio.h> #include <conio.h> #include <string.h> struct { int matricula; char nombre[30]; int edad;}alumno; main() { //creando y cerrando el archivo en disco FILE *archdisco; // El archivo se llama alumnos.dat el el directorio raiz de C archdisco = fopen("C:\\alumnos.txt","w"); fclose(archdisco); printf("** ARCHIVO CREADO..: Verifiquelo en su ruta, Gracias ..\n"); printf(">Presione ENTER para continuar .."); getchar(); }

  13. Comentarios: La funcion fopen() cuando realiza el trabajo de abrir un archivo, regresa la direccion fisica donde crea o graba el archivo en disco. El primerparametro o argumento en esta función es la UNIDAD de disco y el nombre del archivo. El segundo parametro o argumento es llamado modo y es una de los varios modos que podemos usar. “r” → Lectura. “w” → Escritura. “a” → Append, si el archivo ya existe append empieza a añadir los nuevos datos al final del archivo ya existente. “r+” → Lectura y escritura, ya debe existir el archivo. “w+” → Crea para lectura y escritura y si ya existe, sobreescribe. “a+” → Crea o abre para lectura y append, sino existe el archivo sera creado. En adicion a los valores listados tambien es permitido agregar uno de los siguientes caracteres, pero insertandolo antes del signo + modo significado. t lo abre en modo texto. b lo abre en modo binario.

  14. // prog26.cpp. Objetivo: Captura datos en alumnos.txt #include <stdio.h> #include <conio.h> #include <string.h> struct { int matricula; char nombre[30]; int edad;} alumno; main() { // captura de campos printf("No. de Cuenta :");scanf("%d",&alumno.matricula);getchar(); printf("Nombre :");gets(alumno.nombre); printf("Edad :");scanf("%d",&alumno.edad); // grabando a disco FILE *archdisco; archdisco = fopen("C:\\alumnos.txt","ab+"); fwrite(&alumno,sizeof(alumno),1,archdisco); fclose(archdisco); //avisando usuario printf("** ALUMNO INSERTADO...\n"); printf(">Presione ENTER para continuar .."); getchar();getchar(); }

  15. // prog27.cpp. Despliega los datos a partir del archivo alumnos.txt #include <stdio.h> #include <conio.h> #include <string.h> struct { int matricula; char nombre[30]; int edad;}alumno; main() { // leyendo disco FILE *archdisco; archdisco = fopen("C:\\alumnos.txt","rb+"); // aqui siempre debe empezar el ciclo de lectura // y fread() regresa siempre cuantas estructuras leyo while(fread(&alumno,sizeof(alumno),1,archdisco)==1) { // desplegando estructuras printf("%d ",alumno.matricula); printf("%s ",alumno.nombre); printf("%d ",alumno.edad); printf("\n"); }; // aqui termina while // no olvidar cerrar archivo y siempre fuera de while fclose(archdisco); printf("**>\n"); printf("Presione ENTER para continuar .."); getchar(); }

  16. Dirección y nombre de archivo. Todo objeto archivo debe tener un nombre a través del que se pueda acceder. Por ello, todos los sistemas operativos proporcionan mecanismos de nombrado que permiten asignar un nombre a un archivo en el momento de su creación. Este nombre acompañara al objeto mientras exista y le identificará de forma única. Cada sistema operativo tiene sus propias características para nombrar a los archivos. Por ejemplo en el sistema UNIX los nombres de los archivo pueden ser de hasta 4,096 caracteres y distinguen entre mayúsculas y minúsculas, mientras en el MSDOS el máximo tamaño de un nombre de archivo es de ocho caracteres y no distingue entre mayúsculas y minúsculas. Una parte del nombre de archivo es la extensión del nombre. La dirección es una ruta o la forma de referenciar un archivo informático o directorio en un sistema de archivos de un sistema operativo determinado. Una ruta señala la localización exacta de un archivo o directorio mediante una cadena de caracteres concreta.

  17. Permisos de los archivos.. Son los derechos o permisos de acceso a los archivos. El sistema operativo debe ofrecer una herramienta flexible para permitir la compartición general de archivos entre los usuarios, así como un conjunto de opciones de forma que se pueda controlar la manera en que se accede cada archivo en particular. Normalmente a cada usuario i grupo de usuarios le son concedidos ciertos derechos o permisos de acceso a cada archivo. La lista siguiente es representativa de los permisos de acceso que pueden asignarse a un usuario particular para un archivo específico: a) Ninguno. El usuario no puede ni siquiera conocer la existencia del archivo, ni mucho menos acceder al mismo. Para aplicar esta restricción, no se permite al usuario leer el directorio de usuario que incluya el archivo. b) Conocimiento. El usuario puede determinar que el archivo existe y quien es su propietario. El usuario es capaz de solicitar derechos de acceso adicionales al propietario. c) Ejecución. El usuario puede cargar y ejecutar un programa, pero no puede copiarlo. Los programas comerciales se hacen a menudo accesibles con esta restricción.

  18. Permisos de los archivos.. d) Lectura. El usuario puede leer el archivo para cualquier propósito, incluyendo copia y ejecución. Algunos sistemas son capaces de hacer valer la distinción entre visualizar y copiar. En el primer caso, el contenido del archivo puede mostrarse al usuario, pero este no tiene medios para hacer una copia. e) Adición. El usuario puede añadir datos al archivo, generalmente al final, pero no puede modificar ni borrar el contenido del mismo. Este derecho es útil en la recopilación de datos a partir de un conjunto de fuentes. f) Actualización. El usuario puede modificar, borrar y añadir datos al archivo. La actualización incluye generalmente la escritura del archivo al principio, la reescritura por completo o en parte y la eliminación de todos los datos o parte de ellos. Algunos sistemas tiene varios grados de actualización. g) Cambio de protección. El usuario puede cambiar los derechos de acceso otorgados a otros usuarios. Normalmente este derecho es detentado solo por el propietario. En algunos sistemas, el propietario puede otorgar este derecho a otros usuarios. Para evitar el abuso de este mecanismo, el propietario del archivo es normalmente capaz de especificar qué derechos pueden ser cambiados por el poseedor de este derecho. i) Borrado. El usuario puede borrar el archivo del sistema de archivos. Puede considerarse que estos derechos constituyen una jerarquía, con cada uno incluyendo a todos los que le preceden.

  19. Permisos de los archivos.. en Linux En Linux, todo archivo y directorio tiene tres niveles de permisos de acceso: los que se aplican al propietario del archivo, los que se aplican al grupo que tiene el archivo y los que se aplican a todos los usuarios del sistema. Podemos ver los permisos cuando listamos un directorio con ls -l: Explicación: En Linux, La primera columna (-rwxrwxr--) es el tipo de archivo y sus permisos, la siguiente columna (1) es el número de enlaces al archivo, la tercera columna (sergio) representa al propietario del archivo, la cuarta columna (ventas) representa al grupo al que pertence al archivo y las siguientes son el tamaño, la fecha y hora de última modificación y por último el nombre del archivo o directorio.

  20. Permisos de los archivos.. en Linux El primer caracter al extremo izquierdo, representa el tipo de archivo, los posibles valores para esta posición son los siguientes: - un guión representa un archivo comun (de texto, html, mp3, jpg, etc.) d representa un directorio l link, es decir un enlace o acceso directo b binario, un archivo generalmente ejecutable Los siguientes 9 restantes, representan los permisos del archivo y deben verse en grupos de 3.

  21. Permisos de los archivos.. en Linux Los tres primeros representan los permisos para el propietario del archivo. Los tres siguientes son los permisos para el grupo del archivo y los tres últimos son los permisos para el resto del mundo o otros. rwx rwx rwx usuario grupo otros En cuanto a las letras, su significado son los siguientes: r read - lectura w write - escritura (en archivos: permiso de modificar, en directorios: permiso de crear archivos en el dir.) x execution - ejecución

  22. Permisos de los archivos.. en Linux Las nueve posiciones de permisos son en realidad un bit que o esta encendido (mostrado con su letra correspondiente) o esta apagado (mostrado con un guión -), asi que, por ejemplo, permisos como rwxrw-r--, indicaría que los permisos del propietario (rwx) puede leer, escribir y ejecutar el archivo, el grupo (o sea los usuarios que esten en mismo grupo del archivo) (rw-) podrá leer y escribir pero no ejecutar el archivo, y cualquier otro usuario del sistema (r--), solo podrá leer el archivo, ya que los otros dos bits de lectura y ejecucción no se encuentran encendidos o activados.

  23. Permisos de los archivos.. d) Lectura. El usuario puede leer el archivo para cualquier propósito, incluyendo copia y ejecución. Algunos sistemas son capaces de hacer valer la distinción entre visualizar y copiar. En el primer caso, el contenido del archivo puede mostrarse al usuario, pero este no tiene medios para hacer una copia. e) Adición. El usuario puede añadir datos al archivo, generalmente al final, pero no puede modificar ni borrar el contenido del mismo. Este derecho es útil en la recopilación de datos a partir de un conjunto de fuentes. f) Actualización. El usuario puede modificar, borrar y añadir datos al archivo. La actualización incluye generalmente la escritura del archivo al principio, la reescritura por completo o en parte y la eliminación de todos los datos o parte de ellos. Algunos sistemas tiene varios grados de actualización. g) Cambio de protección. El usuario puede cambiar los derechos de acceso otorgados a otros usuarios. Normalmente este derecho es detentado solo por el propietario. En algunos sistemas, el propietario puede otorgar este derecho a otros usuarios. Para evitar el abuso de este mecanismo, el propietario del archivo es normalmente capaz de especificar qué derechos pueden ser cambiados por el poseedor de este derecho. i) Borrado. El usuario puede borrar el archivo del sistema de archivos. Puede considerarse que estos derechos constituyen una jerarquía, con cada uno incluyendo a todos los que le preceden.

  24. Los nodos-i de UNIX. Contiene información acerca del propietario del archivo, de su grupo, el modo de protección aplicable al archivo, del número de enlaces al archivo, de valores de fechas de creación y actualización, el tamaño del archivo y el tipo del mismo. Además incluye un mapa del archivo mediante apuntadores a bloques de dispositivo que contienen datos del archivo. A través del mapa de bloques del nodo-i se puede acceder a cualquiera de sus bloques con un número muy pequeño de accesos a disco.

  25. Jerarquía de directorios. Existe un directorio maestro que contiene un número determinado de directorios de usuario. Cada uno de estos directorios puede tener a su vez subdirectorios y archivos como entradas. Esto se cumple en cualquier nivel, es decir, en cualquier nivel un directorio puede constar de entradas para subdirectorios y/o entradas para archivos.

  26. Administración de Dispositivos de Entrada y Salida. Consiste en un sistema de almacenamiento o archivo temporal (caché), una interfaz de manejadores de dispositivos y otra para dispositivos concretos. El sistema operativo debe gestionar el almacenamiento temporal de E/S y servir las interrupciones de los dispositivos de E/S.

  27. Copias de respaldo y compresión de archivos. . Consiste en asegurar que los datos no se pierdan en caso de una falla. Para esto podemos emplear programas de sistema para respaldar datos del disco a otro dispositivo de almacenamiento, como un disco flexible, una cinta magnética o un disco óptico. La recuperación de la pérdida de un archivo individual, o de todo un disco, puede implicar simplemente restablecer los datos a partir del respaldo.

  28. Mantenimiento al sistema de archivos. Gestión del Espacio Libre .- Es la Administración del espacio que no queda asignado. Las técnicas más usadas son: · Tablas de Bits: Utiliza un vector que contiene un bit por cada bloque del disco. · Secciones libres encadenadas: Se encadenan juntas mediante un puntero y un valor de longitud en cada sección libre. · Indexación Trata el espacio libre como si fuera un archivo y utiliza una tabla índice trabajando con secciones de tamaño variable mejor que con bloques, obteniendo una entrada en la tabla para cada sección libre del disco.

More Related