Problemas con 4 GB o mas de memoria (Solo se ven 3,25 gb.)

Hace un tiempo sus pusimos el tema de que las maquinas DELL solo eran capaces de digerir 3,25 gb. en total… da igual tuvieses instalado 4gb. o 64 gb., solo tragarian los primeros 3,25gb. Pero ahora el problema, parece ser que no es propiedad de DELL, si no de todo el mundo.

Pues parece ser que estamos en otro lapso temporal en que se han desincronizado los fabricantes del hardware y los de Firmware, al igual que paso con las memorias de 1 mb. tiempo ha, que solo veiamos 640 kb, o bien mas recientemente con los discos duros de mas de 137 gb. que necesitaban ser particionados para poder acceder a la capacidad total.

Hace solo 1 a?nadie se imaginaba que se necesitase mas de 1 gb. de ram para funcionar, pero aparecio Windows Vista y la memoria necesaria se tuvo que duplicar para que este funcionara bien… y eso era un paston… y digo ERA porque hace un a?los 2 Gb. de ram costaban mas de $300, y ahora la pastilla de 2 gb. de ram sobrepasa raramente los $50., Claro, ahora quien mas, quien menos, se ha comprado sus dos gigas de ram y muchos nos hemos comprado mas de 2 gb. y nos hemos encontrado con el problema de los 3.25 gb. cuando tienes instalado 4 gb. de Ram.

Normalmente estos problemas siempre se han solventado actualizando las Bios de los sistemas, pero parece ser que este problema actual no es tan facil de resolver -ya que es cosa de que tenemos mas memoria de lo que la maquina fisicamente es capaz de manejar- y tenemos que acceder a cierto trucos…. pues estos trucos y en Espa?estan descrito en LEER MAS >>>.

Angeloso

Problemas con 4 GB o ms de memoria.
No se ve toda la memoria instalada (32 – 64 bits)

Problema: No se puede usar desde Windows toda la memoria instalada cuando esta es de 4GB o m? Realmente, en algunas placas base, este problema puede surgir con m?de 2 GB de memoria.

Introducci?h2>

Recordemos primero la posibilidad de direccionamiento de memoria de los sistemas de 32 y 64 bits (XP 32 bits, W2000/W2003 32 bits, XP 64 bits y W2003 64 bits). El concepto es igualmente ampliable a Linux y otros sistemas operativos.

* En 32 bits: aunque el bus de direcciones ya es de 64 bits, se puede direccionar (te?amente):

Modo Normal: 4 GB de memoria (2 elevado a 32)
Modo PAE : 64 GB de memoria (16 veces m?debido a que se pueden usar 4 bits de uno de los registros de control).

* En 64 bits: se pueden usar xx bits del bus de direcciones: (siempre est?ctivo el modo PAE)

Limitado por el sistema operativo: http://support.microsoft.com/default.aspx?scid=kb;en-us;294418

¿Qu?s el modo PAE?

Nos ce?s a 32 bits (ya que en 64 siempre est?ctivo). Debemos distinguir dos modos de funcionamiento del PAE, o mejor dicho, el PAE a nivel general, y las restricciones impuestas en el SP2 de XP en particular (s?en el SP2).

El modo PAE es Phisical Address Extension. Usa 4 bits de un registro de control para poder poner un nivel m?de indirecci? la memoria virtual y por tanto poder alcanzar un total (te?o) de memoria f?ca 64 GB. Recordemos que este limite es el te?o que posteriormente est?estringido por el sistema operativo. W2000 / W2003 Server y los sistemas W2000 Profesional, XP Profesional y XP Home, est?limitados, funcionando o no en PAE, a un m?mo de 4 GB de memoria. W2000/W2003 Advanced Server y posteriores ampl?, en funci?e la versi?nstalada este limite y son los ?os capaces de superar los 4 GB.

Para activar el modo PAE, se debe incluir el modificador /PAE en el boot.ini manualmente. El modo PAE carga un n?o especial de Windows y no el n?o normal.

Ventajas e inconvenientes del modo PAE

Como ventaja, est?n los sistemas de m?de 4 GB de memoria y cuando el sistema operativo lo soporte, el poder direccionar m?de 4 GB de memoria.

Como inconvenientes, hay principalmente 2:

1) Se penaliza ligeramente el acceso a memoria. Triple (en vez de doble) indirecci?n las tablas de PTE.

2) Los drivers, que funcionan en modo Kernel, deben estar preparados para ello, es decir: ser capaces de manejar apuntadores de 64 bits. Los drivers certificados deben superar este requerimiento, pero es dudoso que los drivers no certificados, y sobre todo orientados al gran p?co (a sabiendas de que usa sistemas del estilo XP), se hayan molestado los desarrolladores en realizarlos correctamente. Un fallo en el manejo de direcciones provocar?rremediablemente pantallazo azul y posterior reinicio.

Introducci?l problema desde el punto de vista hardware

Hemos visto en la parte anterior, la introducci? la parte «software». M?adelante veremos algunas limitaciones del software sobre todo en el SP2 de XP.

Pasemos ahora ahora a ver las limitaciones «hardware», y cu?o estas son evitables y cu?o no.

Por dise?e la arquitectura de las placas madre, y esto ser?nevitable mientras se siga con variantes de la primera arquitectura AT que data del a?2, todos los recursos accesibles de la m?ina usan direcciones de memoria. Su acceso es mediante MMIO (Memory Mapped I/O —> Entrada / Salida mediante Memoria Mapeada).
Lo anterior quiere decir que, el acceso a recursos de la propia m?ina y tarjetas instaladas en ella, se hace a trav?de direcciones de memoria.

¿Qu?ucede entonces si las direcciones de memoria usadas est?realmente ocupadas por memoria f?ca, tiras de memoria, que tenemos instaladas?

Sencillo: la BIOS simplemente ignora la memoria f?ca y «remapea» esas direcciones apunt?olas al dispositivo f?co. Este dispositivo puede ser por requerimientos de la placa madre, o del propio bus PCI, o bien requerimientos de las tarjetas instaladas (t?camente la que m?»consume» es la memoria de la tarjeta de v?o).

Este remapeo de memoria es lo que t?icamente se llama «Memory Holes» (agujeros de memoria). Cuando el sistema operativo localiza un Memory Hole, termina el recuento de memoria y ese ser?l limite m?mo direccionable.

Por compatibilidad, tanto con dispositivos hardware como sistemas operativos, las BIOS asignan dichos «Memory Holes» por debajo del espacio de direcciones de los 4 GB.

Veamos un ejemplo de los anuncios de los fabricantes (en este caso para el chipset nForce):
En http://www.msicomputer.co.uk/Products.aspx?product_id=703538&cat_id=77 (nForce 4) se anuncia que soporta 4 GB. Pero en http://www.msicomputer.co.uk/Products.aspx?product_id=703505&cat_id=77 (nForce 3) se avisa expl?tamente que no todos los 4 GB ser?direccionables.
Por alguna oscura raz?MSI de UK da esta informaci?Pero en las pagina «globales» de MSI no se da. Puestos en contacto con el servicio t?ico de MSI informan: «Sorry, but all boards does have this limitation with standard desktop boards». (mail del 26/05/2005). nForce 4 tampoco resuelve el problema a pesar que s?est?ocumentado en nForce 3, y adem?s?en UK. ¿Problemas legales quiz?n ese pa?por posible omisi?e la informaci?

Bien, he expuesto el caso de MSI, pero esto puede generalizarse a otros fabricantes: ASUS, TYAN,…. etc). Antes de continuar con la exposici?e problemas hardware en ciertos chipsets, tengo que agradecer personalmente las informaciones que me han sido suministradas por el servicio t?ico de Supermicro (caso de chipset Intel -procesador Intel-) y por el servicio T?ico de TYAN (chipset no Intel – procesadores AMD-).

Funcionamiento de los CHIPSET de las placas madre

* Asignar recursos por debajo del espacio de direcciones de 4 GB t?camente a:

1) Soporte para el Chipset
2) Soporte para la BIOS
3) Soporte para las Aplicaciones

Se asigna espacio de direcciones (normalmente entre los 2 y 4 GB) para los dispositivos.

* La asignaci??ca en una placa madre con PCI expresas es de 1 GB

* La asignaci??ca en una placa madre AGP es m?variable. Depende tambi?de la apertura AGP asignada en la BIOS. En este caso es conveniente, con las tarjetas gr?cas actuales (128, 256 GB), bajar dicho par?tro en la BIOS al valor m?mo posible.

Conseguiremos direccionar m?memoria:

a) Usando tarjetas gr?cas con menos memoria.
b) En el caso AGP, bajando al m?mo posible la apertura AGP en la BIOS.
c) No instalando tarjetas que usemos poco, o que sean sustituibles por otras de funcionalidad USB. Por ejemplo, una tarjeta sintonizadora de TV, nos puede quitar medio giga de memoria (dependiendo de las fronteras asignadas a los slot PCI por el chipset), mientras que el mismo dispositivo USB 2.0, no nos quitar?emoria real.

Existen igualmente dos posibilidades en los chipset de las placas madre:

1) Que permitan «remapping» de los recursos por el sistema operativo.
2) Que no lo permitan.

En el caso 2) es evidente que no podremos hacer nada, tengamos o no PAE, o sistema operativo de 64 bits. El limite estar?mpuesto por el hardware.

T?camente podemos distinguir dos tipos de chipset:

A) Chipset Intel (para procesadores Intel).
B) Chipset no Intel -VIA, SiS, nForce, AMD- (para procesadores AMD). NOTA: nForce soporta (seg?u documentaci?tambi?procesadores Intel, pero su estabilidad en ese caso es desastrosa, por lo que ignoramos esta casu?ica.

En general A) -chipset Intel- siempre permite 1). ?icamente hay que matizar limitaciones (documentadas en la web de Intel) para el chipset 915 y 925.
Aunque algunas placas madre no admitan remapeo hardware (y por tanto la BIOS no sea capaz de «contar» todos los GBs instalados, s?ermiten remapeo software, y por tanto, el sistema operativo podr?emapear (con /PAE, teniendo presente los comentarios anteriores de posibles inconvenientes) por encima del espacio de direcciones de 4 GB y as?ser?ccesible toda la memoria instalada.

En general B) -chipset *no* Intel- no permite remapeo software. ?icamente, algunas variantes de chipset, en particular el NorthBridge, debe soportarlo.
Lo primero, recordar que la BIOS, siempre por defecto en estas placas madre asume que NO es posible el remapeo. Por tanto hay que entrar en la BIOS y localizar la opci?e «remapping». Si la tiene, puede, s?puede, que el sistema operativo sea capaz de usarlo y adem?debemos activarlo (por defecto, en la actualidad, en las placas madre probadas por mi, dicha opci?iene desactivada.
Recordemos, que quiz?ebido a la transparencia y fluidez de informaci?ntre Microsoft e Intel, los sistemas operativos usan sin problemas los chipset Intel. Hay problemas serios, hist?amente, en el uso de otros chipset -incluso con sistemas como Linux- que a veces se palian con drivers de los fabricantes los cuales nos esclavizan a versiones especificas de ellos para versiones especificas de sistemas operativos y, en muchos casos, estos drivers no pasan una m?ma certificaci?HQL.

NOTA: Lo anterior es v?do tanto para sistemas operativos de 32 bits como para sistemas operativos de 64 bits y por tanto, para tarjeta madre y CPU's anteriores de 32 bits, o las m?actuales de 64 bits

Problemas inherentes a XP SP2 (s?SP2)

Al implementarse el DEP (protecci?e memoria ante posibles ataques de desbordamiento de buffer), es necesario cargar el modo PAE para poder marcar las tablas de direcciones con el bit de protegido (protecci? nivel software. Si la protecci?s a nivel hardware, y el procesador soporta el bit NX, es obligatorio ya PAE).

Microsoft en este punto, y para los sistemas operativos de consumo (XP), se encontr?n el problema de compatibilidad de los drivers. En modo PAE todos deber? ser certificados. Recordemos los centenares de drivers de dispositivos, sobre todo perif?cos, USB, etc. que no son certificados y que, por supuesto, no «entienden» de direcciones de 64 bits como exige el modo PAE.
En este caso, Microsoft decidi?ar siempre modo PAE, pero un modo PAE restringido. Es decir, seguir?sando direcciones de 32 bits, pero con los tres niveles de indirecci?omentados anteriormente. Puede encontrarse la documentaci?n los documentos de manejo de memoria, funcionamiento del DEP en la documentaci?e Microsoft sobre los posibles impactos del SP2 en XP.

De esta manera, todos los drivers funcionar? Pero estaremos restringidos a menos de 4 GB de memoria ya que el sistema operativo, en este caso, *nunca* remapear?as direcciones asignadas por el hardware. Depende del «consumo» de los dispositivos (ver los trucos comentados en el cap?lo anterior) as?er?a memoria m?ma que XP+SP2 podr?ireccionar. Con XP normal, o bien XP+SP1, o cualquier otro sistema operativo W2000 / W2003 puede remapearse con /PAE y por tanto tener accesibles los 4 GB de memoria completos, siempre y cuando estemos en los supuestos de que el chipset lo soporte y comentados en el cap?lo anterior.

RESUMEN para 4 GB o m?de memoria

* Chipset Intel. No es necesario hacer nada.
* Chipset *no* Intel: la BIOS debe soportar y adem?estar activado en el NorthBridge el «remapping by software».

Sistemas operativos de 32 bits:

W2000 / W2003 / XP / XP-SP1: Usar /PAE en el boot.ini
XP-SP2: no se puede usar toda la memoria instalada. Tipicamente pueden usarse de 2,5 GB a 3,5 GB.

Sistemas operativos de 64 bits:

No es necesario hacer nada excepto lo comentado al principio de este cap?lo. Si el chipset y BIOS lo soportan y adem?el sistema operativo conoce el chipset y puede remapearlo, lo har?En otro caso es imposible usar toda la memoria.

CONCLUSI?

Debido, sobre todo, a que el oscurantismo de ciertos fabricantes de hardware roza lo que yo llamar?estafa por omisi?e informaci? est?laro que si una placa madre se anuncia para soportar 4 o m?GB de memoria, deber?poder direccionarlos cualquier sistema operativo con dicha capacidad.
Pero parece, a la vista de lo que sucede, que lo que quieren decir es que les puedes pinchar 4 GB. S?eso.
Y que perder?memoria: t?camente 1 GB en las actuales placas madre. Pero esto no se dice (o se dice en alg?anual t?ico en la letra peque?
Lo que he descrito con respecto al hardware, ya no es s?de uso restringido para sistemas de 32 bits / procesadores de 32 bits, sino tambi?para sistemas y procesadores de 64 bits (lo cual, tiene m?delito).

undefined

Jos?anuel Tella Llop
jmtella@compuserve.com

undefined

26 – julio – 2005