同じ構成のゲストで使用可能なメモリに違いがある理由を誰かが説明できますか?
ハイパーバイザー:xen 4.264ビット
VM1:Centos5.7と2.6.18-274.el5xen、
Xenから割り当てられたメモリは、ゲスト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
見せても
" Memory: 500984k/524288k available (2533k kernel code, 23212k reserved, 1746k data, 196k init) "
dmesg: http://Pastebin.com/FmVRniLJ
質問1:
ここで、freeが正確なメモリを示した理由。dmesgclearはカーネルコードで2.5 MB、予約済みで23MBを示しました。
VM2:redhat6.0と2.6.32
free -k
total used free shared buffers cached
502224 122064 380160 0 7636 32648
同じリソースの場合、pvopskernelを使用したRHEl6.0は502224kを示しています。
質問2:
この動作の理由は何でしょうか?これはpvopsカーネル(xenをサポートするlinux-kernel)と関係がありますか?
Q1:クラッシュカーネル(?)で使用されている可能性があります
Q2:SLES11 SP2 DomU(Linux 3.0カーネル、pvopsなし)でこの動作は見られませんでした。
Dmesgからわかるのは、UbuntuのRAMディスクです。このディスクは後で解放されない可能性がありますか?
dmesg
の出力には、OSの次の「通常の」ブートプロセスではなく、ブートプロセスのXEN部分のみが表示されるため、ここではわかりません。
質問1:
Freeが正確なメモリを示した理由。dmesgclearはカーネルコードで2.5MB、予約済みで23MBを示しました。
あなたの解釈が正しいかわかりません。 free
は合計524288kを示しており、dmesg
も同様です。 dmesg
は、起動時に、カーネルと関連する予約が約25mを使用し、500984kが使用可能であることを示しています。後でfree
を実行すると、他のプログラムが実行されているため、使用可能なメモリが少なくなります。しかし、どちらもVM1で同じ合計を報告しています。
質問2:
この動作の理由は、pvopsカーネル(xenをサポートするlinux-kernel)と関係があるのか、Linux3.0以降のメモリ管理の変更が原因である可能性があります。
私thinkあなたが尋ねているなぜこれらの2つのVMは異なるのですか?「十分な情報がありません」という答えを使用します。 2つのVMが異なる情報を報告する理由はたくさんありますが、XenのDomUであるという事実に必ずしも固有のものではありません(ベアメタルやVMwareなどでも同様の違いがあると思います)。
ro root=/dev/VolGroup00/LogVol00 console=xvc0 graphical utf8
があり、VM2にはroot=UUID=ef8a64ee-140d-46b5-8061-231d81e1c7a0 ro console=hvc0 quiet splash $vt_handoff
がありますあなたが行ったかどうかはわかりませんが、vm memパラメータをチェックし、「xllist」を使用してvmのこのメモリ予約をチェックしようとしなかった場合
http://xenbits.xen.org/docs/4.2-testing/man/xl.cfg.5.html
ありがとう