Noyau Linux: LOWMEM + HIGHMEM> Mémoire totale?

Les gens, il y a quelque chose que je ne comprends pas:

J'ai un ordinateur portable avec 4 Go de RAM, exécutant un kernel Linux compatible PAE 32 bits. Le système est alimenté par un APU AMD avec des charts embeddeds qui, autant que je sache, prennent sa memory graphique de la memory système.

Maintenant, dans mon dmesg , je vois ceci:

Mémoire: 3574156K / 3638392K disponible

Et il semble raisonnable: Si nous prenons en count que 4 Go sont là et que 512 Mo environ sont probablement pris pour le GPU, alors 3638392K semblent sains. Le calcul ne fonctionne probablement pas complètement, mais assez près pour suggérer que cette hypothèse est juste.

Puis-je prouver que le GPU prend 512 Mo? Probablement: j'ai cette ligne dans dmesg :

 radeon 0000:00:01.0: VRAM: 512M 0x0000000000000000 - 0x000000001FFFFFFF (512M used) 

et en supposant que la VRAM ne doive pas être dédiée à la memory supplémentaire (dont je suis très confiant n'est pas présent dans la machine), le GPU s'est probablement emparé de ces 512 Mo de memory système.

Jusqu'ici, tout va bien, je suppose que je peux suivre. Mais regardez maintenant ces lignes, également de dmesg :

 3700MB HIGHMEM available. 891MB LOWMEM available. 

Wow, cela résume jusqu'à 4591 Mo. Maintenant, en tenant count que 4 Go sont tout ce qui devrait être là sans VRAM supplémentaire ou autre, comment HIGHMEM + LOWMEM peut-il avoir une telle valeur? J'aurais supposé que ces deux valeurs ajoutées set égaleraient la quantité totale de memory dans le système, mais il est tout à fait possible que je suppose quelque chose ici qui n'est pas vrai. Probablement quelque chose qui n'est pas "vraiment" de la memory dans le sens que j'ai en tête, comme certains périphériques mappés memory, est également compté dans LOWMEM et / ou HIGHMEM?

Je n'ai pas vraiment la moindre idée, mais je serais plus qu'heureux que quelqu'un puisse probablement éclairer cela pour moi.

Oh, et pour reference, j'ai une sortie dmesg complète de la machine dont je parle à

http://ftp.tisys.org/pub/misc/teela_dmesg.txt

Merci d'avance à tous! 🙂

Je savais que j'avais lu à propos de cette année abog, mais j'ai dû faire un voyage sur la machine de return pour find ceci: https://web.archive.org/web/20130513093456/http://kerneltrap.org/node/2450

Je ne sais pas si cela répond directement à votre question, mais cela pourrait aider. J'en ai à peine grogné moi-même.