Base de Registres : Mémoire
Taille du registre - Options au démarrage - Fichier d'échange - Réserve de mémoire non paginée
Réserve de mémoire paginée - Cache L2 - Protection des DLL - Processus
 
Sommaire Taille du registre
Clé : HKLM \SYSTEM \CurrentControlSet \Control
Entrée : RegistrySizeLimit
Système : NT, 2K

Signification : Taille maximale du registre
Type : REG_DWORD
Valeur par défaut : 25% de la taille de la réserve de mémoire paginée
Valeurs possibles : 0 à 0xFFFFFFFF
Portée réelle : 4Mo à 80% de la réserve de mémoire paginée
0x00000000 : Ajuste la taille maximale du Registre de façon dynamique, en fonction de la taille de PagedPoolSize.
0xFFFFFFFF : Fixe la taille maximale du Registre à 80% de PagedPoolSize.
Taille maximale d'espace dans la réserve de mémoire paginée (PagedPoolSize) et dans la réserve disque de pagination susceptible d'être utilisée par le Registre. Cette entrée n'alloue pas de mémoire, elle ne garantit pas non plus que l'espace nécessaire sera disponible. Elle est destinée à empêcher l'utilisation excessive d'espace par le Registre, susceptible de nuire au fonctionnement d'autres processus.
Si RegistrySizeLimit et PagedPoolSize sont à 0 :
a. PagedPoolSize va être équivalent à la quasi-totalité de la mémoire vive
b. RegistrySizeLimit va être équivalent à 25% de PagedPoolSize
Remarque : Pour garantir qu'il sera toujours possible de démarrer et d'éditer le registre, ce dernier ne prend en compte RegistrySizeLimit qu'après le 1er chargement réussi d'une ruche (c'est-à-dire lors du chargement d'un profil utilisateur).
 
Sommaire Options au démarrage
Clé : HKLM \SYSTEM \CurrentControlSet \Control
Entrée : SystemStartOptions
Système : NT, 2K

Signification : Options de démarrage du système
Type : REG_SZ
Arguments passés au système par le firmware sur les machines RISC ou par Boot.ini sur les machines Intel. Permet d'activer le débogueur et de paramétrer les ports et le débit.
Exemple : c:\winnt="Windows NT" /DebugPort=com1 /DebugBaudRate=56000
c:\winnt="Windows NT"   Pointe sur HKLM \Software \Microsoft Windows NT \CurrentVersion \SystemRoot.
/DebugPort=com10   Paramètre les ports COM.
/DebugBaudRate=56000   Débit en bauds.
 
Sommaire Fichier d'échange
Clé : HKLM \SYSTEM \CurrentControlSet \Control \Session Manager \MemoryManagement
Entrée : PagingFiles

Système : NT, 2K
Signification : Fichiers de pagination
Type : REG_DWORD

Valeur par défaut : C:\Pagefile.sys 27 77
Emplacement et fourchette de tailles pour le fichier de pagination en Mo. Pour modifier l'emplacement ou la fourchette de tailles ou pour créer d'autres fichiers d'échanges, accédez aux Propriétés du Poste de travail, cliquez sur l'onglet Performances, puis sur le bouton Modifier dans la section Mémoire virtuelle. Quand c'est possible, placez le fichier d'échange sur la partition ou le disque le moins utilisé pour améliorer les performances de votre système.
 
Clé : HKLM \SYSTEM \CurrentControlSet \Control \Session Manager \MemoryManagement
Entrée : SystemPages
Système : NT, 2K

Signification : Pages Système
Type : REG_DWORD
Valeur par défaut : 0
0 : Utilise la valeur par défaut pour le nombre d'entrées.
Nombre d'entrées de la table d'allocation des pages système réservées dans la zone de mémoire système. Ces entrées servent à mapper des tampons d'entrée/sortie et d'autres informations système. Chaque entrée correspond à une seule page.
 
Clé : HKLM \SYSTEM \CurrentControlSet \Control \Session Manager \MemoryManagement
Entrée : ClearPageFileAtShutdown
Système : NT, 2K
Signification : Vide le fichier d'échange lors de l'arrêt de l'ordinateur
Type : REG_DWORD
Valeurs possibles : 0 ou 1
Valeur par défaut : 0
1 : Indique au système de mettre à 0 les pages inutilisées du fichier d'échange lors de l'arrêt de l'ordinateur afin d'empêcher que d'autres processus ne les lisent. Toutes les pages ne peuvent pas être remises à 0 car elles sont encore utilisées par le système ou par des processus encore actifs. Il s'agit là d'un paramètre de sécurité de Windows NT.
 
Clé : HKLM \SYSTEM \CurrentControlSet \Control \Session Manager \MemoryManagement
Entrée : DisablePagingExecutive

Système : NT, 2K
Signification : Désactive l'utilitaire de pagination
Type : REG_DWORD
Valeurs possibles : 0 ou 1
Valeur par défaut : 0
0 : Pagine les pilotes en mode utilisateur/noyau et le code en mode système, en période d'inutilisation.
1 : Empêche cette pagination : les pilotes doivent résider en permanence dans la mémoire vive.
 
Clé : HKLM \SYSTEM \CurrentControlSet \Control \Session Manager \MemoryManagement
Entrée : IOPageLockLimit
Système : NT, 2K
Signification : Limite de verrouillage de page pour les entrées/sorties
Type : REG_DWORD
Valeur par défaut : 0 (512Ko)
Nombre maximal d'octets verrouillables pour des opérations d'entrée/sortie.
0 : Le système utilise une valeur par défaut de 512Ko.
Il s'agit d'une valeur maximale, pas d'une valeur imposée. A augmenter si possible sur les systèmes dotés de suffisamment de RAM, afin d'accélérer les accès disques. Pour calculer cette valeur il faut déduire le pad, sorte de tampon, de la quantité de la mémoire vive de la machine, de la façon suivante :
RAM   Pad   IOPageLockLimit
= RAM - Pad
<64Mo   8 192 (8Mo)   RAM - 8 192 Ko
64Mo   16 384 (16Mo)   49 152 (48Mo)
128Mo   24 576 (24Mo)   106 496 (104Mo)
256Mo   40 960 (40Mo)   221 184 (216Mo)
512Mo   65 536 (64Ko)   458 752 (448Mo)
 
Clé : HKLM \SYSTEM \CurrentControlSet \Control \Session Manager \MemoryManagement
Entrée : LargeSystemCache

Système : NT, 2K
Signification : Grand cache système
Type : REG_DWORD
Valeurs possibles : 0, 1, 2 ou 3
Valeur par défaut : 0 ou 1
Sur un serveur, détermine si la priorité en mémoire est accordée au partage de fichiers ou au réseau. Pour modifier cette valeur, ouvrez l'icône Réseau du Panneau de configuration et cliquez sur l'onglet Services. Pour favoriser le cache, cliquez sur Augmenter le flux pour le partage de fichiers. Pour favoriser les applications réseau, cliquez sur Augmenter le flux pour les applications réseau.
0 : Limite l'utilisation de la mémoire.

1 : Même priorité pour le cache et le réseau.
2 : Optimisé pour le partage de fichiers : le cache est prioritaire.
3 : Optimisé pour le réseau : les applications réseau sont prioritaires.
 
Sommaire Réserve de mémoire non paginée
Clé : HKLM \SYSTEM \CurrentControlSet \Control \Session Manager \MemoryManagement
Entrée : NonPagedPoolQuota

Système : NT, 2K
Signification : Quota de réserve non paginée
Type : REG_DWORD
Valeurs possibles : 0 ou 1 à 128 (Mo)

Valeur par défaut : 0
Taille maximale en Mo de la réserve de mémoire non paginée susceptible d'être allouée par un processus. Toute tentative par un processus d'allouer plus d'espace dans la réserve de mémoire non paginée échouera. La réserve de mémoire non paginée est une zone de mémoire vive réservée aux objets qui doivent résider en permanence en mémoire vive tant qu'ils sont actifs.
0 : Calcule un quota basé sur la quantité de mémoire vive totale.

Il est fortement déconseillé de changer cette valeur dans la mesure où elle est périodiquement modifiée par le système de façon dynamique.
 
Clé : HKLM \SYSTEM \CurrentControlSet \Control \Session Manager \MemoryManagement
Entrée : NonPagedPoolSize
Système : NT, 2K
Signification : Taille de la réserve non paginée
Type : REG_DWORD
Valeur par défaut : 0
Taille en octets de la réserve de mémoire non paginée. La réserve de mémoire non paginée est une zone de mémoire vive réservée aux objets qui doivent résider en permanence en mémoire vive tant qu'ils sont actifs. Le maximum est de 80% de la mémoire vive totale. Cette description s'applique à Windows NT4.0. C'est différent sous Windows 2000.
0 : Calcule une taille basée sur la quantité totale de mémoire vive.

NonPagedPoolSize
et
PagedPoolSize sont calculées à l'aide d'algorithmes basés sur la taille de la mémoire physique. Vous pouvez utiliser les formules suivantes sur des machines x86 :

1. Définitions
  MinimumNonPagedPoolSize = 256Ko
MinAdditionNonPagedPoolPerMb = 32Ko
DefaultMaximumNonPagedPool = 1Mo
MaxAdditionNonPagedPoolPerMb = 400Ko
PTE_PER_PAGE = 1024
PAGE_SIZE = 4096
     
2. Calculer NonPagedPoolSize pour une machine équipée de 32Mo de RAM
  Formule
    NonPagedPoolSize = MinimumNonPagedPoolSize + ((Mémoire physique - 4) * MinAdditionNonPagedPoolPerMb)
  Calcul
    MinimumNonPagedPoolSize = 256Ko
NonPagedPoolSize = 256Ko + ((32 - 4) * 32Ko) = 1.2Mo

MaximumNonPagedPoolSize = DefaultMaximumNonPagedPool + ((Mémoire physique - 4) * MaxAdditionNonPagedPoolPerMB)

Si MaximumNonPagedPoolSize < (NonPagedPoolSize + PAGE_SIZE * 16),

alors MaximumNonPagedPoolSize = (NonPagedPoolSize + PAGE_SIZE * 16) 

Si MaximumNonPagedPoolSize >= 128Mo,
alors MaximumNonPagedPoolSize = 128Mo

  Résultat
    MaximumNonPagedPoolSize = 1Mo + ((32 - 4) * 400Ko) = 12.5Mo
     
3. Calculer PagedPoolSize pour une machine équipée de 32Mo de RAM
  Formule
    Size = (2 * MaximumNonPagedPoolSize) / PAGESIZE
Size = (Size + (PTE_PER_PAGE - 1)) / PTE_PER_PAGE
PagedPoolSize = Size * PAGESIZE * PTE_PER_PAGE
Si PagedPoolSize >= 192 Mo alors PagePoolSize = 192
  Calcul
    Size = (2 * 12.5Mo) / 4096 = 6400
Size = (6400 + (1024 - 1)) / 1024 = 7.25
  Résultat
    PagedPoolSize = 7.25 * 4096 * 1024 = 30Mo

Windows 2000
Le modèle mémoire de Windows 2000 augmente la taille de la réserve de mémoire paginée. Une machine x86 sous Windows 2000 démarrée sans le paramètre
/3GB va essayer d'atteindre un maximum de 300 à 400Mo de réserve de mémoire paginée (par rapport à 192 Mo sous Windows NT 4.0). Sous Windows 2000, la quantité de mémoire de la réserve non paginée que le système peut utiliser passe à 256Mo (par rapport à 128Mo sous Windows NT 4.0). Si le serveur démarre avec le paramètre /3GB, le modèle mémoire pour les réserves paginée et non paginée est le même que sous Windows NT 4.0.

 
Sommaire Réserve de mémoire paginée
Clé : HKLM \SYSTEM \CurrentControlSet \Control \Session Manager \MemoryManagement
Entrée : PagedPoolQuota

Système : NT, 2K
Signification : Quota de réserve paginée
Type : REG_DWORD
Valeurs possibles : 0 ou 1 à 128 (Mo)
Valeur par défaut : 0
Taille maximale en Mo de la réserve de mémoire paginée susceptible d'être allouée par un processus. Toute tentative par un processus d'allouer plus d'espace dans la réserve de mémoire paginée échouera. La réserve de mémoire paginée est une zone de mémoire vive réservée aux objets qui peuvent être paginés en période d'inutilisation.
0 : Calcule un quota basé sur la quantité de mémoire vive totale.

Il est fortement déconseillé de changer cette valeur dans la mesure où elle est périodiquement modifiée par le système de façon dynamique.
Pour de plus amples informations, consultez l'article
KB Q124-5-94.
 
Clé : HKLM \SYSTEM \CurrentControlSet \Control \Session Manager \MemoryManagement
Entrée : PagedPoolSize
Système : NT, 2K
Signification : Taille de la réserve paginée
Type : REG_DWORD
Valeurs possibles : 0 à 128 (Mo)
Valeur par défaut : 0x3000000 (32Mo)
Taille maximale en octets de la réserve de mémoire paginée. La réserve de mémoire paginée est une zone de mémoire vive réservée aux objets qui peuvent être paginés en période d'inutilisation.
0 : Le système adapte la taille de la réserve de mémoire paginée en fonction de la quantité totale de mémoire vive. PagedPoolSize sera approximativement égal à la quantité totale de mémoire vive.
Pour calculer la taille de PagedPoolSize, voir
NonPagedPoolSize. Voir aussi RegistrySizeLimit.
 
Sommaire Cache L2
Clé : HKLM \SYSTEM \CurrentControlSet \Control \Session Manager \MemoryManagement
Entrée : SecondLevelDataCache

Système : NT, 2K
Signification : Cache de données de second niveau
Type : REG_DWORD
Valeur par défaut : 0
Contient la taille du cache processeur également appelé Cache L2 (Level 2 cache, cache de 2nd niveau).
0 : Essaye de déterminer la taille du Cache L2 à partir de la HAL. En cas d'échec, la valeur adoptée est 256Ko.

Moyen supplémentaire de détection du Cache L2 pour les machines dont la HAL (Hardware Abstraction Layer, couche d'abstraction matérielle) ne parvient pas à le détecter. Indiquez la taille de votre Cache L2 :
Taille du cache   Valeur hex
512Ko   0x200
1Mo   0x400
 
Sommaire Protection des DLL
Clé : HKLM \SYSTEM \CurrentControlSet \Control \Session Manager \MemoryManagement
Entrée : ProtectionMode
Système : NT, 2K
Signification : Système de protection
Type : REG_DWORD
Valeurs possibles : 0 ou 1
Valeur par défaut : 0
Sous Windows NT, les DLL du noyau du système d'exploitation sont conservées en mémoire virtuelle et partagées entre les programmes qui tournent sur le système. Cette faille dans le système permet à un utilisateur d'acquérir des privilèges administrateur en se connectant sur une machine du réseau. Pour éviter cela, mettez ProtectionMode à 1.
Pour de plus amples informations, consultez l'article
KB Q218-4-73.
 
Sommaire Processus
Clé : HKCU \Software \Microsoft \Windows \CurrentVersion \Explorer
Entrée : DesktopProcess
Système : NT, 2K
Signification : Processus du bureau
Type : REG_DWORD
Valeurs possibles : 0 ou 1
Valeur par défaut : 0
Détermine si les composants de l'Explorateur sont exécutés au sein d'un processus unique ou de 2 processus différents.
0 : Tous les composants de l'Explorer (l'Explorateur, le Bureau et la Barre des tâches) sont lancés dans des threads différents au sein d'un unique processus multithread appelé Explorer.exe.
1 : Toutes les instances d'Explorer sont lancées au sein d'un processus unique. Le Bureau et la Barre des tâches sont lancés dans un autre processus. Ces 2 processus s'appellent Explorer.exe. Si vous disposez de suffisamment de mémoire vive, fixez cette valeur à 1.

 

© Franck Kiechel 2000-2001