Jump to content
Site Communauté

Fichier d'échange et image mémoire en cas de crash


Recommended Posts

@Le Crabe

[Nouvelle version de mon commentaire sur l'article ─ des éléments ont été rajoutés afin qu'un utilisateur lambda puisse comprendre]

Wooo !
Pour être un guide ultime c’en est un ! Chapeau bas l’ami !
Très bien expliqué, très belle présentation et de l’humour comme il en faut. :)

Je trouve tout de même que la partie concernant la mémoire virtuelle est un peu floue et je pense que les néophytes seront un peu perdus. En même temps le fichier d'échange est une notion bien complexe...

Note : La mémoire SWAP est gérée par un fichier de pagination (fichier SWAP/ d'échange) appelé pagefile.sys dont le but est de faire croire à Windows qu’il dispose de plus de RAM (mémoire vive) que celle qui est réellement disponible d’un point de vue matériel dans l’ordinateur. Lorsque la mémoire est fortement sollicitée, Windows déplace temporairement certaines données présentes dans la mémoire physique dans le fichier correspondant à la mémoire SWAP.  En gros la mémoire swap sert à augmenter artificiellement la mémoire vive. Il faut savoir qu'elle est aussi beaucoup moins performante que la RAM.

Remarque 2 : Augmenter la taille du fichier SWAP ne va pas améliorer les performances de votre PC (contrairement à l'ajout de RAM)

Remarque 3 : Vous avez peut être entendu dire qu'il est déconseillé de conserver le fichier SWAP sur un SSD car celui-ci nuirait - apparemment - fortement à sa durée de vie.
Ce sont des conseils d'optimisation complétement idiots (surtout en 2016). Un guide sur l'optimisation des SSD sera publié en Juin 2017


Tu expliques dans un premier temps que, lors d'un crash, Windows va copier le contenu de la RAM dans un Memory Dump File. Lorsque tu parles de l'image mémoire complète, tu expliques qu'il faut fixer la taille du fichier d'échange à "quantité de RAM + 1Mo". C'est une très bonne chose de la fixer et je ne savais pas que Windows avait besoin du fichier d'échange (je n'arrive d'ailleurs pas à comprendre pourquoi il est nécessaire vue que le Memory Dump File copie le contenu de la RAM et non de la mémoire SWAP).
Ce qui est un peu flou c'est qu'on peut comprendre, d'après ce que tu dis, que le fichier d'échange n'est utile que pour une image mémoire complète. Or il faut également du swap ( en théorie 1/3 de la taille de la RAM) pour une image mémoire du noyau. Pour l'image mémoire partielle 128Ko sont nécessaire pour un système 64bits (64Ko sur un système 32bits).
Étant donné qu'il plutôt inutile de posséder du swap lorsqu'on a 16Go de RAM ou plus et qu'il est recommandé de laisser vidage mémoire automatique par défaut ne penses-tu pas qu'il faudrait simplement fixer le fichier d'échange à 1Go dans lorsque la RAM dépasse 12Go ?A mon avis, pour que cette partie du tutoriel soit un peu plus clair, il faudrait expliquer un truc du style :
 

Citation

 

Il faut savoir que la mémoire swap n'est pas aussi rapide que la mémoire vive. Ainsi, il n'est pas forcément intéressant d'en possédant en quantité faramineuse. Moins le PC possède de RAM et plus la mémoire swap est utile. Cependant en 2017, les ordinateurs ont au minimum 4Go de RAM et comme ce n'est pas très compliqué d'en rajouter, il est très courant de posséder une machine avec 8,16 voire 32Go de mémoire vive.
La taille du fichier d'échange qui contrôle cette mémoire swap doit donc être fixée de façon intelligente.

La raison : Par défaut, le fichier d'échange est laissé aux bons soins - automatiques - de Windows. Il fait alors varier la taille de la mémoire SWAP en fonction de la situation. Le fichier pagefile.sys ne cesse donc de croître puis rapetisser et il fini très vite par ressembler à la ratatouille qui vous prépare votre grand-père. Il faut donc le défragmenter pour éviter qu'il ne ralentisse Windows. Le problème c'est que c'est... impossible ! Jamais aucun logiciel ne pourra défragmenter le fichier SWAP. Fixer sa taille règle définitivement le problème.

Il est déconseillé de ne pas avoir de fichier d'échange car ce dernier est indispensable à la création d'image mémoire. Le plus utile étant l'image mémoire noyau, il est conseillé de fixer la taille de ce fichier d'échange au minimum à 1 Go pour permettre sa création en cas de crash.
[+ explication en image pour fixer le fichier swap]

 


D'après ce que j'ai pu lire un peu partout sur le web (et que c'est compliqué cette affaire bon sang !), 1Go devrait suffire sur un PC possédant plus de 8Go RAM. Un peu moins est nécessaire sur les PC de moins de 8Go mais il est préférable de ne pas descendre en dessus pour éviter de manquer de mémoire virtuelle. Pour les PCs avec 4 ou 6Go de RAM il faut fixer le fichier d'échange en fonction de l'utilisation que l'on fait du PC.

Bon voilà, j'espère que mes explications ne sont pas trop brouillons.
Je vais donc réactiver mon fichier swap et corriger les âneries que j'ai pu dire dans mes différents tutoriels. ^^'

Quelques liens intéressants :
https://blogs.technet.microsoft.com/motiba/2015/10/15/page-file-the-definitive-guide/
https://www.howtogeek.com/196238/how-big-should-your-page-file-or-swap-partition-be/
https://www.howtogeek.com/196672/windows-memory-dumps-what-exactly-are-they-for/

Edited by Mreve
Link to comment

Salut @Mreve !

Le 18/05/2017 à 19:39, Mreve a dit :

Ce qui est un peu flou c'est qu'on peut comprendre, d'après ce que tu dis, que le fichier d'échange n'est utile que pour une image mémoire complète

Déjà, ce que tu dis la doc de Microsoft concernant la taille du fichier d'échange et l'image mémoire complète :

A mon avis, si Microsoft exige qu'il faut un fichier d'échange d'au moins la quantité de la RAM + 1 Mo pour l'image mémoire complète, c'est pour s'assurer que la partition système a bel et bien assez d'espace pour stocker les données contenues dans la RAM.

Imaginons que notre système possèdent 16 Go de RAM. Si une erreur fatale se produit, 16 Go sont donc nécessaire sur la partition système pour écrire le fichier d'image mémoire complète (ou moins, cela dépend de la quantité de mémoire physique utilisée au moment du crash, mais disons qu'on utilisait la totalité des 16 Go de RAM). Or, si ma partition système ne possède plus que 4 Go d'espace libre, c'est la merde ! Impossible d'écrire le fichier d'image, donc pas de debug possible... Du coup, si on a pris soin de créer un fichier d'échange à 16,001 Go, Windows va pouvoir utiliser l'espace qui normalement est utilisé par le fichier d'échange pour créer le fichier d'image mémoire complète avec les 16 Go de données de la RAM !

C'est comme ça que je vois les choses, dis-moi si ça te parle !

Après du coup, il n'y a plus de fichier d'échange comme l'espace disque est saturé...

Link to comment
Guest
This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...