Cooperative Linux
此條目過於依賴第一手來源。 (2009年7月1日) |
Cooperative Linux 簡稱 coLinux,這個軟體可以讓Windows 核心與Linux核心同時執行在一台機器上。[3] coLinux 指協同運作式虛擬機器(CVM)。與傳統的虛擬機器相反, 協同運作式虛擬機器共享宿主機器已有的資源。傳統的虛擬機器技術,宿主機資源需先被虛擬化,然後再給虛擬系統使用。不同於傳統虛擬技術,coLinux的客體機對宿主機資源具有完全的控制權。在傳統的虛擬技術里,客體機對實體機的訪問一直處於某種未授權狀態。
開發者 | community |
---|---|
目前版本 | 0.7.9 [1](2011年4月9日 [1]) |
預覽版本 | -/+ [2] |
作業系統 | Microsoft Windows |
類型 | Platform virtualization |
許可協定 | GNU General Public License |
網站 | www.colinux.org |
概覽
這裡「協同運作」的意思是兩者可以並行的工作。實際上,coLinux是將兩個不同的作業系統核心變成了兩個大協程。每個核心都會有其自己的CPU環境以及主記憶體空間,並且自己決定什麼時候將控制權交給另一核心。 雖然,理論上,兩個核心理論上都能夠完全訪問硬體資源,但是, 讓兩個不同的作業系統核心同時訪問相同硬體,這並不是現代電腦硬體的計目標。因此,需由宿主機的核心來主控真實硬體,而客體機核心通過特別的驅動與宿主機相通訊,並為客體機提供各種重要的裝置的介面。任何一種允許coLinux的便捷驅動執行在CPLO模式(特權級別 ring 0) 並且允許其分配主記憶體的作業系統都可以作為coLinux的宿主機。[4]
歷史
Dan Aloni早期的開發基於一個叫User-mode Linux的類似系統。他於2004年6月25日開始coLinux的正式開發。[5]在2004年7月, 他向Linux Symposium 遞交相關論文[6],原始碼在GNU通用公共許可證下釋出。然後開發者們開始貢獻各種修補程式及添加代碼。
比較
coLinux與x86平台上的完全虛擬化有明顯的不同,一般意義上的虛擬化程式並沒有像宿主機核心類似的特權。與傳統技術不同, coLinux通過執行一個修改過的Linux核心來與宿主機的NT核心協同運作式地共享資源,防止兩者陷入競爭危害。
發行版本
現在,大多數的變更修補程式都是針對i386平台這一分支的,這也是目前coLinux唯一支援的架構。其它的變更主要在虛擬驅動程式上,比如cobd(塊裝置),conet(網路)以及cocon(控制台)。在i386分支上的這些變更代碼大部分與初始化及設定有關。與正式的i386 Linux核心儘量保持一致, 這是coLinux核心設計的一個目標,因此,所有的變更必需儘可能地保持在地化與最小化。coLinux軟體在Windows 2000或Windows XP的機器內安裝執行了一個Linux核心以及一個虛擬網路裝置,並不像VMware一樣使用一個虛擬的機器。Debian,Ubuntu,Fedora及Gentoo這些都是非常受coLinux使用者歡迎的Linux發行版本。由於虛擬硬體不同尋常的結構,在coLinux下安裝一個Linux發行版本似乎有點困難。因此使用者通常使用一個已經安裝好Linux系統的分割區,或者使用官方預先準備的系統鏡像檔案。這些鏡像有多種生成方法。像是從正常的作業系統提取,或是, 想方設法安裝在特殊的硬體上, 又或者,通過包管理器手動的構建安裝套件,也可以是簡單的利用yum,apt這個的工具來升級已有鏡像系統。還有一個簡單的方法也可以得到一個最新的系統鏡像,首先,利用QEMU來安裝所需Linux系統, 然後,通過去掉原鏡像的頭63512位元組塊的資料達成「轉換」鏡像的目的。 這個方法在coLinux的wiki而面有論述。coLinux並不需要訪問本地的顯示裝置,當然,這也使得X Window系統 或者 X.Org Server無法在coLinux下直接執行,但是你還是可以在Windows下裝個Cygwin/X或者Xming一類的工具,使你可使用coLinux的KDE(或GNOME)及其它幾乎任何的Linux的程式。這些的圖形介面的問題在coLinux的洐生版andLinux及TopologiLinux里都得到的解決。andLinux基於Ubuntu, TopologiLinux基於Slackware。
硬體仿真
局限
參見
參考
- ^ 1.0 1.1 存档副本. [2013-06-06]. (原始內容存檔於2018-06-09).
- ^ 存档副本. [2013-06-06]. (原始內容存檔於2006-09-24).
- ^ coLinux main website. [2013-06-06]. (原始內容存檔於2018-05-19).
- ^ http://colinux.org/ (頁面存檔備份,存於網際網路檔案館) coLinux main page
- ^ Dan Aloni announces Cooperative Linux. [2013-06-06]. (原始內容存檔於2012-02-07).
- ^ Dan Aloni paper presented July 2004 at Linux Symposium (PDF). [2013-06-06]. (原始內容 (PDF)存檔於2018-09-30).
- ^ 64 bit development information and resources. [2014-04-07]. (原始內容存檔於2011-08-09).
- ^ 存档副本. [2014-04-07]. (原始內容存檔於2013-09-06).
外部連結
- coLinux Home page
- coLinux Sourceforge page(頁面存檔備份,存於網際網路檔案館)
- coLinux Wiki(頁面存檔備份,存於網際網路檔案館)
- Virtualization with coLinux a developerWorks by M. Tim Jones
- speedLinux(頁面存檔備份,存於網際網路檔案館)
- Portable Ubuntu Remix(頁面存檔備份,存於網際網路檔案館), another Ubuntu-based coLinux distribution