Cooperative Linux
Cooperative Linuxは、Microsoft Windows上で動作するLinuxカーネルである。Dan Aloniが開発した。略称はcoLinux。Windows 2000・Windows XP・Windows Vista・Windows 7で利用できる。エミュレータや仮想マシンではなく、本物のLinuxカーネルがWindows上で動作することが大きな特徴である。TAP-Win32やWinPcapといったネットワークツールを経由して外部のネットワークへ接続が可能。
開発元 | コミュニティ |
---|---|
最新版 |
0.7.9
/ 2011年4月9日 |
対応OS | Microsoft Windows |
種別 | エミュレータ |
ライセンス | GNU General Public License |
公式サイト | http://colinux.org/ |
Dan AloniはcoLinux以前にUmlwin32と言うものを開発していた。これはLinuxのUML技術をMicrosoft Windowsに実装しようとしたもので、Dan AloniはUmlwin32をより実用的に発展させたものとして、UMLとは違う切り口からcoLinuxの開発を始めた。
動作原理
編集- WindowsアプリケーションとしてLinuxカーネルが動作する
- Windows用ドライバとしてlinux.sysがLinuxカーネルからの/への入出力を行う
- 補助記憶装置は実パーティション又はディスクイメージを利用する
- メインメモリは一般的なアプリケーションと同様、Windowsのユーザー空間の一部を利用する(起動時に設定ファイルの記述により割当量を決定する)
- 現時点ではディスプレイアダプタおよびサウンドアダプタは実装されていない。そのため、GUIを利用するにはX Window SystemやVNCを使ってリモートコンピュータのように接続する。音声はサウンドサーバを利用することで再生できる。
特徴
編集仮想マシンとの比較
編集- 入出力のオーバーヘッドが少なく高速である。
- 通常のBIOSやブートローダを用いないため、起動が高速である。
- NTサービスとしてLinuxを稼動させることができる。
- coLinuxはカーネルバージョンを変更できない。
Cygwinとの比較
編集- coLinux は「本物の」Linuxであるため、Linux用の通常のバイナリが利用できる。すなわち豊富な既存のLinux用ソフトウェアが利用できる。
- Debian GNU/LinuxやUbuntuといった、一般のLinuxディストリビューションを、ほぼそのままcoLinux上で利用できる。
- 入出力のオーバーヘッドで課題の大きいCygwinと比較して高速である。
Windows/Linuxデュアルブート環境との比較
編集- Windows上で動作するソフトウェアとLinux上で動作するソフトウェアを同時に並行して利用できる。
- 同時に複数のcoLinuxを起動できる。