Différence de memory allouée dans les invités xen après l'utilisation du kernel Linux 3+

Quelqu'un peut-il m'expliquer pourquoi il y a une différence de memory chez les invités avec la même configuration?

  • Hyperviseur : xen 4.2 64 bits
  • VM1 : Centos 5.7 avec 2.6.18-274.el5xen

La memory affectée à partir de xen est exactement la même que la memory à l'intérieur de l'invité, 524288k (512m):

free -k total used free shared buffers cached Mem: 524288 445004 79284 0 18040 182652 -/+ buffers/cache: 244312 279976 Swap: 524280 0 524280 

malgré montrant:

 " Memory: 500984k/524288k available (2533k kernel code, 23212k reserved, 1746k data, 196k init) " 

dmesg : http://pastebin.com/FmVRniLJ

Question 1:

Pourquoi la memory free montre-t-elle exactement la memory, alors que dmesg clairement montré 2,5 Mo pour le code du kernel et 23 Mo comme réservé?

  • VM2: Ubuntu 12.04, 3.2.0-48-

Pour les mêmes ressources Ubuntu 12.04 avec pvopskernel affiche 501236k.

 free -k total used free shared buffers cached Mem: 501236 147188 354048 0 12588 87668 -/+ buffers/cache: 46932 454304 Swap: 0 0 0 

dmesg : http://pastebin.com/jgNfcxc5

 Memory: 481820k/524288k available (6553k kernel code, 448k absent, 42020k reserved, 6642k data, 924k init) 

Question 2:

Quelle pourrait être la raison de ce comportement, cela peut-il avoir quelque chose à voir avec le kernel de pvops, ou est-ce à cause de changements dans la memory management de Linux 3.0+?