La gestion mémoire sous Windows Vista

Le par Manuel D. C.  |  9 commentaire(s)
Article n° 357 - La gestion mémoire sous Windows Vista (120*120)

Windows a toujours été très critiqué au sujet de la gestion mémoire, et en particulier de la consommation mémoire. Si bien qu'il était plus que normal de nous y intéresser aujourd'hui avec Windows Vista. Et c'est ce que nous vous proposons de découvrir maintenant dans ce dossier.

La Gestion Mémoire

Après la première partie de notre dossier consacrée essentiellement à l'interface graphique de Windows Vista, et la seconde partie dédiée au système et au noyau NT6, voici la troisième consacrée à la gestion de la mémoire.


Windows Vista bénéficiant du nouveau noyau NT6, il était plus que normal que Microsoft révise sa copie concernant la gestion des ressources, et plus particulièrement du système mémoire.

Avant d’aller plus loin, rappelons que le noyau NT5 (Windows 2k/XP) utilise des algorithmes permettant de diviser la mémoire disponible du PC en de petites zones statiques, également appelées pages. En cas de changement dans la configuration PC (installation pilote, modification de la base des registres, etc.), il fallait alors redémarrer le PC afin que le noyau NT5 puisse réorganiser les plages mémoire distribuées. Notons au passage qu’il suffit qu’une application accède à une zone mémoire ne lui étant pas allouée, pour provoquer une erreur de pagination. Ce qui peut entraîner un plantage système. Sans oublier que le système de communication inter processus est également très compliqué et couteux en ressources.

Avec le noyau NT6, la mémoire vive disponible n’est plus divisée de façon statique, mais dynamiquement. Le premier avantage est que Windows Vista n’est plus limité par la taille fixe des pages, ce qui permet au noyau NT6 de reconfigurer en temps réel ces pages en fonction des besoins. Pour simplifier, le noyau NT6 bascule les pages en cours d’utilisation en mode de lecture seule (pour éviter que ces pages ne soient corrompues), et réorganise uniquement l’espace mémoire disponible pour attribuer de nouvelles pages en fonction des besoins des différents composants du système (la taille des pages est adaptée aux besoins). Ce qui permet de ne pas se retrouver avec de l’espace mémoire inutilisé et de rencontrer le phénomène de fragmentation. Et ce qui permet également d’éviter les redémarrages intempestifs, mais également d’écraser « accidentellement » les données contenues dans une ou plusieurs pages.

Memory management      
Ironique, l'augmentation du confort de l'utilisateur passe
par l'augmentation du taux d'utilisation mémoire avec Vista.


Plus efficace, Windows Vista analyse en permanence la mémoire. L’intérêt est de détecter toute erreur d’écriture/lecture dans le but de placer le ou les secteurs mémoire défectueux en quarantaine, la qualité des barrettes variant d’un modèle à l’autre. Windows Vista vous avertit alors du problème et vous propose d’exécuter l’utilitaire de diagnostic mémoire Windows au prochain redémarrage.

Il est également possible de démarrer le PC à l’aide du disque d’installation de Windows Vista, de sélectionner l’option réparer pour accéder aux options de maintenance système et exécuter le diagnostic mémoire. Le logiciel Memtest fait également parfaitement l’affaire. Au final, la stabilité est fortement augmentée.


Vista_Memory Diagnostic Tool

Clone du logiciel Memtest, Windows Memory Diagnostic tool permet
de contrôler l'intégrité physique des barrettes mémoire.

../..


La mémoire virtuelle

Comme nous venons de le voir, le noyau NT6 utilise des algorithmes permettant de diviser dynamiquement la mémoire disponible du PC en de petites pages. Et c’est sur ce même modèle, que le noyau NT6 gère la mémoire virtuelle, ou SWAP.

La mémoire virtuelle s’appuie sur les disques durs et a essentiellement pour but d’optimiser la gestion de la mémoire et de permettre l’exécution de plus de programmes simultanés que la mémoire vive ne peut le permettre. En essayant toutefois de trouver le bon compromis entre performances et espace disponible, les performances du meilleur disque dur qui soit étant loin d’être aussi véloces que la mémoire.

Avec Windows 2k/XP, la mémoire virtuelle est paginée. C'est-à-dire que tout comme la mémoire, la mémoire virtuelle est divisée en de multiples pages statiques. Lorsque le taux d’utilisation mémoire devient critique, le noyau libère alors des pages de la mémoire vive pour les transférer sur la mémoire virtuelle (pagefile.sys). Ce qui permet d’attribuer les pages mémoire libérées à d’autres composants du système. Malheureusement, si Windows a de nouveau besoin du contenu des pages transférées sur la mémoire virtuelle, une interruption se produit. Ce processus est nécessaire pour recharger les pages en mémoire vive.


Mémoire virtuelle

La gestion de la mémoire virtuelle devient elle aussi dynamique avec Vista.


Par conséquent, Microsoft s’est employé à augmenter les performances de Windows Vista en s’appuyant sur le même modèle dynamique utilisé par la mémoire vive. Ce qui permet là aussi, d’adapter la taille des pages en fonction des besoins réels, de diminuer les redémarrages nécessaires et de réduire fortement le phénomène de fragmentation. Ce qui implique de meilleurs accès en lecture/écriture également.

../..


Le SuperFetch

Dans le but d’optimiser le temps d’ouverture et d’accès aux différentes applications, Windows Vista intègre une « nouvelle » technologie sous la forme d’un algorithme évolué et appelé SuperFetch. Cette technique n’est en réalité pas une nouveauté puisqu’elle existe déjà au sein du noyau NT5 avec Windows 2k/XP et se nomme Prefetching.

Pour rappel, cette technique permet d’analyser les processus non système afin de déterminer quels sont les programmes les plus couramment utilisés. Une fois les informations recueillies, Windows est alors en mesure de pré-charger ces applications en mémoire, pour accélérer l’exécution de celles-ci. En contrepartie, SuperFetch a besoin de temps pour analyser vos habitudes avant d’être réellement performant. Mais le besoin en mémoire est bien sûr plus conséquent, même s’il contribue à augmenter le confort de l’utilisateur. Le lancement des applications se montrant réellement plus efficace. Ce qui explique le taux d’utilisation mémoire démesurée et d’accès au disque dur que nous rencontrons tous. D’autant plus que SuperFetch fonctionne constamment en arrière plan, de manière totalement transparente.

Avec Windows Vista, la technologie SuperFetch va plus loin puisqu’elle complète les informations recueillies de manière très précise. Tout simplement en rajoutant la notion de temps, puisque SuperFetch est capable de différencier les applications exécutées en semaine de celles qui le sont le week-end.


SuperFetch

Si la fonction SuperFetch vous semble inutile, vous pourrez
désactiver celle-ci et réduire la consommation mémoire.


Mais si l’optimisation des applications que vous utilisez couramment vous importe peu, il reste possible de désactiver la fonction SuperFetch. Pour cela, ouvrez le panneau de configuration, puis respectivement les onglets Système et Maintenance, Outils d’Administration et enfin Services. Il ne reste plus qu’à localiser le service SuperFetch pour le désactiver.

../..


ReadyBoost

Pour offrir un fonctionnement optimal à la fonction SuperFetch, Microsoft conseille vivement l’utilisation de 1Go de mémoire minimum pour assurer un meilleur confort sous Windows Vista. Une telle quantité mémoire est d’ailleurs aujourd’hui couramment utilisée puisque c’est aussi le minimum conseillé pour jouer sur PC dans de bonnes conditions. A titre purement informatif, avec notre plate-forme de test l’utilisation mémoire moyenne flirte avec les 700/800 Mo. Ce qui est certes plus impressionnant que sous Windows XP.
Store n go 2Go
La technologie ReadyBoost permet de s'appuyer sur une unité de stockage USB
pour optimiser les temps de chargement d'applications sous Vista.


Toutefois, la technologie ReadyBoost permet d’exploiter la mémoire Flash des clés USB haute performance, en allouant une partie de sa capacité de stockage qui sera utilisée pour accélérer le temps de chargement des applications. Accessible via l’onglet ReadyBoost situé dans les propriétés du lecteur, la clé USB est alors identifiée par le système comme un périphérique mémoire externe (ou EMD pour External Memory Devices). Mais de toute façon, lors de la première insertion de la clé USB, Windows Vista vous proposera d’utiliser la fonction ReadyBoost.



ReadyBoost       Ready Boost Verbatim

Une fois le support de stockage amovible inséré, Windows Vista vous propose d'allouer
une partie de l'espace de stockage à la fonction ReadyBoost.


Toutefois, pour assurer un niveau de performance optimal, la clé USB devra offrir un minimum d’espace disque de 256 Mo, avec un débit minimum direct de 2,5 Mo/seconde en lecture et de 1,75 Mo/seconde en écriture. Si bien peu de clés répondaient encore à ces critères il y a peu, les constructeurs ont commencé à proposer de nombreuses clés USB certifiées ReadyBoost. Et c’est toujours une alternative intéressante pour libérer de la mémoire.


Verbatim USB

Avant de courir acheter un support amovible USB certifié ReadyBoost,
tester les performances de votre support à l'aide de l'utilitaire HD Tune.


Encore anecdotique compte tenu de l’indisponibilité majeure des disques durs hybrides, la fonction ReadyDrive promet d’optimiser davantage les performances sous Vista. A commencer par l’optimisation du temps de démarrage du système. Mais aussi en réduisant le temps de sortie de la mise en veille hybride, ou encore en réduisant davantage la consommation électrique.

Bref, nous voyons bien que Microsoft a effectivement optimisé le système de gestion mémoire avec le nouveau noyau NT6. Ce qui permet de bénéficier d'une plus grande stabilité système comparée à Windows XP, avec en prime une mise à disposition des ressources optimisée et dynamique, une réduction de la fragmentation du fichier d'échange (SWAP) mais également de la mémoire, ainsi qu'une analyse en temps réel de l'état physique de la mémoire afin de mettre en quarantaine les éventuels secteurs défectueux. Sans oublier l'avantage de ne plus devoir systématiquement redémarrer en cas de changement de la configuration système. De quoi réjouir les utilisateurs de Vista...


  • Partager ce contenu :
Dans le même style
  • ReadyBoost : optimiser et accélerer Windows Vista
    Introduite avec Windows Vista, la technologie ReadyBoost permet d’utiliser une clé USB ou tout autre type de mémoire Flash (SD card, CompactFlash, MMC, etc.) pour stocker les fichiers qui sont le plus souvent utilisés. Afin de ...
Vos commentaires
Trier par : date / pertinence
phileg offline Hors ligne Vétéran avatar 1631 points
Le #170181
Très bonne explication.

Une liste des clés USB certifiée READYBOOST eu été la bienvenue, peut-être même avec un suivit...
john67 offline Hors ligne Vétéran avatar 2387 points
Le #170182
Seul point à cet excellent dossier: la partie ReadyBoost que je n'ai pas trop comprise, mais je suis peut-être bouché
Dossier clair et lisible, un vrai plaisir.
Manuel D.C. offline Hors ligne Héroïque avatar 792 points
Le #170183
"Une liste des clés USB certifiée READYBOOST eu été la bienvenue..."

J'y ai pensé, mais ce n'est pas un point essentiel puisque toutes les clés USB que j'avais en ma possession, et qui n'était pourtant pas certifié ReadyBoost ont montré des performances largement au dessus du minimum requis par Microsoft pour fonctionner.
Donc pour ma part, ReadyBoost est une appellation marketing permettant à l'utilisateur de s'y retrouver en achetant les bonnes clés USB...Mais (oui, il y a toujours un MAIS :relaxed, c'est aussi un piège pour ceux qui possèdent déjà des clés USB non certifiés. Inutile de se précipiter, et comme je l'ai dit dans l'article, il est judicieux de tester les performances de sa clé USB à l'aide de l'utilitaire gratuit HD Tune pour vérifier que vous avez bien au minimum un débit de 2,5 Mo/seconde en lecture et de 1,75 Mo/seconde en écriture.
phileg offline Hors ligne Vétéran avatar 1631 points
Le #170184
Merci du complément d'info
phileg offline Hors ligne Vétéran avatar 1631 points
Le #170186
A quand le prochain dossier sur vista et les SID '
onezero online Connecté Vétéran icone 1630 points
Le #170189
Merci pour ces explications mais y'a rien qui vous choc tous '''
+ de mémoire + de disque, toujours + gros, toujours + puissant ....

Super mais Pourquoi ' Ben, pour faire la même chose en fait ...

+ rapidement ' + facilement '

Ceux qui se dise: Ben pas vraiment !
Vous avez pas l'impression qu'on vous prend pour des c.. '''
CodeKiller offline Hors ligne VIP avatar 8424 points
Le #170192
Pour ReadyBoost, si on branche un DD externe Vista propose de l'utiliser...mais je n'ai pas tester...on ne sait jamais. :-)

Sinon, la gestion "dynamique" du SWAP existe déjà sous Windows XP il me semble (enfin si on regarde la capture que vous avez faite...).

onezero :
Bin, t'as pas du tester Vista parce que c'est pas vraiment la même chose que XP...donc tu peux la fer***...

Y'en a qui sont jamais content..;T'as qu'à retourner sous MS-DOS, au moins les ressources ne seront pas utilisées...
Dide30 offline Hors ligne Héroïque avatar 664 points
Le #170196
Beau travaille
Merci
wisssams offline Hors ligne Héroïque avatar 983 points
Le #170204
C'est vrai que j'ai été vachement imprésionné, déjà sous la RC1, du temps de démarrage des logiciels souvent utilisés.
Un vrai régal de voir Firefox s'ouvrir en une seconde la première fois
icone Suivre les commentaires
Poster un commentaire