Hardware Linux: la historia de la memoria y los dispositivos de almacenamiento

En los primeros dos artículos de esta serie, miré y. He discutido la memoria y el almacenamiento en ambos artículos, pero solo como un complemento para comprender cómo funciona el procesador. En este artículo, profundizaré en los diferentes tipos de memoria y almacenamiento. También estoy analizando por qué tenemos diferentes tipos de memoria, como RAM, caché y discos duros (incluidos los dispositivos de estado sólido (SSD)).

Los términos y tienden a usarse indistintamente en la industria tecnológica, y las definiciones de ambos en el Diccionario Informático Gratis (FOLDOC) apoya esto. Ambos se pueden aplicar a cualquier tipo de dispositivo donde los datos se pueden almacenar y recuperar más tarde.

La ordenador ideal tendría un solo tipo de memoria. Sería rápido y económico, y proporcionaría acceso aleatorio a cualquier lugar para leer y escribir. El acceso aleatorio es mucho más flexible que el acceso en serie y proporciona una ruta más rápida a ubicaciones específicas en la memoria. Cada ubicación es accesible tan rápido como cualquier otra.

Índice

    Volatilidad vs costo y velocidad

    Aunque los dispositivos de almacenamiento tienen atributos bien conocidos, como la capacidad, que afectan la forma en que se usa un componente en particular en un ordenador, las características distintivas más importantes son la velocidad y la volatilidad.

    La memoria volátil solo retiene los datos almacenados en ella mientras se aplica energía. La memoria de acceso aleatorio (RAM) está disponible en diferentes velocidades y tamaños. Está formado por celdas de memoria transistorizadas y siempre es volátil. Solo retiene los datos almacenados en él mientras se aplica energía. La memoria volátil puede ser bastante rápida.

    La memoria no volátil retiene los datos almacenados incluso cuando se apaga la alimentación. Las unidades de disco están hechas de discos cubiertos con un material magnético. Los datos se escriben utilizando campos magnéticos y los datos magnéticos resultantes se mantienen como bits magnéticos microscópicos en franjas circulares en el disco. Los discos y otros medios magnéticos no son volátiles y retienen datos incluso cuando no hay energía. La memoria no volátil es significativamente más lenta que la memoria volátil.

    Como hemos visto en artículos anteriores de esta serie, el procesador realiza su tarea más rápido que la mayoría de las memorias. Esto da como resultado el uso de análisis predictivos para mover datos a través de múltiples capas de caché cada vez más rápido para garantizar que los datos necesarios estén disponibles para el procesador cuando los necesite.

    Eso está bien, pero una memoria más rápida siempre ha sido más costosa que una memoria más lenta. La memoria volátil también es más cara que la memoria no volátil. Hasta ahora.

    Almacenamiento avanzado

    Uno de los primeros dispositivos de memoria no volátil fue tira de papel con perforaciones y un ticker con lector de cintas de papel. Este método tenía la ventaja de ser relativamente económico, pero era lento y frágil. Las cintas de papel podían dañarse, por lo que había programas para duplicar las cintas de papel y kits de reparación. Por lo general, el programa se almacenaba en una cinta y los datos se capturaban desde la consola u otra cinta. La salida se puede imprimir en la consola o perforar en otra cinta.

    Tarjetas perforadas fueron otro dispositivo de almacenamiento temprano. Dado que cada tarjeta representaba un registro, gran parte del procesamiento, como la extracción de los datos deseados de un conjunto más grande, se podía realizar fuera de línea en dispositivos como clasificadores y ensambladores. Las tarjetas perforadas eran una extensión más versátil de la cinta de papel.

    El almacenamiento de volátiles era basto y estaba compuesto por bancos de relés electromecánicos. Tal memoria era muy lenta y costosa. Otro medio de almacenamiento volátil más adecuado para el almacenamiento primario fue el Tubo de rayos catódicos (TRC). Cada CRT podría almacenar 256 bits de datos a un costo de alrededor de US$ 1,00 por bit. Sí, poco a poco.

    Sonic memoria de línea de retardo ha estado en uso por un tiempo. Uno de los tipos de perforadoras que mantuve mientras trabajaba para IBM usaba este tipo de memoria. Tenía una capacidad y una velocidad muy limitadas, y solo proporcionaba acceso secuencial en lugar de aleatorio. Sin embargo, funcionó bien para el uso previsto.

    El almacenamiento en discos magnéticos y unidades de cinta se desarrolló rápidamente en la década de 1950 e IBM introdujo RAMAC, el primer disco duro comercial en 1956. Esta unidad de almacenamiento no volátil utilizaba 50 discos magnéticos en un solo eje giratorio para almacenar aproximadamente 3,75 MB (sí, megabytes) de datos. Alquilado a $ 750 / mes, el costo de este almacenamiento rondaba los $ 0,47 por byte por mes.

    Los discos magnéticos son lo que me gusta llamar acceso semialeatorio. Los datos se escriben en miles de pistas circulares concéntricas en el disco y cada pista contiene muchos sectores de datos. Para acceder a los datos en un sector específico y rastrear los cabezales de lectura/escritura, primero debe buscar la pista correcta y luego esperar a que el disco gire para que el sector de datos deseado quede debajo del encabezado. A pesar de lo rápidas que pueden parecer las unidades de disco duro actuales, siguen siendo bastante lentas en comparación con la memoria RAM de estado sólido.

    Memoria de núcleo magnético se usó ampliamente en las décadas de 1950 y 1960 y proporcionó acceso aleatorio. Sus desventajas eran que era caro y lento. El costo de la memoria de núcleo magnético comenzó en $ 1,00 por bit, pero cayó a alrededor de $ 0,01 por bit cuando la fabricación de los planes centrales se trasladó a Asia.

    Cuando se inventaron los transistores en la década de 1950, la memoria del ordenador, y otros componentes, se trasladaron al nuevo memoria semiconductora dispositivos, que también se llama dispositivos semiconductores. Este tipo de memoria es volátil y los datos se pierden cuando se desconecta la alimentación.

    Para 1970, la RAM se había comprimido en chips de circuito integrado (IC). A medida que los circuitos integrados empaquetaban más memoria en espacios más pequeños, también se hacía más rápido. Los costos iniciales de la memoria IC fueron de alrededor de $ 0.01 por bit u ocho centavos por byte.

    La primera unidad de estado sólido (SSD) se introdujo en 1991. La tecnología SSD utiliza memoria RAM Flash para almacenar datos en un dispositivo de memoria de estado sólido no volátil. Esta tecnología se sigue utilizando en la actualidad en tarjetas de memoria SD y unidades USB. Los dispositivos SSD son mucho más rápidos que los discos duros giratorios, pero siguen siendo significativamente más lentos que la RAM utilizada para el almacenamiento principal.

    Hoy dia

    Los discos duros actuales pueden contener varios terabytes de datos en medios de grabación magnéticos no volátiles. Un disco duro típico de 4 TB se puede comprar por alrededor de $ 95, por lo que el costo se reduce a alrededor de $ 0.000000000023 por byte. La memoria RAM moderna se puede obtener en grandes cantidades y es muy rápida. La memoria RAM puede costar tan solo $ 89 por 16 GB, lo que equivale a alrededor de $ 0.00000055625 por byte. A este ritmo, 4 TB de RAM cuestan alrededor de $ 22,250, por lo que el almacenamiento en RAM sigue siendo alrededor de 250 veces más caro que el almacenamiento en disco duro.

    Aunque no es el tema principal de este artículo, también tenemos lo que se conoce como almacenamiento fuera de línea, como dispositivos de CD/DVD-ROM/RW, y medios extraíbles como discos duros externos y unidades de cinta.

    Diferentes tipos de almacenamiento trabajando juntos

    Tenemos discos duros que almacenan varios terabytes de datos en medios no volátiles. Son más lentos que cualquier tipo de memoria de estado sólido y no proporcionan un verdadero acceso aleatorio, por lo que no son adecuados para su uso como almacenamiento principal al que el procesador tiene acceso directo. También tenemos RAM rápida, que es significativamente más costosa que el almacenamiento en disco, pero es rápida y el procesador puede tener acceso directo a ella. Las unidades USB, los CD/DVD y otros tipos de almacenamiento se utilizan para almacenar datos y programas cuando rara vez se necesitan o quizás solo cuando la aplicación está instalada.

    Nuestras ordenadores, por lo tanto, utilizan una combinación de tipos de almacenamiento. Tenemos almacenamiento en línea con gigas de RAM para almacenar programas y datos mientras son procesados ​​por la CPU. Tenemos dispositivos HDD o SSD que brindan terabytes de espacio en el disco duro para el almacenamiento a largo plazo de datos accesibles en cualquier momento. La Figura 1 muestra cómo funciona todo junto.

    Figura 1: Se combinan diferentes tipos de almacenamiento para equilibrar la velocidad, la capacidad y el costo.

    Los datos más cercanos a la CPU se almacenan en la memoria caché, que es la memoria RAM más rápida del sistema. También es la memoria más cara. El almacenamiento primario también es RAM, pero no tan rápido ni tan costoso como el caché. Cuando el procesador necesita datos, ya sea el código del programa o los datos utilizados por el programa, la memoria caché los proporciona cuando es posible. Si los datos no están ya en la memoria caché, la unidad de administración de memoria CPU los ubica en la RAM. Lo mueve al caché desde donde se puede enviar al procesador como instrucciones o datos.

    El código del programa y los datos utilizados por los programas se guardan en el almacenamiento en línea, como una unidad de disco duro (HDD) o una unidad de estado sólido (SDD) hasta que se necesiten. Luego se cargan en la RAM para que la CPU pueda acceder a ellos.

    El almacenamiento de archivos se utiliza principalmente para fines a largo plazo, como copias de seguridad y otros mantenimientos de datos. El medio de almacenamiento generalmente consta de cintas de alta capacidad, que son relativamente económicas pero también son las más lentas para acceder a los datos almacenados en ellas. Sin embargo, las memorias USB y las unidades externas también se pueden usar para el almacenamiento de archivos. Las copias de seguridad y los datos de archivo tienden a almacenarse fuera del sitio en instalaciones seguras y geográficamente separadas, lo que hace que su recuperación lleve mucho tiempo cuando sea necesario.

    Los datos de archivo y almacenamiento fuera de línea se pueden copiar al dispositivo de almacenamiento en línea o directamente al almacenamiento principal. Un gran ejemplo de esto último son las unidades USB en vivo de Fedora. El sistema se inicia directamente desde estas unidades USB, ya que se montan y utilizan de la misma manera que el almacenamiento en disco duro tradicional.

    Convergencia

    La imagen de almacenamiento que he descrito hasta ahora ha sido fluida desde el comienzo de la era de los ordenadores. Constantemente se desarrollan nuevos dispositivos, y muchos de ellos se pueden encontrar en las líneas de tiempo históricas de la Museo de Historia de la Computación se han quedado en el camino. ¿Alguna vez has oído hablar de la burbuja de memoria?

    A medida que evolucionan los dispositivos de almacenamiento, también lo hace la forma en que se utiliza el almacenamiento. Estamos viendo los comienzos de un nuevo enfoque de almacenamiento impulsado por teléfonos, relojes, tabletas y ordenadores de placa única (SBC) como Arduino y Raspberry Pi. Ninguno de estos dispositivos usa un disco duro para el almacenamiento. Usan al menos dos formas de RAM: una como una tarjeta micro-SD para almacenamiento en línea y otra RAM más rápida para la memoria principal.

    Espero que el costo y la velocidad de estos dos tipos de RAM converjan para que todo el almacenamiento de RAM sea el mismo: rápido, económico y no volátil. Los dispositivos de almacenamiento de estado sólido con estas características eventualmente reemplazarán la implementación actual de almacenamiento primario y secundario separados.

    Artículos de interés

    Subir