La limite de 4 Go de RAM sur les systèmes 32 bits affecte-t-elle également l'espace de swap?


11

Il est bien connu que les systèmes 32 bits ne peuvent gérer que 4 Go comme quantité maximale de RAM.

Sous Linux, cette limite s'applique-t-elle également aux partitions d'échange? Si mon RAM + swap dépasse 4 Go, sera-t-il pleinement utilisé?

Si la réponse est "non, cela ne s'applique pas au swap", pourquoi?


3
Cette déclaration de limitation de la mémoire physique n'est pas vraie sur toutes les plates-formes. appareils) de plus de 4 gigaoctets. " en.wikipedia.org/wiki/Physical_Address_Extension
f1assistance

1
@packets Ne le confondez plus. Il a vraiment besoin d'aller d'abord sur les concepts fondamentaux comme l'adressage virtuel et la pagination.
David Marshall

1
Aucun problème, je n'ai pas peur d'apprendre.
Sekhemty

Réponses:


12

Non, Imagine RAM est comme votre bureau, et l'espace d'échange / mémoire virtuelle est comme un classeur. Vous pouvez mettre beaucoup d'informations dans un classeur, mais c'est difficile d'accès. Tous les papiers que vous souhaitez utiliser, vous devez les retirer et les mettre sur le bureau; le problème est que le bureau ne peut contenir que tant de papiers à la fois.

Les machines 32 bits ne peuvent avoir qu'un bureau de 4 Go (2 ^ 32, soit environ 4 milliards d'octets), mais elles peuvent toujours avoir des classeurs presque illimités. Ils n'ont qu'à "échanger" les papiers lorsque le bureau est plein et ils ont besoin de regarder une autre page qui se trouve dans un classeur.


La raison pour laquelle il ne s'applique pas au swap est que l'accès au contenu de la RAM ou l'exécution de code à partir de celle-ci est limité à la taille des nombres avec lesquels il peut travailler. Pensez-y comme si vous ne pouviez avoir que 4 milliards de mots sur le bureau, car c'est aussi élevé que vous pouvez compter, et vous devez travailler directement avec des mots. «Le mot 3 547 est mal orthographié. Remplacez le mot 3 452 780 par« Bonjour ». Supprimez le mot 6.»

Maintenant, chaque page peut contenir 4 000 mots. Le hic, c'est que lorsque vous faites référence à un espace de swap, vous ne le faites pas par mot, seulement par page. Vous ne pouvez donc compter que jusqu'à 4 milliards, mais vous pouvez compter jusqu'à 4 milliards de pages. 4 milliards de pages contiennent en réalité 16 billions de mots - beaucoup, beaucoup plus que ce que vous pouvez compter.

Les machines 64 bits peuvent simplement compter plus, donc elles peuvent mettre toutes les pages sur le bureau en même temps, si elles ont un bureau assez grand. Même si vous placez un très grand bureau dans une machine 32 bits, vous ne pouvez toujours compter que jusqu'à 4 milliards, vous n'avez donc aucun moyen de référencer tous les mots supplémentaires sur le bureau.


Alors, qu'est-ce que vous essayez de me dire, c'est que l'espace de swap agit comme un index pour la mémoire RAM? Et, par conséquent, un seul Go de swap représente beaucoup plus de mémoire qu'un seul Go de RAM? Quoi qu'il en soit, je ne comprends toujours pas pourquoi le système ne peut pas gérer plus de 4 Go de RAM, mais peut le faire avec swap. Pourquoi n'utilisons-nous pas tous swap au lieu de RAM alors?
Sekhemty

1
L'espace de swap est comme la mémoire "déchargée", et il est référencé dans des blocs beaucoup plus grands. 1 Go de RAM correspond à 1 Go de swap, mais la RAM est adressée par octet et le swap est adressé par bloc. Un autre exemple pourrait être de penser à emballer des arachides. Combien d'arachides d'emballage pouvez-vous tenir entre vos mains? Peut-être que 100 avant d'essayer d'en ramasser plus font en ressortir certains entre vos doigts? Maintenant, combien d'arachides d'emballage pouvez-vous contenir si nous les mettons dans des boîtes? Milliers? L'échange est un peu comme les boîtes. Vous pouvez gérer les données en gros morceaux, mais vous ne pouvez pas accéder aux données elles-mêmes.
Dark Android

1
@Sekhemty: Pour votre deuxième question sur la raison pour laquelle nous utilisons le swap tout le temps - Le fichier swap existe sur votre disque dur et la vitesse à laquelle l'ordinateur peut accéder aux données sur le disque dur dépend de la vitesse d'accès du disque (et puis certains). Mais même les disques durs les plus rapides sont beaucoup plus lents que la RAM physique. C'est donc une question de vitesse. L'architecture x86 actuelle ne le permet pas de toute façon (pas de RAM; seulement swap). Le fichier Swap est un concept de système d'exploitation dont le système n'a aucune connaissance.
bobbyalex

10

Vous confondez la mémoire physique et virtuelle.

La RAM est une mémoire physique. L'espace de swap peut contenir de nombreux espaces d'adressage virtuels de 4 Go.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.