Solucionando algunos problemas de memoria en Windows 32-bit

RAM

(Imágen obtenida de aquí)

Una aclaración, un sistema operativo de 32-bit, en principio, sólo puede acceder a una memoria de 4GB: 2^32=4,3 GB. Sin embargo existe una característica que lleva implementándose desde 1995 que es la llamada PAE (Physical Address Extension) además de incluirse en los microprocesadores x86 una ampliación de las líneas de direcciones de 32 a 36 bits. Esto, en teoría, incrementaría la cantidad de memoria accesible de 4 a 64GB (usando por ejemplo las page tables). Linux puede utilizar esta función desde el Kernel 2.3.23, en cambio en Windows tenemos que hacer algunas operaciones para poder activarlo (aunque al menos en Windows XP, Vista y Windows 7, nunca podrás pasar el límite físico de 4GB, pero sí podrás aprovecharla más y te reconocerá los 4GB íntegros).

¿Y esto por qué ocurre?, pues simplemente porque en la RAM se direccionan (digamos que se reservan para utilizarse) otros dispositivos como por ejemplo la tarjeta gráfica (por eso es bueno tener una tarjeta gráfica con memoria dedicada en vez de compartida), que ocupan espacio en la RAM. Cuanto más dispositivos, menos memoria. Además hay otra limitación, esta es la que nos afecta cuando detectamos problemas de memoria en algunos programas, y es que sólo se pueden usar 2GB para programas ejecutados por el usuario.

Aplicando PAE ó el parámetro /3GB  en el arranque (luego verás como hacerlo), lo que conseguimos es ampliar esos 2GB de espacio reservado para el usuario hasta 3GB (dejando 1GB para uso exclusivo del Kernel). Uno de los programas en lo que está comprobado la efectividad del uso de PAE es Autocad (echa un vistazo a este artículo para comprobarlo). Activando esta opción en equipos con Windows de 32bits y con 3 ó 4GB de RAM se evitan muchos errores relacionados con la "falta de memoria". Pero no sólo se limita a solucionar problemas de Autocad, puede también ser útil para otro tipo de software en los cuales aparezcan errores como el ya mencionado "fallos de memoria".

NOTA: En sistemas basados en x64 que ejecutan Windows de 32 bits, es necesario activarlo no sólo por el tema de superar los 4GB de limitación RAM, también para habilitar DEP (Data Execution Prevention), NUMA (Non-Uniform memory access) y además permite añadir memoria RAM en modo caliente "hot-add memory" (o sea, sin apagar el equipo). Si el ordenador tiene la característica de activar por hardware DEP, entonces activará por defecto automáticamente PAE.

Sistemas soportados por PAE:

  • Windows 7 (32 bit only)
  • Windows Server 2008 (32-bit only)
  • Windows Vista (32-bit only)
  • Windows Server 2003 (32-bit only)
  • Windows XP (32-bit only)
  • Windows 2000 Datacenter Server
  • Windows 2000 Advanced Server
Para activar PAE se utiliza el comando bcedit (tienes que abrir una ventana de línea de comandos en modo administrador) .

En Windows Vista y Windows 7 , para evitar este límite de 4GB:

bcedit /set IncreaseUserVa 3072

Luego reinicia el equipo.

Para deshabilitarlo:

bcedit /deletevalue IncreaseUserVa

En sistemas con Windows XP, es un poco más complicado:

Botón derecho “MiPC”, “Propiedades”.

En “Propiedades del Sistema”, pestaña “Opciones avanzadas”

Ahora pulsa el botón “Configuración” en “Inicio y Recuperación”.

Ahora en “Inicio y Recuperación” pulsa en el botón “Editar”. El fichero boot.ini se abrirá con Notepad.

Antes de nada crea una copia por si acaso.

Selecciona la siguiente línea (puede variar de un ordenador a otro, pero

básicamente debe de ser muy parecida):

multi(0)disk(0)rdisk(0)partition(2)WINDOWS="Microsoft Windows XP Professional" /fastdetect

Con CTRL+C copiala y pégala (CTRL+V) debajo. (OJO: copia la tuya, no esta de ejemplo ;)

Incluye en la línea “/3GB”, como puedes ver en el ejemplo (la primera es sólo para distinguir el arranque con +3GB y la otra es para activar esta característica):

multi(0)disk(0)rdisk(0)partition(2)WINDOWS="Microsoft Windows XP Professional /3GB" /3GB /fastdetect

Guarda el fichero boot.ini

Reinicia el equipo

Esto añade una opción más en el arranque donde puedes elegir si quieres arrancar con el XP y la opción de más de 3GB activada o no.

Una aclaración. El uso de PAE tiene una desventaja, puede se incompatible con algunos drivers provocando incluso que el sistema no arranque, así que utilízalo con cuidado.

Bueno espero que os sirva de ayuda.

Más información aquí y en este genial artículo.