GNU/Linux >> Tutoriels Linux >  >> Linux

Pourquoi la commande free et dmidecode affichent-elles des valeurs différentes pour la RAM ?

Avec un noyau 32 bits, vous ne disposez que de 4 Go d'espace d'adressage . Une partie de cet espace d'adressage doit être utilisée par le matériel (virtuel ou physique) du système, comme les cartes vidéo, les cartes réseau, etc., à leurs propres fins. Cette utilisation est généralement comprise entre 256 Mo et 1 Go, en fonction de l'espace d'adressage dont le matériel particulier a besoin.

Étant donné que cet espace d'adressage est utilisé par le matériel, la RAM correspondante est généralement inaccessible à un système 32 bits.

Vous avez plusieurs options :

  1. L'option préférée consiste à exécuter un système d'exploitation 64 bits. Cela élargit considérablement l'espace d'adressage, il y a donc beaucoup de place pour toute la RAM et le matériel. Il brise également la limite de 2 Go/3 Go 32 bits sur les applications tout en conservant la capacité d'exécuter des programmes 32 bits. En général, tout système doté de 2 Go ou plus de RAM doit exécuter un système d'exploitation 64 bits pour éviter ces problèmes.
  2. Une autre option consiste à exécuter un noyau 32 bits avec PAE activé. Cela affichera la RAM, mais chaque processus sera toujours limité à 2 Go/3 Go d'espace d'adressage, en fonction des particularités de la construction du noyau. Étant donné que les systèmes d'exploitation 64 bits exécuteront parfaitement les applications 32 bits, cela n'a aucun avantage et de nombreux inconvénients (tels que l'absence de chemin de mise à niveau).

La sortie du free La commande ne compte pas la mémoire réservée du noyau et quelques autres petits bits. Vous verrez cet écart même dans un noyau 64 bits et même avec <2 Go de RAM.


La ligne critique de votre carte de RAM physique est celle-ci :

 BIOS-e820: 0000000100000000 - 0000000140000000 (usable)

Cette ligne indique que 1 Go (0x40000000 octets, hexadécimal) de la RAM physique de votre système est mappé par le BIOS au-dessus de la limite de 4 Go, ce qui le rend inaccessible par un système 32 bits sans PAE.


Linux
  1. 8 conseils pour la ligne de commande Linux

  2. Six des meilleurs clients de messagerie gratuits, open source et d'entreprise pour Linux

  3. Pourquoi le caractère joker * est-il si différent entre les commandes Zip et Rm ?

  4. Pourquoi slabtop -o ne renvoie-t-il que les 23 premières lignes lorsque la commande est canalisée ?

  5. Sous Linux, quelle est la différence entre les tampons et le cache signalés par la commande free ?

Utilisation de la commande gratuite Linux

Les 40 commandes de serveur Linux utiles pour les débutants et les professionnels

Qu'est-ce que la commande Grep sous Linux ? Pourquoi est-il utilisé et comment fonctionne-t-il ?

Comment fonctionne la commande ps ?

Pourquoi top affiche-t-il un nombre de cœurs différent de cpuinfo ?

Que fait 'set -e', et pourquoi pourrait-il être considéré comme dangereux ?