Cómo explicar la memoria virtual a un laico

PO Boxes.
Imagine que todos en la ciudad tienen una dirección física, que es su dirección, pero a nadie se le ha enviado el correo a su dirección física. En cambio, todos tienen apartados de correos. El número en su apartado de correos no se relaciona de ninguna manera con la dirección del propietario. Los trabajadores postales y el propietario de la caja conocen el mapeo. El número de apartado postal es la dirección virtual, y la oficina postal es el administrador de memoria virtual. Cuando alguien en esta ciudad quiere iniciar una correspondencia con otra persona, no dan su dirección, dan su número de apartado de correos.

Hay algunas restricciones aquí …

(1) No puede enviar una carta a alguien que solo tenga una dirección postal pero no un apartado de correos. Ni siquiera hay una manera de intentar hacer esto. Simplemente no existen en el espacio de direcciones del apartado de correos.
(2) Si intenta enviar una carta a un apartado postal que no se ha asignado a una dirección postal, la oficina de correos le devuelve la carta con “Falla de segmentación” estampada.

Imagine la memoria física de su computadora como una tienda conveniente . El nombre de tienda de conveniencia no es inapropiado, ya que puede comprar productos de la tienda de conveniencia fácilmente. Digo que es fácil comprar productos en tiendas convenientes porque la mayoría de ellos están relativamente cerca de donde vives. ¿Necesita una botella de Dr. Spritedew Cola? Vaya a la tienda conveniente y consígalo. Pero, ¿qué pasa si un día vas a la tienda y todos están fuera del Dr. Spritedew Cola? Eso ya no es conveniente, ¿verdad? Bueno, resulta que este lugar mágico llamado tienda conveniente puede quedarse sin cosas fácilmente si no se almacenan a tiempo.

Suponiendo que el gerente de la tienda cuente la cantidad de artículos que tienen y reabastezca todo antes de que terminen, para usted como consumidor es algo realmente bueno porque puede obtener lo que quiera cuando lo desee. Como el gerente de la tienda es un buen gerente, él o ella reabastecen todo a tiempo. Los artículos adicionales se guardan en el área de almacenamiento posterior porque los estantes dentro de la tienda son pequeños y solo pueden albergar un número máximo de 200 Dr. Spritedew Colas a la vez. Por lo tanto, los productos solo se sacan del área de almacenamiento posterior si los artículos en la tienda se están agotando. Pero para reponer los productos, el gerente tiene que ir al área de almacenamiento y llevar las cosas a la tienda. Este es un proceso bastante costoso porque él o ella tiene que ir al área de almacenamiento posterior, llenar el carrito, devolverlo a la tienda y organizar los artículos en los estantes de una manera ordenada. Como puede ver, esto requiere más tiempo y esfuerzo en comparación con la compra del artículo directamente en el estante.

Dicho esto, considérate como el sistema operativo , la tienda conveniente como la memoria física y el área de almacenamiento posterior como el disco duro de la computadora. Sin embargo, hay un pequeño problema con el administrador que busca los elementos del área de almacenamiento posterior, el administrador debe saber dónde están almacenados. Es decir, tiene que mirar su libro y averiguar dónde se almacenan las nuevas cajas del Dr. Spritedew Cola. Este libro es su tabla de páginas y el estante es una página en memoria.

El sistema operativo utiliza la memoria virtual porque un usuario puede ejecutar muchos programas en la computadora y no todos los programas se pueden almacenar en la memoria simultáneamente. Como las unidades de disco duro tienen más capacidad, aunque más lenta que la memoria física, su sistema operativo puede intercambiar cosas entre la memoria física y el disco.

Considera tus posesiones.

La mayoría de las personas posee muchas cosas. Pero, solo puede llevar una cantidad muy limitada cuando va al trabajo, la escuela, las vacaciones o donde quiera que vaya. ¿Cómo logras tener lo que necesitas a mano?

Piensa en lo que va a hacer y coloca las cosas que más necesita lo más cerca posible de usted. Hay muy pocas personas que van a cualquier parte sin su billetera y llaves, y una gran gente ahora toma un teléfono. Si vas a un lugar especial, traerás cosas adicionales para ese propósito.

Si compra cosas adicionales, las almacena en casa, en lugar de llevarlas consigo.

La memoria virtual no es muy diferente, excepto que el análisis de actividad es lo que llamamos Localidad de referencia, la idea de que el uso de una cosa implica la necesidad de cosas cercanas pronto.

No solo eso, sino que podemos extender la idea, porque las personas no se limitan solo a su hogar y bolsillos. Puede almacenar en caché ciertas cosas en su automóvil, equipaje, escritorio o casillero. En una computadora, estos se distribuirían linealmente en orden de velocidad de acceso, pero de lo contrario, el principio está ahí.

La memoria virtual intenta hacer que parezca que todo está disponible a la velocidad de acceso más alta posible, sin gastar dinero en esa velocidad de acceso. En el mundo real, no hay acceso más rápido que algo que ya tienes.

Imagínese a usted y a un grupo de sus amigos parados en el mismo piso de un edificio. Existe una gran posibilidad de que puedas estampar en el pie de tus amigos. Así sería un sistema sin memoria virtual. Tomando a cada individuo como tareas / procesos independientes, existe una alta probabilidad de que uno pueda acceder a la zona del otro. Ahora, si cada uno de ustedes está parado en diferentes pisos del mismo edificio, nunca podrá pisar los pies de otra persona, aunque esté parado exactamente donde otra persona podría estar parada en un piso debajo o arriba, desde una referencia de vista superior. Así es como funciona la memoria virtual

Los sistemas con memoria virtual asignan diferentes espacios de direcciones para diferentes tareas y ayudan a que no se corrompan entre sí. Los sistemas sin VM ejecutan todo en el mismo espacio de direcciones. Hay mucho más que esto, pero para la analogía más simple, esto podría ser suficiente 🙂

Imagine que usted y un amigo se cuentan sus historias favoritas, pero no habla el mismo idioma, por lo que debe utilizar los servicios de un traductor. Ese es el primer componente de un sistema de almacenamiento virtual: un traductor que convierte las direcciones virtuales en direcciones reales. Ahora imagine que su amigo olvida parte de su historia, pero el traductor recuerda que tiene esa historia en un libro, por lo que obtiene el libro y se lo lee a su amigo para que pueda recordarlo. Como él ha estado haciendo todo el tiempo, no te das cuenta de que la sustitución tuvo lugar. Por lo que puedes ver, tu amigo ha estado hablando todo el tiempo. Puede notar que tomó un poco más de tiempo, pero eso es todo. Eso es lo que sucede durante un “fallo de página” de la memoria virtual y el sistema operativo tiene que buscar información del disco y volver a cargarla en la memoria real antes de poder usarla. Esto es una simplificación excesiva, por supuesto, pero comunica los fundamentos básicos razonablemente bien, creo.

Casi todos los niños de esa edad tienen una caja o bolsa llena de juguetes que ciertamente se derraman a otra caja o bolsa. Podrías usar esa analogía para explicar sobre la memoria virtual versus la memoria física 🙂

Normalmente mantengo todos los papeles con los que estoy trabajando en mi escritorio. Los papeles con los que no estoy trabajando los guardo en el sótano.

Digamos que tengo un gran proyecto y necesito trabajar con muchos documentos. Si no tengo suficiente espacio en mi escritorio para guardar todos los documentos para el proyecto, tendré que establecer un lugar en el sótano donde pueda ir a buscarlos. Puede llevar un poco más de tiempo llegar a los papeles en el sótano, pero al menos ahora puedo acomodar todos los papeles que necesito en algún lugar.

Incluso podría necesitar un mapa especial para ayudarme a encontrar dónde están mis papeles. Simplemente podría mirar el mapa para ver si hay un papel que estoy buscando en mi escritorio, o si necesito ir al sótano para buscarlo.