Hlavní navigace

Microsoft Linux Server

Adam Šindelář

V listopadu 2OO4 české zastupitelství Microsoftu sezvalo zástupce několika významných českých IT subjektů, aby jim představilo v tajnosti vyvinutý projekt Microsoft Linux Server. Práce na linuxovém kernelu a portování klíčových knihoven a aplikací údajně zabrala přes dva roky...

O co vlastně jde?

Microsoft se nestal největší softwarovou společností na této planetě ignorováním situace. Firma si je velmi dobře vědoma nedostatků svého stávajícího vlajkového OS a před cca třemi roky pocítila potřebu záložního operačního systému, který by mohla na trh nasadit v případě, že Windows NT selžou. Po úspěchu, který zaznamenala společnost Apple po přechodu na unixové jádro (Darwin), se i Microsoft rozhodl využít již hotový unixový kernel a odvážně sáhl rovnou po tom nejrozšířenějším. Vývojáři MS provedli kompletní revizi zdrojových kódů linuxového jádra (branch 2.4) a přidali do něj podporu vlastních technologií jako win32 API a MFC (Microsoft Foundation Class).

Přesto, že jde zatím o betaverzi, systém je poměrně dost funkční. Podporuje širokou škálu běžných win32 aplikací, a to za cenu velmi malé ztráty výkonu. Některé programy mají dokonce nativní porty, jako například MS Office. Nefungují DOSové aplikace, programy využívající win64 API (těch zatím moc není) a podporováno není ani DirectX. Vrstva zajištující běh těch aplikací, co jsou podporovány, je zahrnuta přímo v jádře, což způsobuje vyšší výkon a nižší stabilitu systému. Ostatně výsledek jedné takové prezentace emulovaného prostředí můžete vidět na jednom z okolních obrázků (ten s modrou obrazovkou).


Pro běh unixových programů je zde, po vzoru Mac OS X, zahrnut i X11 server. V mnou testované beta-verzi je tento bohužel poněkud nestabilní. Umožňuje běh v samostatné relaci, stejně jako zobrazení X11 aplikací bok po boku s ostatními, což ovšem způsobuje časté zatuhnutí serveru. Navíc aplikace běžící pod X11 vypadají přesně takovou mírou odlišně, aby to rušilo uživatele. Stačí se podívat na screenshoty a poznáte, o čem mluvím, už odlišný způsob vykreslování fontů je vyloženě neelegantní. Pikantní je, že samotný program sloužící ke konfiguraci Microsoft X11 serveru je X11 aplikace. Pokud tedy výchozí konfigurace serveru z nějakého důvodu nefunguje, máte celkem smůlu a můžete se pustit do ručního editování konfiguračních souborů. Jak ale říkám, jedná se o betaverzi, navíc tajnou, takže tohle všechno se může ještě změnit.


Za zmínku stojí také fakt, že v systému není přítomen žádný init level, na kterém by neběželo grafické rozhraní. Toto rozhraní se nedá nijak vypnout a terminál lze spustit pouze v aplikaci k tomu určené (MS Bash).


Pozitivní jistě je, že Microsoft základní architekturu systému ponechal prakticky beze změn, takže standardní unixové nástroje a cesty stále fungují tak, jak mají. Podařilo se mi dokonce zkompilovat a spustit většinu Gnome aplikací a GTK toolkit funguje skutečně výborně. Horší je situace s QT knihovnou, která občas bez zjevného důvodu způsobuje segmentation fault. Podle expertů Microsoftu se jedná o odlišnou implementaci některých částí protokolu X serveru, kterou QT nepřekousne, čemuž nezbývá než věřit. Zajímavá je také situace ohledně systémových ovladačů. Ty z Windows NT pochopitelně nefungují. V MS Linux Serveru běží ovšem těsně nad kernelem speciální wrapper, který se stará o komunikaci přídavných ovladačů s jádrem. Pod tímto wrapperem běží 90 % ovladačů, které MS k systému dodává. Toto řešení jistě není ideální, ale funguje překvapivě rychle a při chybě v ovladači nezpůsobí kernel panic, ale prostě restart celého wrapperu.


Za souborový systém si MS zvolil upravenou verzi NTFS, rozšířenou o oprávnění a některé pokročilé atributy. Oproti ext3 NTFS obsahuje navíc atributy označující skryté a systémové soubory. Soubory, jejichž název začíná tečkou, jsou automaticky také považovány za skryté, ovšem ve výpisu adresáře v terminálu se zobrazí, zatímco soubory označené patřičným atributem ne. Situace je tedy poněkud komplikovaná. Kromě NTFS umí MS Linux Server pracovat také s ext2, ext3, FAT32 a HFS.


Co říci závěrem? Snad jen, že se jedná o odvážný krok rozumným směrem pro Microsoft, a také že upřímně doufám, že si vývojáři kernelu nenechají od MS zasahovat do vanilla jádra. Na druhou stranu nám tento krok v nejbližší době přinese uvolnění zdrojových kodů části MS technologií, což snad pomůže projektům jako WINE a Cedega. Osobně si netroufám předpovědět, co tento krok bude znamenat v důsledku, ale rozhodně to o něčem svědčí. Zatím to vypadá, že systém bude široké veřejnosti představen v první polovině nového roku. V nejbližší době tedy očekávejte podobné články i v dalších médiích zabývajících se děním ve světě informačních technologií.

Našli jste v článku chybu?