VirtualBox 6.0は、グラフィックスコントローラーと呼ばれる新しい設定を提供します。 4つのオプションから選択できます。
ユーザーマニュアルで私はこの情報を見つけました:
グラフィックコントローラ:ゲストVMが使用するグラフィックアダプタの種類を指定します。ゲストにゲスト追加機能をインストールする必要があることに注意してくださいVM VBoxSVGAまたはVMSVGAグラフィックスコントローラーを指定するには、次のオプションを使用できます。
– VBoxSVGA:LinuxまたはWindows 7以降を使用する新しいVMのデフォルトのグラフィックスコントローラー。このグラフィックスコントローラーは、従来のVBoxVGAオプションと比較して、パフォーマンスと3Dサポートを向上させます。
– VBoxVGA:このグラフィックスコントローラーをレガシーゲストOSに使用します。これは、Windows 7より前のWindowsバージョンのデフォルトのグラフィックスコントローラーです。
– VMSVGA:このグラフィックコントローラを使用して、VMware SVGAグラフィックデバイスをエミュレートします。
–なし:グラフィックアダプタータイプをエミュレートしません。
しかし、それでもそれらのどれがなぜ私が好むべきかについては説明していません。
いつ[なし]を選択する必要がありますか?
VMSVGAはVBoxSVGAより優れていますか?
VBoxVGAの何が問題になっていますか?
Elinuxモードとレガシーモードでvirtualbox 6.0.4を使用してarchlinux-2019.02.01-x86_64.isoの起動をテストしました。
┌──────────┬─────────────────────────────────┬─────────────┐
│ Adapter │ EFI mode │ Legacy mode │
├──────────┼─────────────────────────────────┼─────────────┤
│ VBoxVGA │ ok │ ok │
│ VMSVGA │ ok in systemd-boot menu, │ ok │
│ │ then black screen for some time │ │
│ │ when booting, then becomes ok │ │
│ VBoxSVGA │ black screen │ ok │
└──────────┴─────────────────────────────────┴─────────────┘
また、VMSVGAとVBoxSVGAを渡すと、video = XRESxYRESパラメータが無視されることに気づきました。
+----------+----------------+--------------+
| Adapter | EFI mode | Legacy mode |
+----------+----------------+--------------+
| VBoxVGA | works | works |
| VMSVGA | doesn't work | doesn't work |
| VBoxSVGA | could not test | doesn't work |
+----------+----------------+--------------+
ただし、fbsetを使用して起動した後でも、無視された解像度の一部を設定することは可能です。
私がソースコードで見つけたものに基づいて:
これは、以前のバージョン(<6.0.0)と同じように、VirtualBox固有のグラフィックアダプターをエミュレートします。
このオプションは、継続性を提供するためだけに存在する可能性があります。6.0にアップグレードすると、すべての古いVMでこのモードが自動的に選択されるため、予期しない動作の変化はありません。 以前はのアクセラレーションを失うことはありません。
これは、「VMware SVGA 3D」アクセラレーション方式でVMware Workstationグラフィックアダプターをエミュレートします。
これにより、VMSVGA(新しい3Dアクセラレーション機能を含む)のように機能するハイブリッドデバイスが提供されますが、VBoxVGAと同じ古いPCI VID:PIDが報告されます。
これは、明らかに、まったくエミュレートされたグラフィックではありません。 PCIパススルー経由で実際のGPUを提供する場合、またはシステムがneed GPUを絶対に提供しない場合にのみ使用してください。
ソース
しかし、彼らはdoを好むはずのタイミングを明確に伝えます。
– VBoxSVGA:LinuxまたはWindows 7以降を使用する新しいVMのデフォルトのグラフィックスコントローラー。このグラフィックスコントローラーは、従来のVBoxVGAオプションと比較して、パフォーマンスと3Dサポートを向上させます。
– VBoxVGA:このグラフィックスコントローラーをレガシーゲストOSに使用します。これは、Windows 7より前のWindowsバージョンのデフォルトのグラフィックスコントローラーです。
– VMSVGA:このグラフィックコントローラを使用して、VMware SVGAグラフィックデバイスをエミュレートします。
–なし:グラフィックアダプタータイプをエミュレートしません。
パフォーマンスが1つの違いです。 glxgears
でテストすると、次のようになります。
ゲストの追加は、VBoxVGAの非推奨警告が最初に生成される前に、Debianリポジトリから既に更新されているため、最初に更新する必要なしに切り替えることができます。 dpkg -l | grep virtualbox
を使用してバージョンを確認してください。
ゲストの追加はバージョン6.0.4
、mesa-utils(glxgearsを含む)8.4.0-1+b1
、ベースOSはCinnamonを搭載したDebian 10(Buster)です。
VMはPAE/NXが有効で、3Dアクセラレーションはあるが2Dアクセラレーションはなく、2つのCPUが割り当てられています(ホストにはそれぞれ2つのスレッドを持つ2つのコアがあります)、PVのデフォルト、VT-x/AMD-Vが有効、ネストされたページング。
wayland
のみを使用してVBoxSVGA
コンポジターでゲストの解像度を自動設定できました。 virtualbox-guest-additions
できませんでしたauto-resize guest display
with wayland
with VMSVGA
。
VBoxVGAは、Windowsゲストウィンドウのサイズ調整を記憶し、復元します。 VBoxSVGAはサイズ調整を記憶しません。
Windowsゲストを1240x712のディスプレイサイズで開く必要があります。 VBoxSVGAを使用する場合、ゲストは常に1024x768で開き、サイズを変更する必要があります。
VBoxVGAを使用すると、ディスプレイが保存/復元され、ホストはそれ以上調整せずに1240x712で開きます。
実際、「ウィンドウサイズの調整」設定を使用して表示を変更した場合、Windowsゲストをシャットダウンしてスナップショットを作成しても、新しい設定は保持されます。 VBoxSVGAは、実行中のサイズ変更を無視します。