Suite à un problème rencontrés sur des serveurs windows 2003, j'essaie de
comprendre la façon dont la mémoire est gérée et j'avoue que malgré
plusieurs recherche via google, ce n'est pas clair.
Dans gestionnaire de tâche en faisant apparaitre certaines colonnes :
exemple pour le processus:
iexplore
Util mémoire : 49 385 Ko
Taille Mv : 57 824 Ko
Réserve paginée 187 Ko
Réserve Non paginée 25 Ko
1° Quelqu'un peut il m'expliquer ce que sont réserve paginée et réserve non
paginée. Définition trouvée : Mémoire pour le
noyau du processus...j'ai du mal à comprendre ce que c'est.
2° Quand on parle de Taille MV = mémoire virtuelle il s'agit bien de la
mémoire dans le fichier d'echange et non la somme
des deux (Swap+ram) ? Le logiciel Aida par exemple affiche la MV comme cette
somme.
Pourtant dans l'exemple du dessus IE consomme bien 49 385Ko de RAM + 57 824
Ko dans le fichier d'échange ?
Si vous me répondez que les 49 Mo sont compris dans les 57 Mo, regardez dans
vos processus et vous verrez que sur certains
processsus "Util mémoire" et plus élevé que "Taille MV", donc MV ne peut la
contenir.
3° Dans l'onglet performances comment définiriez vous Cache système ?
définition trouvée : Il s'agit ici de la quantité
de mémoire vive utilisée par la mémoire cache des fichiers.
Trouvé également mémoire qui"serait " utilisée si tous les fichiers en cache
montaient.
C'est quoi au juste ? On se trouve dans le fichier d'échange ou dans la
mémoire vive ?
4°Le PTE définition trouvée : Les adresses de la mémoire virtuelle du
fichier d'échange sont mappées vers les adresses de
la mémoire physique à l'aide d'une table des pages.
Ca me parait compréhenible mais la suite beaucoup moins : .... pour mapper
les pages système comme l'espace d'E/S, les piles du noyau et les listes des
descripteurs de mémoire.
Puis extrait d'un site :
[...Les méthodes de stockage : On appelle page table une table de 1024
entrées permettant de décrire 4mo de mémoire. La page
table entry couvre donc 4ko de mémoire. Une page table entry est constituée
de 4 octets dont les plus essentiels sont
repartis ainsi : - 20 bits (ceux de poids forts) représentent le numéro de
la frame correspondant a cette page (page frame
number ou PFN) - 1 bit signifiant si la page est valide. - 1 bit signifiant
s?il est possible d?écrire sur cette frame. -
1 bit qui donne les droits d?accès à cette frame (kernel ou utilisateur). -
1 bit qui signi e que cette frame a déjà été
accédée. Pour mapper les 4go de mémoire virtuelle il faudrait 1024 page
tables, contenant elle-mêmes 1024 page table
entries (ou PTE) de 4 octets chacune. En d?autres termes, 4mo seraient
nécessaire pour chaque processus afin de mapper ses
4go de mémoire virtuelle. Si cette quantité de mémoire n?est pas énorme, il
faut toutefois prendre en compte qu?elle sera
nécessaire pour chaque processus, et que les 4go de mémoire virtuelle de
chacun seront donc automatiquement mappés qu?ils
soient utilisés ou non. Ce système n?est donc absolument pas viable, car
dans le cas d?une machine disposant de peu de
mémoire, une dizaine de processus minimes occuperaient à eux seuls 40mo de
mémoire, et ce uniquement pour stocker leurs
1024 page tables. Pour palier à ce problème, il existe une structure au
dessus des page tables appelée page directory.
Celle-ci est une table de 1024 entrées (appelées page directory entries, ou
PDE) permettant de décrire l?intégralité des
4go de mémoire virtuelle. ...]
J'imaginais le PTE comme une table faisant la liaison entre la mémoire vive
et la virtuelle, sous forme de page, mais ça a l'air directement lié au 4
Gigas que nous offre un système 32 bit, si quelqu'un peut m' expliquer plus
simplement ?
5° On continue en complexité, toute ses interrogations font suite à la
résolution d'un problème en Terminal server sur
windows 2003 ou la résolution a été au final d'augmenter le PapgedPool Size
à son max soit 650MB pour un windows 2003.
Avec Windebug, j'étais avec un pagedpool de 270 MB, avant résolution du
problème; je voyais des messages x pool allocation
failed et la conséquence conexions utilisateurs refusées. Après passage du
pagedpool au max plus de soucis .
Ce paramètre pagedpool , si c'est le paramètre qui apparait dans l'onglet
performance Mémoire pour le noyau ? jamais je ne
l'ai vu dépasser le 270 comment pouvait il avoir des saturation. Si
quelqu'un peut m'en dire plus sur "le Pool Paginé" ca doit rejoindre ma
question 1° peut-être
Bon ça fait beaucoup mais je remercie ceux qui m'éclairont, par contre
c'est comme à qui veut gagner des millions, si on est pas sûr d'une réponse
on répond pas, svp
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Oriane
Bonjour Olivier,
Je te conseille de télécharger le process explorer de www.sysinternals.com, qui est + complet que le gestionnaire de tâches de 2003 et qui apporte une aide.
Tu peux aussi aller voir ca: http://portal.loginconsultants.nl/forum/attachments/Terminal_Server_Performance_Tuning.pdf
Cordialement
Bonjour Olivier,
Je te conseille de télécharger le process explorer de www.sysinternals.com,
qui est + complet que le gestionnaire de tâches de 2003 et qui apporte une
aide.
Tu peux aussi aller voir ca:
http://portal.loginconsultants.nl/forum/attachments/Terminal_Server_Performance_Tuning.pdf
Je te conseille de télécharger le process explorer de www.sysinternals.com, qui est + complet que le gestionnaire de tâches de 2003 et qui apporte une aide.
Tu peux aussi aller voir ca: http://portal.loginconsultants.nl/forum/attachments/Terminal_Server_Performance_Tuning.pdf