¿Por qué el sistema informático no usará la memoria del disco duro como RAM adicional?

Su procesador es un dispositivo de computación de alta velocidad que puede procesar miles de bits por segundo, incluso más.

Los datos en su computadora fluyen desde su disco duro a su RAM (que también almacena datos de uso frecuente para un acceso más rápido) y desde la RAM a su procesador, y luego desde allí a otros periféricos como altavoces de monitor, etc.

Para procesar un juego, supongamos que necesita diferentes archivos en la misma instancia, ya sea imágenes, sonidos, etc. Simultáneamente también está haciendo una gran cantidad de cálculos matemáticos en su interior.

Para hacer todo esto necesita los archivos necesarios a una velocidad súper alta, una velocidad que lamentablemente su disco duro no puede proporcionar.

Para este problema utilizamos memorias RAM … son más rápidas, mucho más rápidas, puedes buscar en Google las velocidades.

RAM copia los archivos que el procesador necesitará previamente en su memoria del HDD, y alimenta el procesador a una velocidad equivalente.

Entonces, un procesador más rápido necesita una RAM más rápida, la combinación le brinda una computadora más rápida. La velocidad del disco duro apenas importa, lo que causa mucha diferencia

Ahora, si desea utilizar el almacenamiento de su HDD como RAM, reconsidere.

PD: Hay softwares que prometen hacer uso del almacenamiento de HDD como RAM, pero todos sabemos que las promesas deben romperse 😉

Porque no se ha configurado para hacerlo. En Windows puede encontrar la configuración aquí: cambiar el tamaño de la memoria virtual

La configuración predeterminada es usar una parte del HDD como RAM.

Sin embargo, tenga en cuenta que un HDD es muy lento en comparación con la RAM. Además, la CPU solo puede trabajar con datos dentro de la RAM real, por lo que cualquier cosa en la memoria virtual debe copiarse primero en la RAM.

La forma en que funciona la memoria virtual (unidad USB o HDD) es que cuando la RAM se está llenando, la computadora copia los datos que no se han utilizado recientemente en la memoria virtual, para liberar RAM, por lo que el activo puede usar más RAM tarea.

Usar una unidad USB como RAM es una característica reciente. La memoria virtual / archivo de intercambio (usando el HDD como RAM) ha existido al menos desde Windows 3.0 a principios de la década de 1990.

Bueno, como todos ya han mencionado, está el problema de la velocidad. La respuesta más técnica es porque la CPU de la computadora no tiene acceso directo a bytes individuales de datos en el disco duro. Por lo general, no se da cuenta, pero su disco duro asigna espacio en disco en bloques.

La mejor manera de ver esto (desde Windows) es ir al Explorador de archivos, encontrar un archivo pequeño (alrededor de 1 KB), hacer clic derecho sobre él y hacer clic en “Propiedades”. Verá dos líneas: “Tamaño de archivo” y “Tamaño de archivo en disco”.

Notarás que estos dos números son diferentes. El tamaño del archivo puede ser de 1 KB, pero el “tamaño del archivo en el disco” será de 4 KB. Eso significa que su HDD tiene un tamaño de bloque de 4 KB (la mayoría de las unidades modernas lo hacen), por lo que cada archivo, sin importar cuán pequeño sea, usa 4 KB de espacio, y cada archivo que es más grande que 4 KB se redondea al siguiente 4 más alto. KB tamaño. (Por ejemplo, un archivo de 5 KB de tamaño realmente utilizará 8 KB de espacio en su HDD).

Su CPU no puede acceder directamente a un byte específico del archivo. No tiene acceso directo a la información almacenada en su HDD; en cambio, tiene que pasar solicitudes al HDD y esperar … MUCHO. Esta respuesta se convertiría en un capítulo completo de un libro si explicara en detalle cómo se almacenan los archivos en su HDD, pero no es simple y no es tan rápido como cree. En los términos más simples, el HDD tiene que terminar lo que sea que esté haciendo actualmente. Luego tiene que mover el cabezal de lectura a esa pista, esperar a que ese sector pase por debajo del cabezal de lectura y leer todo el sector (incluso si solo necesita un byte de él). Luego, ese sector debe pasar del búfer interno del HDD a la RAM para que su CPU pueda ver realmente el contenido. Puede ser rápido desde SU punto de vista (10 a 15 milisegundos), pero para su CPU, es como la melaza que fluye cuesta arriba en temperaturas bajo cero (la CPU puede leer un byte de RAM en 8 a 10 nanosegundos) .

Para poner eso en perspectiva, eso es aproximadamente un millón de veces más lento que leerlo desde la RAM, y tendría que pasar por todo el proceso cada vez que necesitara ese byte. Su CPU estaría perdiendo mucho tiempo esperando el HDD, cuando podría estar haciendo otra cosa. Tendría que usar el mismo proceso a la inversa si fuera necesario cambiar el valor del byte; todo el sector tendría que escribirse en el búfer de la unidad, y se tendría que enviar un comando al HDD para volver a escribir el sector en el disco (el disco duro tendría que terminar lo que estaba haciendo, el cabezal de escritura tendría que si se mueve, tendría que esperar a que el sector esté debajo del cabezal de escritura, luego tendría que escribir el búfer en el disco, etc.) El proceso es en realidad mucho más complicado de lo que describí; Solo estaba tratando de dividirlo en términos simples.

Debido a que no tiene acceso directo a nivel de bytes al HDD, una CPU no puede ejecutar programas directamente desde el HDD. Primero tiene que cargarlos en la RAM. Cualquier dato que deba manipularse también debe cargarse en la RAM, modificarse y luego volver a escribirse. Esta es la razón por la cual su sistema operativo utiliza parte del disco duro como “memoria virtual”, pero esa es otra pared de texto. 🙂

PD , una cosa más. Si su sistema operativo es solo de 32 bits, no puede acceder a más de 4 GB de memoria de todos modos, por lo que no habría ninguna diferencia si pudiera usar parte del disco duro como RAM física. (Si tuviera una computadora con más de 4 GB, pero solo un sistema operativo de 32 bits, hay formas en que la RAM adicional podría usarse como una “unidad de RAM” a través de un proceso llamado intercambio de bancos , pero eso es todo. el sistema no podía usar esa RAM adicional, aunque la CPU sí.)

Los discos duros pertenecen a la clase de memoria de acceso secuencial, que son demasiado lentos en comparación con la memoria de acceso aleatorio (RAM) para acceder.

Déjame explicarte esto en detalle. Se accede a la memoria de acceso secuencial en una secuencia, mientras que en una RAM, se puede acceder aleatoriamente a cualquier ubicación. Por lo tanto, las RAM son más eficientes en términos de velocidad de acceso. El uso de HDD como RAM degradará la experiencia del usuario en gran medida, ya que el usuario comenzará a experimentar un retraso considerable incluso para las tareas más simples.

Hmmm … Bueno … Hay dos respuestas interesantes aquí:

1) Respuesta moderna: lo hacen, se llama espacio de página virtual y es el almacenamiento del HDD / SSD para páginas que no se han dibujado en la memoria. Una de las primeras máquinas virtuales fue la IBM S / 360. Una variante tenía 512,288 bytes de memoria física y 2 MBytes de memoria virtual. Los 1-1 / 2MBytes residuales se organizaron como bloques de memoria (páginas) en la Unidad de Disco. La computadora tenía dos interrupciones designadas en su repertorio de 32. Una era una “falla de página”: no había datos en esa dirección en la memoria física, buscaba y cargaba la página necesaria desde la Unidad de disco y la otra era “página cargada”, lo que significa que la página defectuosa de datos / instrucciones completadas de carga y ejecución podría continuar.

2) Antigua respuesta: No había memoria “ram” (entonces llamada núcleo) en algunos diseños iniciales de computadora a finales de los años 40. En cambio, todo estaba en un dispositivo externo y se leía directamente en la CPU para su ejecución o procesamiento de datos. ¡De hecho, vi uno donde todo entraba en una cinta de papel codificada Baudot de 5 bits leída a través de un TTY33! (¡Eso sí que era un dinosaurio magnífico!)
—-
Recuerde la siguiente regla de velocidad (la más rápida a la más lenta):

Registros de CPU, caché de CPU (L1 y L2), RAM, disco RAM, SSD, periférico de estado sólido (Nib de memoria USB 3.0), HDD, … ¡Su teclado!

Estos también van de mayor a menor costo. (¡Y mi Dell Precision M6300 tiene un pequeño dispositivo de caché SSD entre la CPU y el SSD / HDD! Los SSD eran extremadamente caros cuando se lanzó la computadora y un caché de datos / código dio una mejora significativa en la velocidad).

La RAM es útil, precisamente porque es mucho más rápido que el almacenamiento persistente, es decir, los discos duros. En otras palabras, la respuesta simple a su pregunta es porque los discos duros son demasiado lentos para reemplazar la RAM.

La jerarquía de memoria en una computadora típica es (la más rápida a la más lenta o, de manera equivalente, la capacidad más baja a la capacidad más alta):

  1. Registros de CPU.
  2. Caché de la CPU
  3. RAM
  4. HDD / SSD

Esencialmente, cada nivel de una jerarquía actúa como una caché para el nivel inferior, donde permite lecturas / escrituras más rápidas pero sin la capacidad de almacenar todos los datos.

Buena pregunta.

En realidad lo hace. El proceso se llama “intercambio” y ocurre cuando el sistema operativo determina que no tiene suficiente RAM para contener todos los programas o códigos que se ejecutan en cualquier momento. Cuando el sistema determina que se ha ‘quedado sin RAM’ para evitar que el sistema simplemente se bloquee, el exceso de datos se escribe en el disco duro y luego se vuelve a leer en la RAM para su ejecución según sea necesario.

Como se señaló, si esto ocurre o cuando ocurre, puede ralentizar drásticamente el rendimiento del sistema.

Los módulos RAM están optimizados para la velocidad. Los discos duros, por otro lado, están optimizados para la capacidad de almacenamiento. hipotéticamente, si ejecutara una computadora completamente a través de discos duros, sería ridículamente lento.
La razón por la que tenemos una combinación de RAM muy rápida y discos duros muy lentos es para reducir costos. puedes poner 64 gigabytes de RAM (incluso más en algunos casos extremos) en algunas computadoras, pero eso cuesta más de $ 300. y de todos modos, la mayoría de las aplicaciones requieren muy poca RAM.
eventualmente, llegaremos al punto en que la RAM no es necesaria porque los discos duros son extremadamente rápidos.

Lo hará, solo necesita configurar un archivo de intercambio más grande. tenga en cuenta que el intercambio hace que su computadora sea lenta, no importa si cree que su disco duro es rápido, o si es un ssd, o un ssd ultra rápido pci-express, son órdenes de magnitud más lentos que la RAM más lenta

Todos los sistemas operativos modernos usan memoria virtual, que es el término técnico para usar el almacenamiento del disco duro como memoria de acceso aleatorio. Casi todos los sistemas operativos, excepto algunos de los primeros sistemas operativos de microcomputadoras, tenían alguna facilidad para agregar memoria virtual.