本頁使用了標題或全文手工轉換

Xen

維基百科,自由的百科全書
跳至導覽 跳至搜尋
Xen
Xen hypervisor logo black.svg
Xen screenshot.png
正運行NetBSD與三個Linux套件的Xen
原作者凱伊爾·弗拉瑟
史蒂芬·漢特
伊安·普拉特英語Ian Pratt (computer scientist)
劍橋大學電腦實驗室英語University of Cambridge Computer Laboratory
開發者Xen Project
初始版本2003年 (2003)
穩定版本
4.15[1]
(2021年4月8日,​1天前​(2021-04-08
原始碼庫 編輯維基數據鏈結
作業系統LinuxBSDOpenSolaris
類型Hypervisor
授權條款GNU GPL v2
網站www.xenproject.org

Xen開放原始碼虛擬機器監視器,由XenProject開發,能夠在單個電腦執行多達128個有完全功能的作業系統

在舊(無虛擬硬體)的處理器上執行Xen,作業系統必須進行顯式地修改(「移植」)以在Xen上執行(但是提供對使用者應用的相容性)。這使得Xen無需特殊硬體支援,就能達到高效能的虛擬化。

2013年4月,Linux基金會宣布Xen成為Linux基金會合作專案。[2]

使用[編輯]

IBM經常在其主機和伺服器上使用虛擬機器來儘可能發揮其效能,並類似chroot監禁那樣將程式置於隔離的虛擬OS中以增強安全性。除此之外,它還能使不同和不相容的OS執行在同一台電腦上。Xen支援在執行時進行遷移,保證正常執行並且避免宕機。

Xen的半虛擬化[編輯]

Xen通過一種叫做半虛擬化英語Paravirtualization的技術獲得高效能的表現(較少的效能損失,典型的情況下大約損失2%,在最糟的情況下會有8%的效能耗損;與其它使用完全的虛擬化卻造成最高到20%損耗的其他解決方案形成一個明顯的對比),甚至在某些與傳統虛擬技術不友好的架構上(如x86),Xen也有極佳的表現。但是這要求虛擬機器使用經過修改的客戶端作業系統。與那些傳統透過軟體類比實現硬體的虛擬機器不同,在3.0版本及在Intel VT-X支援前的Xen需要讓客戶端作業系統(guest operating systems)與Xen API進行連接。到目前為止,這樣連結已經可以運用在NetBSDGNU/LinuxFreeBSD貝爾實驗室Plan 9系統上。在Brainshare 2005會議上,Novell展示了NetWare與Xen的連通。與Windows XP連通的技術曾在Xen開發初期進行,但微軟的協定未能允許它釋出。昇陽電腦公司也正積極研究Solaris與Xen的連結,使其能在Xen平台上運作。

Xen的完全虛擬化[編輯]

Intel為Xen貢獻了修補程式以支援其VT-X架構擴充,而AMD則進行修改以支援其AMD-V架構擴充。如果系統處理器支援虛擬硬體擴充(Intel和AMD對本地支援虛擬化的擴充),這項技術將允許未經修改的作業系統執行在Xen虛擬機器中。事實上,這意味著效能的提升,使用者也可以在不違背任何修改限制協定的情況下對Windows進行虛擬。也就是說,Xen的完全虛擬化模式允許Xen虛擬機器執行未經修改的Windows等作業系統。但是在x86平台上,只有支援x86虛擬化的電腦才支援Xen的全虛擬化模式。Xen的完全虛擬化依賴於QEMU

虛擬機器的遷移[編輯]

Xen虛擬機器可以在不停止的情況下在多個物理主機之間即時遷移(live migration)。在操作過程中,虛擬機器在沒有停止工作的情況下記憶體被反覆的複製到目標機器。虛擬機器在最終目的地開始執行之前,會有一次60-300毫秒的非常短暫的暫停以執行最終的同步化,給人無縫遷移的感覺。類似的技術被用來暫停一台正在執行的虛擬機器到磁碟,並切換到另外一台,第一台虛擬機器在以後可以恢復。

系統平台支援[編輯]

Xen目前可以執行在x86x86-64系統上。

類Unix系統的Xen[編輯]

參見[編輯]

參照[編輯]

外部連結[編輯]