Cooperative Linux

Jestli běží linux na každé architektuře, proč by mu měl stát v cestě jiný operační systém?

22.3.2004 17:00 | Ondřej Čečák | přečteno 6575×

Tato věta vás uvítá na domovské stránce projektu CoLinux a trefně vystihuje, o co tady běží.

CoLinux je upravené linuxové jádro (v současné době verze 2.4.24) které běží nativně na Windows jako jejich normální proces. Cooperative Linux o sobě také tvrdí, že je první free open source cestou, jak rychle spustit linux na windows. Použitelnost CoLinuxu dokazují screenshoty, autorům projektu se dokonce povedlo spustit v CoLinuxu Japonskou modifikaci Knoppixu.

můj moo internet
procesy tap interface

Upozornění

Program se stále vyvíjí a ještě je třeba dodělat poměrně dost věcí (např. grafickou podporu), ale i v poslední verze je docela použitelná (testoval jsem verzi 0.5.4 z konce února 2004).

O co jde

Myslím, že z úvodu je docela jasné, jak vše funguje - podobně jako třeba UML se spouští proces (tentokrát na windows), který má přístup k hostitelskému hardware, získává informace o hostitelových přerušeních a podobně. Proto se také jmenuje Cooperative Linux - kooperativně běží bez nějakého emulování přímo na hostitelské platformě. Samotné jádro moc upravené není, jedná se o malé úpravy v kódu architektury i386 (proto také jinde zatím neběží, ale uvažuje se o tom - při psaní CoLinuxu se počítá(lo) s portováním).

Samotný program zatím funguje pouze v prostředí Microsoft Windows 2000 a XP. O Windows 98 se sice také uvažuje, ale kvůli odlišné architektuře systému bude třeba dost zapracovat (pokud to nakonec nebude pouze pro Win2k/XP).

Vlastnosti

Po spuštění programu přibude systému pár nových procesů (vlastní colinux-deamon a deamon pro síťování a konzole), a poté se spustí i linuxové jádro a po něm další programy.

Je opravdu skvělé, že autoři mysleli na přímou podporu síťování. To probíhá přes TAP-Win32 Network Driver a jak je z názvu patrné, jde o ovladač přímo do windows. Po instalaci vám tak vznikne nové síťové rozhraní, přes které se dá komunikovat. Zatím je možné použít buď NAT (díky dynamickému překladu adres poměrně bezpečný přístup k síti bez nutnosti mít víc IP adres) nebo přímé spojení (přes windows si také můžete vytvořit bridge).

Jak to funguje

Asi nejzajímavější část - jak to funguje v praxi. Nejprve si stáhnete samotný CoLinux (použil jsem binárku, ale k dispozici jsou i zdrojáky), nainstalujete TAP Network Driver (ve windows jako nový hardware) a stáhnete si základní image k vyzkoušení - jedná se o base systém Debian GNU/Linux 3.0r0 o velikosti asi 17 MB, ale protože budete nejspíš také něco doinstalovávat, tak image po rozbalení zabere 1 GB (image bude po celou dobu jako jeden soubor v rámci filesystému, který používají windows a uvnitř se v tomto případě skrývá filesystém ext3). Malá nevýhoda je, že soubor bude zabírat tolik, kolik mu vyhradíte a ne tolik, kolik zabírají data uvnitř, ale je popsaná také možnost případného zvětšovaní image.

A co teď? Nejprve CoLinux patřičně nakonfigurujete (konfigurační volby sice ještě moc popsané nejsou, ale stačí upravit cestu - formát konfiguračního souboru je navíc v XML) a spustíte colinux-deamon.exe. Ten se postará o spuštění síťování, konzole programu a také o spuštění vlastního jádra. Pokud vše funguje jak má, přímo v konzoli programu nabootuje linux a v případě použití image Debianu vás uvítá přihlašovací dialog (účet root je bez hesla). Na vás je zkonfigurovat síťové připojení a nainstalovat si vše potřebné.

Pokud máte nastavený dualboot (a druhý OS je linux), můžete dokonce po malých úpravách spustit druhý systém přímo z jeho diskového oddílu.

Grafika

Problém v CoLinuxu je zatím v tom, že nemá ovladač, přes který by přímo fungovala grafika. Jediné co můžete použít, je přes virtuální síť spustit na windows Cygwin XServer a spojit se s virtuálním linuxem. Právě přímou nedostupnost grafického prostředí vidím jako největší nevýhodu pro nováčky - většina by radši zkusila grafické prostředí. Nicméně doufám, že se povede implementovat do CoLinuxu drivery pro XServer tak, aby bylo přímé spuštění možné, protože pak by se Cooperative Linux stal snad nejrychlejší a nejpohodlnější možností vyzkoušení linuxu na vlastním stroji.

Výkon

Překvapivě velmi dobrý je výkon, programy spuštěné ve virtuální linuxu běží téměř stejně rychle, jako by byly spuštěny přímo. Právě výkon je podle mě jedna z hlavních výhod CoLinuxu.

Stabilita a funkčnost

Aplikace se mi zdála poměrně stabilní, po dobu testování mi jenom jednou spadlo síťové zařízení. Občas se také stalo, že se text konzole nemazal ale přepisoval přes starý. Jinak fungovalo vše podle očekávání a docela rychle.

Shrnutí, závěr

Program se stále vyvíjí a také je na čem pracovat, nicméně už teď funguje dobře. CoLinux se dá podle mého názoru použít především na testovaní linuxu pro nováčky (i když zatím omezeně) a pak nativní spuštění aplikací, které na windows neběží (právě díky síťování všemožné servery apod.). Sice někdo tvrdí, že není dobré stavět na domečku z karet, ale to už nechám na vás ... Mě se Cooperative Linux líbí právě pro rychlost a jednoduchost instalace.

Online verze článku: http://www.linuxsoft.cz/article.php?id_article=81