8 votes

Adresse Windows Server 32 bits > 4 Go de RAM - Comment ?

C'est une nouvelle pour moi. J'ai toujours eu l'impression que les systèmes d'exploitation 32 bits ne pouvaient adresser que 2^32, soit 4 Go de RAM. Point final.

Mais qu'est-ce que c'est ? http://www.crucial.com/uk/kb/answer.aspx?qid=3743&click=true ?

Comment cela est-il possible ? Et cela signifie-t-il toujours > 4 Go par processus ? Par exemple, si j'ai IIS, ASP.NET peut-il se voir allouer plus de 4 Go ?

Edit : Merci pour les réponses. Pour replacer les choses dans leur contexte, il s'agit de développement web. Il semble donc que w3wp.exe (ASP.NET Worker Process) sera toujours limité à 4 Go ? Est-ce bien le cas ?

Merci Duncan

0 votes

Une petite recherche sur Google permet de trouver des citations raisonnables affirmant que IIS ne prend pas en charge l'AWE. Je pense donc qu'il est assez sûr de supposer que vous ne pouvez pas lui allouer plus de 3 Go (4 Go - frais généraux du système).

14voto

David Locke Points 4419

La MMU de certains processeurs 32 bits peut en fait prendre en charge plus de 4 Go de RAM physique, bien qu'un seul processus ne puisse voir que 4 Go à la fois dans son espace d'adressage virtuel. Un tel processeur peut être équipé de plus de 4 Go de RAM et peut prendre en charge plusieurs processus utilisant plus de 4 Go de RAM au total. Toutefois, un seul processus ne peut utiliser que 4 Go de RAM (moins une partie de la charge du système d'exploitation) à un moment donné.

Sur le Xeon, cette fonction est connue sous le nom de Extension de l'adresse physique (PAE) et certains systèmes d'exploitation possèdent des API qui permettent à un processus de manipuler la MMU pour échanger de la mémoire physique dans et hors de l'espace d'adressage virtuel du processus. Sous Windows, cette API est connue sous le nom de Extensions de l'affichage des adresses (AWE) mais il n'est pas disponible sur toutes les versions de Windows. Linux et d'autres espèces d'Unix supportent un mécanisme similaire.

Pour utiliser cette fonction, le programme doit être explicitement conçu pour la prendre en charge. L'AWE n'étend pas automatiquement l'espace d'adressage virtuel du processus. Par exemple, certaines versions de SQL Server le prennent en charge, mais je ne sais pas si IIS le fait.

EDITAR: Nous y voilà. Je l'ai trouvé. Ce message sur Stackoverflow renvoie à plus de détails sur les mécanismes du PAE.

Edit 2 : Si cette publication sur le forum est à croire, IIS n'a pas de support pour AWE.

4voto

radius Points 9485

L'adressage de plus de 4GB sur 32bit est possible avec PAE . Pour la limite de mémoire du processus, vous pouvez lire Informations générales sur Windows de Bruce Sanderson ; RAM, mémoire virtuelle, PageFile et tout le reste

Pour la mémoire par processus, lisez les sections 1.2 ("Espaces d'adressage et processus") et 2.5 ("Réglage de la mémoire des applications - commutateur /3GB") du lien Informations générales sur Windows ci-dessus.

2voto

Walter Points 1047

Pour mémoire, les versions haut de gamme de Windows 2003 (Enterprise et Data Center) fonctionnent avec >4 Go. J'avais un HP DL380 avec 14 Go de RAM et W2K3 EE utilisait les 14 Go. VMWare Server était capable d'utiliser plus de 4 Go. Nous avons remplacé W2K3 par ESXi 3.5 U3 et il est capable d'utiliser les 14 Go.

D'après ce que j'ai lu, Microsoft a essayé de l'activer sur d'autres versions de Windows (comme XP) et a constaté que de nombreux pilotes avaient des problèmes lorsque la mémoire était >4 Go. Une partie au moins du problème venait du DMA (les adresses mémoire vers le matériel étaient tronquées en 32 bits et commençaient à corrompre la mémoire). Il y avait donc un SP qui se débarrassait du PAE pour la plupart des anciennes versions de Windows afin d'éviter les problèmes de stabilité.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X