KVM-libvirt(virt-manager)を介してWindows 10に仮想マシンを設定しましたが、ホスト側で奇妙な動作が発生します。私は24GBのRAM(12GBがRAMに割り当てられ、12個が仮想マシンに割り当てられている)を持つ64ビットArchホストを実行しています。
VMの電源を入れてしばらく(長すぎず、1時間ほど)放置すると、ホスト全体の残りのRAMがバッファリング/キャッシュされます。たとえば、次のようにこれを取得しますfree -m
。
total used free shared buff/cache available
Mem: 24064 13887 253 110 9923 9957
Swap: 4095 1313 2782
VMを起動する前にいくつかのアプリケーションを実行しましたが、RAMは2 GBを超えず、それ以降は新しいものを開いておらず、一般的なWebナビゲーションだけでした(実際にこの質問を書きました)。
今、私は空きRAMがRAMを無駄にするなど、LinuxキャッシュRAMについてたくさん読んでいますが、これはホスト上で実行されているほとんどすべてを置き換えます。すべてがそうなるので、これは私にとって大きな問題です。だから遅い。
私が知っている限り、RAMキャッシュはメモリスワッピングを引き起こすべきではありません。私はLinuxがそれより優れていることを知っています。私効率的なメモリ使用量に関しては、たとえばスワップやキャッシュを消去することはできませんが、すべてを交換してシステムの速度を大幅に遅くすることは、私にとって賢明または効率的に聞こえません。
何が起こりましたか? Linuxキャッシュ仮想マシンのディスクアクセスが常に私のRAMの残りのスペースをすべて使用するのはなぜですか? VMはディスクイメージにインストールされていますが、そのために別々の物理ディスクを使用する必要がありますか?