Añadir más de 4 GB de RAM en entornos 32 bits

Añadir más de 4 GB de RAM en entornos 32 bits

memoria-ramRecientemente he montado un W2K8 Server (32 bits) en una máquina con apenas 2 GB de RAM. Como lo quiero destinar a ser una plataforma de virtualización, he adquirido RAM adicional hasta dejarle con 10 GB en total. Al arrancar, la BIOS reconoce toda la RAM, pero Windows 2008 Server… la reconoce a medias y solo 3,5 GB.  Por diseño, los entornos 32 bits solo mapean 4 GB de RAM. Además, dicha memoria ha de compartirse con otros dispositivos mapeados como la tarjeta de vídeo, controladoras, etc. Por ello, la memoria final suele disminuir hasta los 3,1 GB. En cualquier caso, el límite está en los 4 GB como tope. Veamos cómo hacer que reconozca toda la memoria disponible.
Si nos dirigimos a las propiedades del Servidor (botón derecho sobre Mi Pc/Propiedades), observamos que la información del sistema muestra los 10 GB en nuestro caso. Este dato muestra únicamente la memoria total instalada en la placa (la misma que reconoce la BIOS), PERO NO ES LA QUE UTILIZA EL SISTEMA OPERATIVO. Para comprobar cuanta memoria utiliza nuestro servidor, nos tendremos que dirigir al ‘performance’ del ‘task manager’. Solo ahí se muestra la memoria disponible. Al acceder al ´performance´compruebo en mi caso que dispongo de 3.838 MB de memoria física disponible en total (los 4 GB de limitación).

La solución está en cambiar el Sistema Operativo por uno de 64 bits, o bien en activar el PAE (Physsical Address Extension) integrado solo en algunas versiones server 2003 y 2008. Si se habilitase dicha función, la limitación en 2008 Server Enterprise Edition pasaría de 4 GB a 64 GB (http://msdn.microsoft.com/en-us/library/aa366778(VS.85).aspx)
Y eso del PAE… ¿Qué es? Para explicarlo rápidamente, la limitación de 4 GB es por diseño y por causas físicas de hardware. Parece ser que desde hace unos años (época del Pentium Pro), los fabricantes incluyen unos bits adicionales en los procesadores. Por tanto, tenemos unos 36 bits disponibles y no 32 como pensábamos. El PAE se encarga de aprovechar esa extensión de bits con la memoria adicional que permite utilizar. La limitación de los 36 bits estaría en 64 GB de RAM.

En nuestro caso, procedemos además a deshabilitar el DEP (Data Execution Prevention) para optimizar la gestión de la memoria. Ejecutamos, en una línea de comandos:

BCDEdit /set nx AlwaysOff

BCDEdit /set PAE forceenable

A continuación reiniciamos el servidor. Al iniciar nuevamente, nos dirigimos al ‘performance’ y comprobaremos como la memoria que utiliza ahora el servidor ha aumentado de 3,5 GB a nuestros 10 GB.

Para activar PAE en Windows 2000/2003 Server: http://support.microsoft.com/kb/283037

Esta entrada tiene 8 comentarios

  1. Agustín

    Excelente!

    Funciona a la perfección. Gracias

  2. Nilsa

    Gracias por el aporte, me fue muy bien.

  3. RUBEN RAMIREZ

    YO TENGO UN PROBLEMA UN POCO DIFERENTE, TENGO UN SERVIDOR HP PROLIANT CON 10 GB DE RAM INSTALADOS PERO NO ME RECONOCE MAS QUE 4 GB, NO HE PRESTADO ATENCIÓN A LA HORA DE QUE ARRANCA CUANDO RAM DETECTA LA BIOS, TENGO QUE ESPERAR HASTA EL SIGUIENTE MANTENIMIENTO PERO NO ENTIENDO EL PORQUE, YA REVISE LAS RAMS Y NO TIENEN PROBLEMAS ALGUIEN PODRÍA AYUDARME CON ESTO ???????

  4. Fabio

    Buen dia tengo un windows server 2008

    con 8 GB de ram y por mas que trato no me aumenta la capacidad de la RAM sigue con 4 GB como hago para aumentar esta capacidad ?

    muchas gracias y espero que me colaboren con esto

  5. Maxximo

    A mi no me funciono. Tengo 24gb de ram que se ven en propiedades, pero en el taskmanager me sigue marca 4095mb, tienes alguna idea de a qué se pueda deber?
    Tengo Windows Server 2008 Standard service pack2.

    Saludos!!

  6. VicentiuS

    Buenas tardes, nunca es tarde para aclaraciones, MAXXIMO, el Windows Server 2008 Standard tiene de límite 4GB de RAM, tienes que pasarte a Windows Server 2008 DataCenter o Windows Server 2008 Enterprise, o ya uno de 64 bits.

    Enlace mucho más completa de capacidades de memoria por versiones concretas:
    https://msdn.microsoft.com/en-us/library/aa366778.aspx

    (Enlace oficial de Microsoft)

  7. orlitel

    Gracias Muy Practico.

Deja una respuesta