Déplacer le fichier d'échange vers la RAM est une notion ridicule. Désactivez-le et utilisez davantage de RAM. :)
No matter how much RAM you have, you want the system to be able to use it efficiently. Having no paging file at all forces the operating system to use RAM inefficiently for two reasons. First, it can't make pages discardable, even if they haven't been either accessed or modified in a very long time, which forces the disk cache to be smaller. Second, it has to reserve physical RAM to back allocations that are very unlikely to ever require it (for example, a private, modifiable file mapping), leading to a case where you can have plenty of free physical RAM and yet allocations are refused to avoid overcommitting.
Consider, for example, if a program makes a writable, private memory mapping of a 4GB file. The OS has to reserve 4GB of RAM for this mapping, because the program could conceivably modify every byte and there's no place but RAM to store it. So immediately, 4GB of RAM is basically wasted (it can be used to cache clean disk pages, but that's about it).
La gestion de la mémoire est gérée par la CPU et l'activation ou la désactivation du fichier d'échange n'a aucune incidence sur le traitement des pages. C'est transparent pour Windows.
La priorité des pages ne change pas, les pages seront ignorées de la même manière. Les fichiers de page sont utilisés par la CPU comme stockage secondaire, pas comme système d'exploitation. Ce n'est rien de plus que le cache de niveau 2 lorsque le niveau 1 (RAM) est épuisé.
Un exemple rapide et très sale: ma machine a 16 Go de RAM et aucun fichier d'échange. Il y a 5 minutes, avec 13 Go en veille et seulement 2 Go disponibles, j'ai chargé Fallout 4. Les pages de faible priorité ont été ignorées au démarrage de Fallout.
En passant, le blog 2008 de Technet sur le dépassement des limites de la mémoire Windows est très trompeur - je dirais même au point d'être trompé.
https://i.stack.imgur.com/wXkmi.png
Je ne sais pas trop si même Mark l'a écrit, mais j'espère que non, cela changerait ma perspective de lui .....
Fwiw il y a des trous béants dans l'article que je suis stupéfait que personne n'a choisi de considérer combien de fois ce blog a été référé
- Le fichier d'échange et son emplacement sont gérés par Windows. Le recouvrement de l'accès mémoire aux emplacements qui ont été paginés sur le disque serait capturé par le processeur, mais transmis au système d'exploitation pour récupérer la page à partir du disque et la charger.
Quoi qu'il en soit, voici une description pas si vague:
Windows ne peut pas atteindre des adresses plus élevées que le processeur - ce n'est pas possible.
Peu importe ce dont le système d'exploitation est capable, il reste limité par le matériel sur lequel il s'exécute .. car le système d'exploitation est en réalité le processeur lui-même (registres internes).
OK, le fichier d'échange est une zone du disque dur utilisée par la CPU pour l'espace d'adressage physique étendu quand elle ne peut utiliser physiquement ou architecturalement plus de RAM.
Sur une architecture 32 bits x86 segmentée, par exemple, il y a deux segments de 2 Go de RAM.
Un est alloué au noyau. L'autre 2 Go est pour le mode utilisateur. C’est toute la RAM que le processeur peut utiliser avec 32 broches DRAM, mais un processus 32 bits disposant de 4 Go disponible, que faire. Heureusement, le processeur peut utiliser le stockage secondaire AKA sur le disque dur pour stocker les 2 Go supplémentaires de pages. Parce qu'il possède des registres internes
Les emplacements physiques où les pages virtuelles référencées par le processus ne doivent pas être stockés dans la RAM. Mais ils doivent être stockés quelque part par la CPU.
Le processeur ne peut pas donner 4 Go de RAM à l'application, mais il peut lui donner 4 Go d'adresse en utilisant le disque dur comme cache secondaire (c'est-à-dire tout ce que le disque dur est réellement).
Les pages sont déplacées dans et hors de la RAM via son mécanisme de pagination interne, mais ce n'est pas la même chose qu'un fichier d'échange. La pagination se produit toujours ....
La ligne de fond n'est vraiment pas si compliquée. Depuis une quinzaine d'années, de nombreux utilisateurs finaux ont eu l'impression qu'un fichier d'échange faisait partie intégrante du système d'exploitation, mais ce n'est pas le cas. Cela n'a jamais été. Cette idée fausse est en partie alimentée par des sociétés comme Intel et Microsoft.
La RAM est un périphérique de stockage rapide, le disque dur est un périphérique de stockage plus lent. Par conséquent, la RAM est essentiellement un cache de niveau 1 et le disque dur est un niveau 2 (sans tenir compte du cache du processeur pour cette analogie). Les deux sont accessibles par la CPU.
Si la CPU ne dispose pas de suffisamment de RAM pour stocker les pages dont elle a besoin, le disque dur peut être utilisé en tant que débordement. S'il y a beaucoup de RAM, le PF est redondant.
Jusqu'au Core 2, les processeurs Intel disposaient d'un bus DRAM à 32 broches et de 32 registres, ce qui signifie que le processeur avait accès à 4 Go de RAM et à 4 Go d'espace disque dur (fichier d'échange). Il s’agit d’une limitation matérielle architecturale et non d’une limitation Windows.
Le total disponible pour les processus était de 3,5 Go, car une table de pages occupe 512 Mo. C'est pourquoi 3,5 Go apparaissent dans Windows avec les processeurs Intel (jusqu'au Core 2). Ajouter un GPU et encore moins est disponible.
Xeon pouvait accéder à un total de 32 Go de RAM et 64 Go d’espace physique avec disque dur inclus (nouveau fichier d'échange). ( Ceci ^ couvre PAE, plus à venir avec des liens ajoutés ).
http://www.windowsdevcenter.com/pub/a/windows/2004/04/27/pagefile.html
Troisième source de capture d'écran:
Interface binaire d'application à System V Supplément de processeur d'architecture AMD64 Version préliminaire 0.99.7
J'ai l'intention de continuer à améliorer cette réponse et à ajouter du matériel source et des informations pertinentes. Je voudrais atteindre un équilibre entre pas assez d'informations et trop d'informations techniques. Les suggestions sont les bienvenues. S'il vous plaît, ne votez pas parce que le texte n'est peut-être pas si bien écrit.