J'ai noté récemment que Windows 7 sur ma machine se plaignait de manquer de mémoire et que je devais fermer certains programmes. Cela indiquerait alors généralement un programme que j'exécute et qui a une fuite de mémoire et qui est devenu assez volumineux. Cependant, ces programmes commencent généralement à 20 Mo d'utilisation de la RAM et ce n'est qu'après avoir exécuté le programme entre 12 et 24 heures qu'ils atteignent au plus 200 Mo d'utilisation de la RAM. Je n'ai jamais plus de trois de ces programmes en cours d'exécution en même temps, donc 600 Mo de RAM maximum que j'ai jamais vus de mes programmes en cours d'exécution.
J'utilise Windows 7 x64 sur une machine avec 4 Go de RAM. Au début, j'ai oublié cela et je redémarrais les programmes lorsque Windows se plaignait, mais maintenant que je m'en souvenais, le fait que Windows se plaigne de moi en utilisant 600 Mo de RAM (moins de 2 Go même si vous incluez la mémoire utilisée par le système d'exploitation lui-même) semblait étrange . J'ai donc tiré la fenêtre des processus système pour voir mon utilisation totale de la mémoire à partir de mes processus et des processus système répertoriés. Cela représentait un peu plus de 700 Mo, donc j'étais toujours confus. Ensuite, je suis allé au moniteur de ressources et j'ai ouvert l'onglet Mémoire. Là je pense avoir trouvé ma réponse. Il a noté que je n'utilisais en fait que 33% de ma RAM. Cependant, dans la barre d'allocation des ressources de mémoire physique, la section Modified était jusqu'à 2,3 Go, la section Standby était jusqu'à 540 Mo, la section Free était inférieure à 20 Mo, la mémoire en cache était répertoriée à 2. 8 Go et la mémoire disponible ont été répertoriés à 550 Mo. (Ces valeurs étant légèrement arrondies, bien sûr, car les vôtres changent constamment au moment où j'écris ceci.)
Donc, apparemment, Windows 7 utilise plus de mémoire que moi. J'ai fait, à un moment donné dans le passé, apporté quelques modifications au menu des services Windows installé, mais cela ne visait qu'à désactiver certains services d'hébergement, car je ne voulais pas faire de partage de médias, activer le client Telnet et supprimer Internet. Explorer, mais ça pourrait être de ma faute. Existe-t-il un moyen de faire en sorte que Windows ne fasse pas cela ou du moins de mettre en cache beaucoup moins agressivement, donc j'arrête de recevoir ces avis de «mémoire insuffisante»?
Réponses:
La mémoire de secours n'est pas un problème, elle est considérée comme "libre" et sera réallouée sur demande - elle contient juste de la mémoire récemment utilisée par les programmes, mais est maintenant libérée. Si un autre programme demande plus de mémoire que "Free", le système doit allouer de manière transparente à l'ensemble de secours (car la mémoire "de secours" n'est pas vraiment utilisée pour le moment).
Votre mémoire modifiée excessive est votre problème, car elle ne peut pas être réallouée facilement. Voyez ici . Cela est probablement dû à une fuite de mémoire (qui semble correspondre à votre premier paragraphe - quels programmes fuient?) Ou à un fichier d'échange trop petit (votre fichier d'échange est-il de taille fixe ou désactivé?).
la source
La mise en cache préventive SuperFetch n'est pas votre problème. Windows 7 utilisera autant de mémoire disponible que possible pour mettre en cache de manière préventive ce qu'il pense que vous allez avoir besoin ensuite. S'il le fait bien, il vous fait gagner un peu de temps et vos applications apparaissent plus rapidement et plus réactives.
S'il se trompe et que vous avez besoin d'autres données, Superfetch libère une partie de la mémoire dont il dispose pour vous permettre de charger les données dont vous avez vraiment besoin. Voir: http://arstechnica.com/microsoft/news/2010/02/behind-the-windows-7-memory-usage-scaremongering.ars
Si vous rencontrez des problèmes de `` mémoire faible '', ce ne sera pas à cause de SuperFetch - car il abandonnera autant de mémoire que nécessaire si les applications le demandent. Votre mémoire disponible (550 Mo) est ce qui est utilisé par superfetch, donc clairement vous n'avez pas encore manqué de mémoire. Même lorsque vous utilisez toute votre RAM, votre machine retombera dans la mémoire virtuelle, bien que vous souhaitiez éviter cela en raison de la baisse des performances ...
Cela suggère donc que vos problèmes de `` mémoire faible '' sont dus à des problèmes ailleurs - peut-être qu'une de vos applications qui fuit consomme (et n'abandonne pas) d'autres types de ressources ...
Quoi qu'il en soit, la solution est plus susceptible d'être trouvée en s'attaquant à vos applications de buggy qu'en jouant avec SuperFetch ...
la source
Étant donné que vous ne pensez pas que le problème est dû à un programme avec une fuite de mémoire, l'alternative serait d'augmenter la taille du fichier de page.
Bien que le fichier d'échange ne soit pas votre mémoire principale, il permettra au système d'exploitation d'échanger plus de données sur le disque dur et, espérons-le, d'arrêter le message «mémoire insuffisante». La seule autre option serait de supprimer le programme associé au processus qui a l'énorme empreinte de 13 Go, bien que je ne sache pas de quel programme aurait besoin pour paginer autant de mémoire, sauf s'il s'agissait d'un jeu PC haut de gamme ou d'un logiciel de rendu 3D.
la source
D'après mon expérience, le fluage de la mémoire de secours est un vrai problème. Par exemple, si j'exécute Snagit en mode fenêtres déroulantes pour un article volumineux, certaines parties de l'article ne seront pas capturées lors de l'exécution sur la mémoire de secours uniquement. Dans tous les cas, je trouve que mon ordinateur fonctionne lentement sur la mémoire de secours.
Pour résoudre le problème, j'utilise l'optimiseur de mémoire des utilitaires Glary gratuits. Mon ordinateur a 6 GIG de mémoire. Lorsque je démarre pour la première fois, j'ai environ 2 GIG de mémoire en cours d'utilisation, 2 GIG de veille et 2 GIG de ce que j'appelle de la mémoire libre gratuite selon le moniteur de ressources de Windows. En une demi-journée environ, toute ma mémoire Free-Free se transformerait en mémoire de secours, que j'utilise ou non l'ordinateur. J'ai maintenant l'optimiseur de mémoire Glary Utilities démarré avec Windows et je peux faire fonctionner mon ordinateur indéfiniment en ayant les 2 GIG de mémoire libre disponible.
Chaque fois que je m'assois pour une autre session, je double-clique d'abord sur l'icône de la barre d'optimisation de la mémoire et fais une optimisation; demandant que mes 2 GIG originaux de mémoire Free-Free soient libérés. Je peux en demander plus, mais c'est le maximum qu'il libérera malgré tout. Il faut environ 30 secondes pour que l'optimiseur se termine, ce qui est beaucoup moins que celui requis pour un redémarrage. Il a un mode d'auto-optimisation mais je n'ai pas pu comprendre comment le faire fonctionner.
la source
Pour résoudre ce problème
Allez à start-run-msconfig, puis services et supprimez la coche de "Windows driver foundation". cliquez sur ok et redémarrez la machine.
N'oubliez pas - Seules les étapes mentionnées ci-dessus résoudront ce problème. Si vous avez désactivé les services.msc, il est toujours actif au moment du démarrage du système d'exploitation et il bloquera votre mémoire.
Pour vérifier cela, utilisez l'outil
la source