Hyper-V 的用途是什麼

Hyper-V 的用途是什麼

我只是想在 VirtualBox 虛擬機器上安裝 Ubuntu。作為回應,VirtualBox 給了我一個錯誤:

VT-x 未啟用

我用 google 搜尋了一下,這可能是我的 Windows 8.1 上啟用了 Hyper-V 造成的。

我禁用了它,這解決了我的問題。然後我開始閱讀有關 Hyper-V 的內容,結果發現它是 Microsoft 超級神奇的虛擬化工具。

虛擬化工具禁用虛擬化似乎有點奇怪。

  1. Hyper-V 的真正用途是什麼?
  2. 禁用它會產生什麼後果?
  3. 為什麼它不能與 VirtualBox 一起使用?

答案1

虛擬化工具禁用虛擬化似乎有點奇怪。

要理解這一點,您需要了解使用虛擬化時系統發生了什麼情況。

當您沒有啟用虛擬化時,您的系統將如下所示:

[ 硬體 ] -> [ 作業系統 ] -> [ 應用程式 ] -> [ 您 ]

當您使用 Hyper-V 時,其中有一個額外的層:

[ 硬體 ] -> [ 虛擬化管理程式 ] -> [ 可能的多個作業系統之一 ] -> [ 該作業系統下的應用程式 ] -> [ 您 ]

透過啟用 Hyper-V,您將擁有一個虛擬機器管理程序,即使您沒有註意到任何差異。現在,請注意,虛擬機器管理程式位於硬體的正上方與 Hyper-V。 VMWare 伺服器產品也是如此。

因此,啟用 Hyper-V 後,即使您目前只執行 1 個「來賓」作業系統(Hyper-V 之前的作業系統),您也「處於」虛擬機器管理程式中。

x86 硬體不支援「嵌套」虛擬機器管理程式。如果啟用了硬體虛擬化,則設定它的 VMXON 指令將導致「VM 退出」。因此,當虛擬機器管理程式處於活動狀態時,如果該虛擬機器管理程式中的作業系統嘗試設定虛擬化,則虛擬機器管理程式通常只會告訴來賓作業系統不支援虛擬化。

如果虛擬機器管理程式確實希望允許來賓作業系統使用虛擬化功能,則它可以「模擬」硬體虛擬化,但正如您所看到的,Hyper-V 選擇不這樣做(無論如何,這樣做很複雜) 。

現在,如果您以這種方式使用 VMWare Player 或 Virtual PC:

[ 硬體 ] -> [ 作業系統 ] -> [ 執行作業系統的 VM 應用程式 ] -> [ 您 ]

VMWare 播放器能夠保持自身的多個實例(它安裝許多驅動程式),因此您可以毫無問題地運行多個 VMWare 播放器。我不確定您是否嘗試運行 VMWare 播放器和虛擬 PC - 它可能無法工作。

答案2

Hyper-V是 Microsoft 版本的虛擬機器管理程式(如 VirtualBox)。它VT-x代表了 Intel 在 x86 平台上的虛擬化技術。在某些主機板上,可以在 BIOS 設定中啟用此功能。如果不在 BIOS 中啟用此功能,您的虛擬環境將無法透過底層硬體加速。

要回答有關禁用Hyper-V然後允許 VirtualBox 訪問VT-x.看這個論壇http://social.technet.microsoft.com/Forums/windows/en-US/118561b9-7155-46e3-a874-6a38b35c67fd/hyperv-disables-vtx-for-forother-hypervisors??

因為當 Hyper-V 安裝在 Windows 8 Pro 上時,虛擬機器管理程式始終在主機作業系統下運行,並且一次只有一個東西可以控制 VT 硬體以確保穩定性。虛擬機器管理程式會阻止對 VT 硬體的所有其他呼叫。

在此輸入影像描述

以下是 MS Technet 的幾點觀點。就我個人而言,我不會使用 Hyper-V,因為我喜歡 VirtualBox 的配置佈局。如果我想要一個無頭虛擬機,我會將實例放在我的 Proxmox 叢集上。

Hyper-V 是直接在硬體上運行的無頭虛擬化,而 Virtualbox 需要作業系統,並且是在桌面上運行的虛擬化應用程式。

VirtualBox 是您直接使用虛擬機器的工具,特別是當您需要聲音、USB 和廣泛支援的作業系統時。

Hyper-V 旨在託管不需要大量額外桌面硬體(例如 USB)的伺服器。在很多情況下,Hyper-V 應該比 VirtualBox 更快。您可以獲得叢集、NIC 組合、即時遷移等伺服器產品所期望的功能。

答案3

Hyper-V 確實阻止了覆蓋作業系統的 VT-x。但對我有幫助的小事情是在必要時打開和關閉 Hyper-V(不是安裝/卸載,這非常困難),如上所述這裡在以下命令的幫助下

bcdedit /set hypervisorlaunchtype off

bcdedit /set hypervisorlaunchtype auto start

現在,您將能夠在必要時使用 Heper-V 和 VirtualBox(當然不是立即使用,而是透過「單次重新啟動」步驟)。

相關內容