Je joue avec un échantillon MSDN pour faire des tests de stress de la mémoire (voir : http://msdn.microsoft.com/en-us/magazine/cc163613.aspx ) et une extension de cet outil qui mange spécifiquement la mémoire physique (voir http://www.donationcoder.com/Forums/bb/index.php?topic=14895.0;prev_next=suivant ). Cependant, je suis manifestement confus quant aux différences entre la mémoire virtuelle et la mémoire physique. Je pensais que chaque processus disposait de 2 Go de mémoire virtuelle (bien que j'aie également lu 1,5 Go en raison de la "surcharge"). J'ai cru comprendre qu'une partie/tout/rien de cette mémoire virtuelle pouvait être de la mémoire physique, et que la quantité de mémoire physique utilisée par un processus pouvait changer au fil du temps (la mémoire pouvait être transférée sur le disque, etc.) Je pensais également qu'en général, lorsque vous allouez de la mémoire, le système d'exploitation pouvait utiliser de la mémoire physique ou de la mémoire virtuelle. J'en ai conclu que dwAvailVirtual devrait toujours être égal ou supérieur à dwAvailPhys dans l'appel GlobalMemoryStatus. Cependant, je constate souvent (toujours ?) le contraire. Qu'est-ce que je rate ?
Je m'excuse par avance si ma question n'est pas bien formulée. J'essaie toujours de comprendre le système de gestion de la mémoire de Windows. Les tutoriels/explications/recommandations de livres sont les bienvenus !
Andrew