Autor
|
Tema: [duda] memoria virtual y paginacion (Leído 2,479 veces)
|
MRx86
Desconectado
Mensajes: 88
Math's the way to do philosophy with the universe
|
Hola, pongo este post aqui por que los conceptos los saque de la MSDN, ya he leido estos conceptos varias veces pero no se porque cada vez que leo un concepto en ingles me da por pensar que no lo he entendido como es... asi que queria preguntar a ver si mi concepto esta bien, si no es molestia obviamente.
El siguiente es mi concepto sobre memoria virual:
Es un mecanismo que consiste en optimizar la memoria principal guardando los datos de los procesos que esten es estado de suspenso (por ejemplo, esperando una entrada desde el teclado) en el almacenamiento interno, ademas, la memoria virtual permite la seguridad e integridad de los datos de los diferentes procesos ya que un proceso no puede escribir directamente la memoria fisica de otro.
Y este es el que tengo sobre paginacion:
Es un mecanismo que permite ordenar los procesos en segmentos llamados "paginas".
Si, eso y ya. Si alguien tiene un concepto mas completo que el que tengo sobre la paginacion, agradeceria responderme con el mismo. Y si alguien conoce otra propiedad o caracteristuca sobre la memoria virtual, tambien agradeceria hacerlo.
Muchas gracias de antemano...
|
|
|
En línea
|
"Tengo una pregunta que a veces me tortura: ¿Estoy loco yo, o los locos son los demas?" - Albert Einstein
|
|
|
Orubatosu
|
Bueno a ver... son cosas relacionadas, pero no iguales y guardan relación con como gestiona la memoria un SO.
Para ello debemos de pensar que hasta no hace mucho (e incluso hoy en día) existe un problema, o mejor dicho varios.
Uno es que los sistemas operativos solo pueden direccionar una cantidad limitada de memoria.
¿Que es direccionar?, pues hablando en plata, la capacidad de "señalar" posiciones de memoria. Por poner un ejemplo clásico supongamos que tienes un montón de cajones, dentro de cada cajón te cabe un cantidad de información (por ejemplo una letra). Para almacenar la palabra "perro" necesitas 5 cajones. Supongamos que tienes mil cajones, y tu SO "sabe" que la palabra "perro" está en los cajones que van del 100 al 104.
Tienes obviamente un indice que te dice donde están las cosas (en términos muy generales y rudimentarios claro), pero una limitación de los sistemas es que la cantidad de cajones que pueden manejar no es ilimitada.
En los sistemas operativos de 32 bits, la cantidad de "cajones" es de 232
Esto es: 4.294.967.296 "cajoncitos". Eso pueden parecer muchos, pero muchos cajones, pero si en cada uno solo cabe una letra veremos que son poco mas de cuatro millones de "cajoncitos"
Parecen muchos, pero piensa que una película en BD puede llevar y exceder fácilmente los 40 millones... es decir: 10 veces mas de los que puedes manejar
En los sistemas operativos de 64 bits la cantidad es enormemente superior. Por ejemplo un simple Windows 10 64 bits está entre 128 Gb t 512 Gb dependiendo de la versión
Pero claro, que tu W10X64 soporte 128 Gb no quiere decir que los tengas, por regla general las placas base de consumo general no admiten mas de 32 Gb (aunque eso varía con el tiempo)
Bien, supongamos que tienes tu W10 X64, y tienes 8 Gb de memoria física instalada
Tu sistema operativo puede acceder a esa memoria (y a la de la gráfica y otras, pero eso dejemoslo de lado) sin problemas pero... ¿y si tienes muchos programas en marcha y necesitas mas memoria?
Pues entonces el sistema usará lo que se conoce como "memoria virtual", que no es mas que usar el disco duro de tu ordenador para almacenar temporalmente datos, que leerá cuando los necesite. Obviamente por lo general nunca es preciso manejar toda la memoria en todo momento. En cada momento trabajas con secciones mas pequeñas. El sistema se encarga de guardar en el disco los datos que no son necesarios ahora mismo, y cargar llegado el caso los que si necesite. Digamos que hace malabares con los cajones para guardalos temporalmente en otro sitio y usar solo los que necesitas en cada momento.
Por otro lado, existe algo llamado "gestión de memoria". Aunque la memoria sea un "todo continuo" en realidad el sistema separa los programas e incluso procesos en "bloques" separados "sellados" para impedir que el mal funcionamiento de un programa escriba en una zona correspondiente a otro programa (esto ocurría hace tiempo)
La paginación lo que hace es saber "donde" está la memoria que necesitas, la memoria virtual lo que hace es "guardar" las partes que no necesitas en espacio externo y recurrir a ellas cuando lo necesita.
|
|
|
En línea
|
"When People called me freak, i close my eyes and laughed, because they are blinded to happiness" Hideto Matsumoto 1964-1998
|
|
|
MRx86
Desconectado
Mensajes: 88
Math's the way to do philosophy with the universe
|
buena explicacion, muchas gracias por responder.
Saludos
|
|
|
En línea
|
"Tengo una pregunta que a veces me tortura: ¿Estoy loco yo, o los locos son los demas?" - Albert Einstein
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Memoria de Paginacion en un linux
GNU/Linux
|
Ponchivision
|
0
|
2,834
|
9 Septiembre 2011, 16:30 pm
por Ponchivision
|
|
|
[DUDA] Acerca de Memoria Virtual Y Memoria Fisica Entre otros...
Programación C/C++
|
x64core
|
9
|
7,385
|
28 Noviembre 2011, 17:20 pm
por x64core
|
|
|
Calculo direcciones de Memoria, Paginacion
Programación General
|
Darksythe
|
1
|
4,715
|
5 Enero 2012, 21:41 pm
por modo_senin
|
|
|
Duda con memoria virtual (Archivo de paginación)
Windows
|
d3xf4ult
|
3
|
6,213
|
25 Enero 2012, 01:08 am
por Songoku
|
|
|
Duda memoria virtual windows 7
Windows
|
Senior++
|
3
|
3,015
|
30 Mayo 2014, 15:24 pm
por Gh057
|
|