!memusage
L'extension !memusage affiche des statistiques sommaires sur l'utilisation de la mémoire physique.
Syntaxe
!memusage [Flags]
Paramètres
Drapeaux
Il peut s’agir de l’une des valeurs suivantes : La valeur par défaut est 0x0.
0x0
Affiche des informations récapitulatives générales ainsi qu'une description plus détaillée des pages de la base de données PFN. Voir la section Remarques pour obtenir un exemple de ce type de sortie.
0x1
Affiche uniquement des informations récapitulatives sur les pages en lecture seule modifiées dans la base de données PFN.
0x2
Affiche uniquement des informations détaillées sur les pages en lecture seule modifiées dans la base de données PFN.
0x8
Affiche uniquement des informations récapitulatives générales sur l’utilisation de la mémoire.
Environnement
Modes : uniquement en mode noyau
DLL
Kdexts.dll
Informations supplémentaires
Les statistiques relatives à la mémoire physique sont collectées à partir de la table de la base de données PFN du gestionnaire de mémoire.
L'exécution de cette commande est longue, surtout si l'ordinateur cible fonctionne en mode 64 bits, en raison du plus grand nombre de données à obtenir. Pendant le chargement de la base de données PFN, un compteur indique sa progression. Pour accélérer ce chargement, utilisez une connexion réseau, augmentez la vitesse de port COM avec la touche Ctrl+A (Changer de vitesse de transmission) ou utilisez la commande .cache (Définir la taille du cache) pour augmenter la taille du cache (à environ 10 Mo par exemple).
La commande !memusage peut également être utilisée lors de l’exécution du débogage du noyau local.
Voici un exemple de sortie de cette extension :
kd> !memusage
loading PFN database
loading (100% complete)
Compiling memory usage data (99% Complete).
Zeroed: 218 ( 872 kb)
Free: 831 ( 3324 kb)
Standby: 124049 ( 496196 kb)
Modified: 55101 ( 220404 kb)
ModifiedNoWrite: 58 ( 232 kb)
Active/Valid: 321846 ( 1287384 kb)
Transition: 8 ( 32 kb)
SLIST/Temp: 1533 ( 6132 kb)
Bad: 0 ( 0 kb)
Unknown: 0 ( 0 kb)
TOTAL: 503644 ( 2014576 kb)
Dangling Yes Commit: 184 ( 736 kb)
Dangling No Commit: 81706 ( 326824 kb)
Building kernel map
Finished building kernel map
Scanning PFN database - (100% complete)
...
Le rapport contient également des informations détaillées sur l’utilisation de la mémoire visible par le débogueur.
Usage Summary (in Kb):
Control Valid Standby Dirty Shared Locked PageTables name
ffffaf0fb369f010 204 956 0 32 204 0 mapped_file( shell32.dll )
ffffaf0fb369f270 492 60 0 252 492 0 mapped_file( KernelBase.dll )
ffffaf0fb36ad050 20 36 0 0 20 0 mapped_file( WMIsvc.dll )
ffffaf0fb36adad0 88 144 0 40 88 0 mapped_file( Can't read file name buffer at ffffc10e0497e170 )
ffffaf0fb36b5670 780 1012 0 560 780 0 mapped_file( KernelBase.dll )
ffffaf0fb36b5910 44 144 0 28 44 0 mapped_file( cfgmgr32.dll )
ffffaf0fb36bc270 8 0 0 0 8 0 mapped_file( Can't read file name buffer at ffffc10e061a17d0 )
ffffaf0fb36bc520 24 56 0 4 24 0 mapped_file( ShareHost.dll )
...
La première colonne affiche l'adresse de la structure de la zone de contrôle qui décrit chaque structure mappée. Utilisez la commande d’extension !ca pour afficher ces zones de contrôle.
Notes
Vous pouvez utiliser la commande d’extension !vm pour analyser l’utilisation de la mémoire virtuelle. Cette extension est généralement plus utile que !memusage. Pour plus d’informations sur la gestion de la mémoire, veuillez consulter Microsoft Windows Internals (Au cœur de Windows), de Pavel Yosifovich, Andrea Allievi, Alex Ionescu, Mark Russinovich et David Solomon.
La commande d’extension !pfn peut être utilisée pour afficher une entrée de cadre de page donnée de la base de données PFN.
L’extension !pool affiche des informations sur une allocation de pool donnée ou sur l’ensemble du pool à l’échelle du système.