質問: qemuを使用してvmを起動すると黒い画面が表示されるのはなぜですか? 次を使用して仮想マシンを起動しようとすると:qemu-system-x86_64 -m 1024 -cdrom /host/iso/ubuntu-13.10-desktop-amd64.iso -name mac -hda ~/ubuntu インストールの開始直後(言語を選択する前)に黒い画面が表示されます。 「その他のオプション」でnomodesetを設定しようとしましたが、問題は解決しませんでした。ただし、同じisoを使用して、virtual machine managerを使用してvmを起動できます。私のプロジェクトの1つでqemu-system-x86_64を使用してvmを起動する必要があります。これを解決する方法を教えてください。
回答: デフォルトでは、qemu-system-x86_64は仮想化ではなくエミュレーションを行います。エミュレーションは低速でcpuを集中的に使用します。topを実行すると、cpuを100%近くで表示します。システムでqemu-system-x86_64を使用してxubuntu 14.04を起動したところ、デスクトップから起動するのに10分かかりました。 ubuntuは通常、ブート情報を非表示にします。これが黒い画面(またはbiosの解像度の変更に起因する他のグラフィカルアーティファクト)が表示される理由です。 splash quietを削除し、debugをカーネルパラメーターに追加すると、この間に何が行われているかがわかります。おそらくやりたいことは、qemu-system-x86_64 -enable-kvmを実行して、ハードウェア仮想化のサポートを有効にすることです。qemu-system-x86_64 -enable-kvm -m 1024 -cdrom /host/iso/ubuntu-13.10-desktop-amd64.iso -name mac -hda ~/ubuntu man qemu-system-x86_64から:-enable-kvm enable kvm full virtualization support. this option is only available if kvm support is enabled when compiling. (パッケージqemu-kvmのプログラムkvmを推奨している人を見るかもしれません。kvmはexec qemu-system-x86_64 -enable-kvm "$@"を実行する単なるラッパースクリプトです)kvmはシミュレーションではなくハードウェア仮想化を使用するため、はるかに高速です。ほとんどの最新のpcシステムに搭載されているハードウェア仮想化拡張機能(intelの場合はvt-x、amdの場合はamd-v)をサポートするcpuが必要です。仮想化では、cpuは実際にゲストosから生の実行可能バイナリコードを実行しています。仮想化は高速ですが、ホストosとゲストosはバイナリ互換でなければならないという制限があります。エミュレーションにより、ゲストosのバイナリコードはホストcpuで実行されるように書き換えられます。遅いですが、異なるcpuアーキテクチャ用にコンパイルされたゲストosを実行できるという利点があります(例: debian armelのqemuイメージ debian armを実行する方法を説明しますpc)。仮想化のもう1つの一般的なオプションは、 virtualbox です。