La cinta magnética fue el primer tipo de memoria secundaria. Es un tipo de almacenamiento no volátil que consiste de una cubierta magnética sobre una tira delgada de plástico. Las cintas son dispositivos de acceso secuencial, lo cual implica que para leer el registro n se deben leer necesariamente los n - 1 registros anteriores.
Por ejemplo se tiene una cinta que se encuentra organizada de la siguiente manera:
En este caso, con nueve pistas y suponiendo que la pista de paridad es la última, hemos grabado el byte 10111110 y el bit de paridad está en 1 (estamos trabajando con paridad impar).
El valor del bit de paridad se fija de forma tal que la cantidad de bits en 1 de un número par (si se trabaja con paridad par), o un valor impar (si se trabaja con paridad impar).
Densidad de Grabación
La densidad de grabación (δ) en un medio de almacenamiento es la relación entre información y espacio que ocupa esta información. Es la cantidad de información por unidad de espacio.
Al usar al byte como unidad de información y la pulgada como unidad de espacio, la densidad de grabación se medirá en bytes por pulgada.
Registro Lógico, Inter Record Gap, Registro Físico y Factor de Bloqueo
Un registro es el conjunto de información correspondiente a una entidad. Tomemos como ejemplo el archivo biblioteca. Por cada libro de la biblioteca tenemos la siguiente información: título, autor, grupo editor, fecha de edición, estante en el que se encuentra. El conjunto de información de un libro en el archivo biblioteca forma un registro.
Cuando se graba o lee información en cinta la transferencia se puede realizar sólo si la cinta pasa bajo la cabeza lectora / grabadora a una velocidad determinada. La unidad necesita cierto tiempo para alcanzar esta velocidad.
Imaginemos un programa que graba registros que se ingresan por pantalla. Cada vez que se termina de ingresar un registro el programa lo graba en cinta. Entonces, con cada registro la unidad de cinta se pone en funcionamiento, alcanza la velocidad requerida para la transferencia, graba y frena hasta detenerse.
Con cada registro que se graba se desperdicia cierta cantidad de cinta en alcanzar la velocidad para la transferencia y frenar hasta detenerse. La cantidad desperdiciada por un registro es siempre la misma. Esta depende de la unidad y no de la forma en que se grabe.
Llamaremos al espacio de cinta desperdiciado entre dos registros (el desperdicio en detenerse luego de grabar el primero y arrancar para grabar el segundo) inter record gap (IRG) o inter block gap (IBG).
Supongamos que en nuestro ejemplo los registros son muy pequeños. Una vez en cinta todo el archivo, el espacio desperdiciado en IRG podría ser mayor que el utilizado por información. Para disminuir la cantidad de cinta desperdiciada en IRG se suele agrupar varios registros y grabarlos en bloques.
Cada registro para ser grabado, es almacenado en una porción de memoria central llamada buffer de entrada/salida. Cuando aquellos llegan a una cantidad previamente establecida, se graba el bloque en la cinta.
De esta manera, el tamaño del grupo de registros que se graba es mayor que el de un registro solo y, aunque el tamaño de cada IRG es siempre el mismo, la cantidad de IRG es menor, disminuyendo el espacio desperdiciado en estos.
Al registro que contiene la información con la que trabaja la aplicación lo llamaremos registro lógico (RL).
Al bloque de registros lógicos que se graba en el dispositivo de almacenamiento lo denominaremos registro físico (RF).
A la relación entre registro físico y registros lógicos la llamaremos factor de bloqueo (FB). El FB indica la cantidad de registros lógicos que contiene cada registro físico.
Es preciso aclarar que el programa de aplicación solo trabaja con registros lógicos. No es problema del programador de la aplicación más que definir el tamaño de los registros lógicos según la necesidad del programa y, en algunos casos, el FB.
En cuanto a los dispositivos de almacenamiento, sólo operan con registros físicos. No conocen el tipo de información que graban ni la cantidad de registros lógicos que forman cada registro físico.
Como hemos visto, el FB indica la cantidad de registros lógicos por cada registro físico. Se calcula como:
FB = QRL/ QRF = LRF/LRL
La longitud del registro físico depende de la longitud del registro lógico y del factor de bloqueo que adoptemos para el problema:
LRF = LRL * FB
La LRF puede expresarse en bytes ( LRFb) o en pulgadas (LRFi) y entre estas dos formas de representarlas la relación es:
LRFb = LRFi · δ → δ [b/i]
La cantidad de registros físicos esta determinada por la cantidad de registros lógicos (QRL) y el FB usado.
QRF = QRL/FB
Fragmentación
La fragmentación del medio de almacenamiento es un efecto producido por el desperdicio de espacio. En algunos casos, los porcentajes elevados de fragmentación se deben a la elección de un FB no adecuado al sistema con que se cuenta.
Reconocemos tres tipos de fragmentación: interna, externa y del sistema o de IRG’s.
Fragmentación interna
La fragmentación interna se produce en los casos en que el último registro físico del archivo no está completamente usado por registros lógicos.
FRI = QRF · LRF - QRL · LRL
Fragmentación externa
La fragmentación externa está originada por porciones de cintas no utilizadas por registros físicos ni IRG’s que no pueden ser utilizadas para otro archivo. Este tipo de fragmentación tenía mayor importancia antiguamente cuando un archivo era demasiado grande como para ser almacenado en un solo carrete de cinta, y el espacio que quedaba sin usar en todos los carretes menos el último no podía ser usado para almacenar información de otros archivos. En la actualidad, la capacidad de un cartridge (versión moderna de un viejo carrete de cinta) es, en general, mucho más grande que el tamaño de un archivo promedio y es por ello que la fragmentación externa pierde relevancia en el cálculo de desperdicio en cinta.
FRE = Lcinta - QRFxCinta · (LIRG + LRF) para un solo carrete.
FRE = FRExCinta · (Qcintas - 1)
Esto se hace de esta forma ya que en el último carrete de cinta la FRE no se considera ya que el resto de la cinta podría ser usado por otros archivos, cosa que no puede suceder con los carretes intermedios.
Fragmentación del sistema
La fragmentación del sistema se debe al espacio en cinta desperdiciado entre bloques, producto de la aceleración y desaceleración de la unidad de cinta para alcanzar la velocidad de arrastre.
FRS = QRF · LIRG
Porcentajes de Fragmentación
El porcentaje de fragmentación interna advierte el grado de importancia del posible desperdicio producido en el último registro físico del archivo. Se obtiene dividiendo el espacio desperdiciado por FRI por el espacio total que ocupa el archivo y multiplicado por 100
%FRI = (FRI / Total del archivo) * 100
En forma análoga, podemos calcular el porcentaje de FRE y de FRS. El porcentaje de fragmentación total se calcula como la suma de los tres porcentajes antes mencionados.
El total de espacio que ocupa el archivo se calcula de la siguiente manera:
Total del archivo = (QCarretes – 1)· LCarrete + QRFUltimo carrete · (LRF + IRG)
Velocidad de Arrastre y velocidad de transferencia
La velocidad a la que pasa la cinta por la cabeza lectora grabadora cuando se realiza la transferencia de datos se denomina velocidad de arrastre (Va).
La velocidad de transferencia es una característica de cada unidad e indica cuanta información puede leerse o grabarse por unidad de tiempo.
La relación entre las dos velocidades es:
Vt [b/seg] = Va [i/seg] ∙ δ [b/i]
Tiempos de Grabación
El tiempo de grabación de un registro aislado se calcula sumando el tiempo consumido en la transferencia de los datos y el tiempo utilizado por el dispositivo en arrancar y frenar, llamado tiempo de IRG.
T1RF = Ttransf. + TIRG.
El tiempo de transferencia se calcula
Ttransf = LRF / Vt
El TIRG es el tiempo empleado por el dispositivo para frenar y acelerar entre cada bloque de información que graba. No es un dato fácilmente calculable debido a que la aceleración de la unidad no es constante.
Conociendo el tiempo de grabación de 1 RF podemos obtener el tiempo de grabación de un archivo entero:
TARCH = T1RF ∙ QRF = (LRF/Vt + TIRG) ∙ QRF