Ingeniero Técnico en Informática de Sistemas
Ficheros y Bases de Datos
FICHEROS Y BASES DE DATOS
TEMA 1 ASPECTOS BÁSICOS DE LOS FICHEROS
1.1 Jerarquía de memoria
Memoria Primaria
- La primera idea es almacenar la información en el medio más rápido posible, para asegurar
una rápida gestión.
- El coste de acceso a memoria primaria, o memoria RAM, es fijo y reducido.
- Pero la utilización de este tipo de memoria presenta diferentes problemas:
- Suele ser un medio bastante caro, por lo que se suele limitar su capacidad.
- La información se pierde al producirse un fallo de corriente eléctrica.
Memoria Secundaria
- Estas limitaciones aconsejan, la utilización de la memoria secundaria.
- Sus propiedades son las siguientes:
- Presenta un coste por byte mucho menor que la memoria RAM.
- Preserva su contenido al producirse un fallo de corriente eléctrica.
- Es bastante más lenta que la RAM y además el coste de acceso no es fijo.
Definición de Ficheros
- La información en memoria secundaria se almacena en ficheros, que se define como una
Colección de Información Relacionada.
- Debido al alto coste temporal del acceso a la memoria secundaria, se desea:
- Maximizar la información recuperada.
- Minimizar el número de accesos.
Manejo de Buffers
- Un buffer se define como un conjunto de bytes, que son leídos o escritos desde un
dispositivo de almacenamiento, en la memoria primaria.
- La utilización de esta técnica permite reducir el número de accesos a memoria secundaria.
1.2 Ficheros lógicos y ficheros físicos
- Desde un punto de vista físico, un fichero se define como un conjunto de bytes que se
almacenan en memoria secundaria.
- Desde el punto de vista de una aplicación, un fichero es su conexión con el mundo exterior,
posibilitándole el envío y la recepción de información.
-De este modo se definen el Fichero Físico y el Fichero Lógico.
- La conexión entre ambos es realizada por el sistema operativo.
1.3 Acceso a los datos situados en ficheros
Administrador de Ficheros
- El administrador de ficheros es la parte del sistema operativo que se encarga de la gestión de
los ficheros.
- Su primera tarea es comprobar que existe una conexión entre el fichero lógico y un fichero
físico determinado.
- Seguidamente se define en que parte del fichero se desea realizar la operación, y si esta se
encuentra en un buffer de memoria.
Procesador de Entrada/Salida
- El procesador de entrada/salida se encarga de controlar el tráfico de información desde y
hacia la memoria primaria.
Número de Buffers y Velocidad de Acceso
- El manejo de buffers por parte del administrador de ficheros permite reducir el número de
accesos a memoria secundaria.
- Pero una cuestión fundamental es el número de buffers a utilizar.
- En realidad se utilizan varios buffers que se manejan de modo indistinto para lecturas y
escrituras.
- Si todos los buffers están ocupados, se debe vaciar uno de ellos para posibilitar una lectura.
- Normalmente se utiliza el algoritmo LRU, es decir, se vacía el buffer menos recientemente
utilizado.
1.4 Coste de acceso a dispositivos de almacenamiento
Tipos de Dispositivos
- Según el modo en el que se accede a un dato dentro del medio de almacenamiento:
- Los Dispositivos de Acceso en Serie, como las cintas magnéticas.
- Los Dispositivos de Acceso Directo, como los discos magnéticos.
- Los primeros se utilizan para almacenar información que deba ser leída o escrita de modo
global.
- Mientras que los segundos se utilizan en el manejo de ficheros cuyo criterio de acceso es
más aleatorio.
1.4.1 Coste de acceso a discos
Organización de un Disco
- Un disco se presenta como un conjunto de Platos, cada uno de los cuales presenta al menos
una Superficie Magnética sobre la que se almacena información.
- Cada superficie se divide en Pistas, y éstas a su vez en Sectores.
- Las operaciones sobre la superficie se realiza a través del Cabezal de Lectura/Escritura.
- El movimiento del cabezal para alcanzar una pista concreta se denomina Desplazamiento.
- Cuando un disco presenta varios platos se denomina Paquete de Discos.
- La capacidad de los sectores suele ser constante en todo el disco, por lo que las pistas
interiores presentan mayor densidad de grabación.
- El acceso a un dato en disco, lee o escribe la información de un sector sobre un buffer.
Organización por Sectores
- Un usuario asume que los ficheros aparecen en sectores continuos dentro del disco.
- Pero no es así, ya que no es posible leer sectores contiguos, porque se requiere un cierto
tiempo para procesar la información inicialmente leída.
- Por tanto, si se almacenaran de este modo, sólo se podría leer un sector en cada giro.
- Para evitar este problema, se suelen intercalar los sectores lógicamente contiguos entre otros
sectores.
- Otra alternativa es el acceso consecutivo de un conjunto de sectores, denominado Cúmulo.
- La secuencia lógica de los cúmulos en el fichero aparece en la FAT.
- Para reducir el coste de acceso, es necesario minimizar el coste de los desplazamientos.
- Un registro puede aparecer en un único sector, lo que puede producir Fragmentación interna.
Organización por Bloques
- Las pistas de los discos también pueden estar organizados por bloques.
- Su tamaño puede ser definido por el usuario, y su valor puede ser fijo o variable.
- Un bloque puede descomponerse en una serie de subbloques:
- Subbloque Contador, que incluye el número de bytes del bloque asociado.
- Subbloque Clave, que incluye la clave del último registro del bloque.
- Subbloque de Datos, en el que aparece la información.
Overhead de las Organizaciones
- Tanto los sectores como los bloques produce cierto overhead de almacenamiento, que
reduce la capacidad del disco.
- Parte de este overhead se produce cuando se formatea el disco.
- En las organizaciones por sectores, debe de incluir en cada sector la siguiente información:
- Dirección del Sector y de la Pista.
- Estado del Sector, útil o dañado.
- Espacios y Marcas de Sincronización.
- El usuario no tiene la posibilidad de manejar esta información. En las organizaciones por
bloques, parte de esta información sí puede ser definida por el programador.
Cálculo del Coste de Acceso a un Disco
- El coste del acceso a un disco se calcula a partir de la suma de tres valores:
- Tiempo de Desplazamiento, para situar el cabezal sobre el cilindro adecuado.
Se obtiene como suma del Tiempo Inicial de Arranque del Cabezal, s, y el producto
del coste de atravesar un cilindro, m, y el número de cilindros a atravesar, n.
f(n) = s + m*n
- Retraso por Rotación, que incluye el tiempo necesario para situar el cabezal en la
pista. Depende de la velocidad de giro del disco y de la posición del cabezal.
- Tiempo de Transferencia, en el que se realiza de modo efectivo la operación.
Depende del número de bytes a transmitir y de la velocidad de giro.
Tiempo Transferencia = (nº bytes a transmitir / nº bytes en la pista) * Tiempo Rotación
Descargar
Enviado por: | El remitente no desea revelar su nombre |
Idioma: | castellano |
País: | España |