Sistemas Operativos > GNU/Linux
Linux 64 bits memoria virtual
aguila3000:
Hola.
Tengo entendido que el espacio de memoria virtual direccionable por un S.O. Linux de 32 bits, es de 4GiB, en donde 1GiB es usado por el kernel y 3GiB para los procesos.
En el caso de un S.O. Linux de 64bits, por lógica el espacio de memoria virtual direccionable es de : 17179869184 GiB, me interesa saber o donde puedo encontrar información de ¿Como se gestiona la memoria Linux 64 bits ?. Es decir cuanta memoria se usa para el kernel y cuanta para los procesos.
Si es igual al de 32bits entonces debería ser así: 1 GiB para el kernel y el resto para los procesos 17179869183 GiB, pero realmente no estoy seguro y me parece que es distinto.
m0skit0:
--- Cita de: "aguila3000" ---Tengo entendido que el espacio de memoria virtual direccionable por un S.O. Linux de 32 bits, es de 4GiB, en donde 1GiB es usado por el kernel y 3GiB para los procesos.
--- Fin de la cita ---
Estás equivocado. Linux funciona en sistemas con 256 MiB y menos. Además, 1 GiB para el kernel es excesivamente demasiado.
--- Cita de: "aguila3000" --- me interesa saber o donde puedo encontrar información de ¿Como se gestiona la memoria Linux 64 bits ?
--- Fin de la cita ---
Tienes el código fuente en kernel.org. Más detallado que eso, imposible.
aguila3000:
--- Citar ---Estás equivocado. Linux funciona en sistemas con 256 MiB y menos. Además, 1 GiB para el kernel es excesivamente demasiado.
--- Fin de la cita ---
Me baso en estos documentos :
http://www.linuxdriver.co.il/ldd3/chp-15-sect-1.shtml
http://linux-mm.org/LinuxMMDocumentation
http://www.win.tue.nl/~aeb/linux/lk/lk-9.html
En donde explican la diferencia entre memoria física y virtual.
Encontre este documento http://www.informit.com/articles/article.aspx?p=29961&seqNum=2, en donde explican la gestión de memoria en los S.O. de 64 bits.
Al parecer dicen segun el cuadro: http://ptgmedia.pearsoncmg.com/images/chap4_0130610143/elementLinks/04fig11.gif
que esta dividido en regiones, en donde cada region tiene un tamaño de 2^61, con lo cual deduzco que:
El espacio direccionable para el kernel sería de : (2^61)*3, y para los proceso sería de : (2^61)*5.
--- Citar ---Tienes el código fuente en kernel.org. Más detallado que eso, imposible.
--- Fin de la cita ---
Tambien lo tengo, pero siempre es necesario tener un marco teorico al respecto que ayuden a comprender más rápido algunas cosas, y es lo que estoy buscando.
Me faltan despejar algunas dudas pero ya estoy encontrando lo que necesito.
Gracias por tu ayuda.
m0skit0:
Ah disculpa, te refieres a la memoria virtual, me había confundido.
aguila3000:
No hay problema, disculpa aceptada :).
Una de las dudas que tengo es que obviamente no creo sea posible direccionar 2^64=16 EiB de memoria virtual, a menos que existan discos duros en donde se puedan crear 2^64=16 EiB o más de espacio de intercambio (swap), al menos no se si existan esos discos duros o se tengan que emular usando varios discos duros. En fin seguire investigando a ver que encuentro. como dice el dicho: preguntando se llega a Roma.
Navegación
[#] Página Siguiente
Ir a la versión completa