Linux - Windows čo majú spoločné a čím sa líšia

Linux aj MS Windows sú operačné systémy. Úlohou operačného systému je sprostredkovať spravodlivý prístup k hardware-u pre jednotlivé aplikácie. Z tohoto hľadiska nemusíte zbadať medzi oboma systémami priveľký rozdiel. Oba systémy dokážu fungovať na bežných počítačoch typu PC. Dokážu ovládať prideľovanie pamäte, procesorového času, spravovať súborový systém a podobne.

Podstatný rozdiel je zapríčinený spôsobom vývoja oboch operačných systémov. MS Windows vznikol doplnením jednoužívateľského a pomerne jednoduchého systému MS-DOS o grafické prostredie a neskôr o schopnosť bežať viaceré úlohy a nakoniec o schopnosť spravovať viacerých užívateľov. Tento systém je vyvíjaný jednou firmou. To umožňuje silnú previazanosť jednotlivých komponentov systému.

Linux naopak začal vznikať na obraz operačných systémov typu UNIX. V dôsledku toho je modulárnejší. Jednotlivé moduly sú nezávislejšie. Termín Linux vlastne povodne označoval len samotný operačný systém - takzvané jadro. V realite sa však skôr stretnete s takzvanou distribúciou. Distribúcia je systém, kde k jadru je pribalené aj množstvo aplikácií. Medzi populárne distribúcie patrí RedHat, Debian, Mandrake, Slackware, Knoppix a podobne. Každá distribúcia môže pridať k jadru iné aplikácie a moduly. Nájdete tu teda webový server (napr. Apache), ftp server (napr. proftpd), databázový server (napr. MySQL alebo Postgres), programovacie jazyky (napr. C/C++, Perl, awk, java) a iné. Často tu tiež nájdeme viacero modulov spĺňajúcich rovnaký cieľ. Napríklad máte na výber z rôznych internetových prehliadačov - Mozilla, Netscape, Opera, Konqueror, Nautilus. Máte na výber z viacerých programov na čítanie e-mail-u - mutt, pine, sylpheed, kmail, evolution. Viacero textových procesorov - Abiword, Kword, OpenOffice Writer a tak ďalej a tak ďalej. Mnohé z aplikácií sú vyvíjané nezávisle na operačnom systéme a teda existujú verzie aj pre Windows.

Modulárna je aj stavba grafickej nadstavby Linux-u. Prvou vrstvou je X server. Tá sprostredkováva elementárne grafické operácie. Druhou vrstvou je správca okien - ten sa stará o vykresľovanie rámov okien, ich minimalizovanie a maximalizovanie, presúvanie, poradie okien a podobne. Ďalšou vrstvou je tzv. toolkit - má na starosť vzhľad grafických prvkov: tlačítiek, prepínacích či zaškrtávacích políčok a podobne. Až poslednou vrstvou je samotná aplikácia. Vďaka použitiu správcu okien základné operácie s oknom možno robiť aj keď aplikácia samotná nereaguje na vstup od užívateľa (pretože môže byť zaneprázdnená niečím iným). Voľba toolkitu je na aplikácii. V jednom okamihu môžete mať na obrazovke viacero aplikácií, používajúce rôzne toolkit-y. Medzi najpopulárnejšie prostredie patrí KDE (toolkit Qt) a GNOME (toolkit Gtk).

Ďalšou dôležitou vlastnosťou Linux-u je to, že je to otvorený systém. To znamená, že do jeho útrob možno nielen nahliadnuť, ale aj ich zmeniť. Na jeho vývoji sa aktívne podieľajú stovky a možno tisíce vývojárov, ktorí tak ale robia preto, že ich to baví. Preto, že si myslia, že to dokážu urobiť lepšie. Na chybný kód môže ktokoľvek poukázať a, ak na to má, aj navrhnúť riešenie. Táto otvorenosť je umožnená dodržiavaním štandardov v rozhraniach a formátoch a hlavne zverejneným zdrojového kódu. Zdrojový kód Linux-ového jadra a rôznych aplikácií je zverejnený a voľne dostupný - spravidla zdarma. Ak za niečo platíte, tak je to spravidla cena média, cena tlačenej dokumentácie prípadne cena technickej podpory. Modulárnosť tohto otvoreného systému umožňuje tiež používanie rôznych modulov aj na iných architektúrach či operačných systémoch.

Operačný systém Windows nie je dostupný zdarma. Inštalačné médium si musíte kúpiť. Presnejšie zaplatíte za licenciu - právo používať ho. Rozsah v ktorom ho chcete používať môže ovplyvniť cenu licencie. Dodávateľom množstva najbežnejších aplikácií je takisto firma Microsoft. Dôsledkom toho je to, že vývojári Windows-ov nie sú motivovaní snažiť sa o modularitu Windows-ov. Prehliadač internetu, súborový manažér, ovládače tlačiarní, webový či databázový server a iné moduly sú úzko previazané s jadrom operačného systému. Dôsledkom toho môže programátorská chyba v týchto moduloch ohroziť celý operačný systém. Znamená to tiež, že aplikácie od iných výrobcov SW nemajú rovnaké podmienky. Nemôžu využívať znalosť interných záležitostí operačného systému.

Aplikácie dostupné pre operačný systém Windows sú spravidla dostupné len za peniaze. Túto situáciu trocha menia otvorené programy často dostupné aj pre Windows zdarma. Uzavretosť formátov a rozhraní mnohé firmy považujú za výhodu na trhu. Obmedzujú tým schopnosť konkurencie prevziať ich zákazníkov. Typickým príkladom je formát MS Word-u - doc. Rozšírenosť Windowsov je taká veľká, že málokto si môže dovoliť ignorovať tento formát. Malá firma má problém presadiť sa na trhu, pretože nedokáže bezchybne spracovávať tento formát. Naopak tvorca formátu môže uvedením novšej verzie na trh prinútiť používateľov prejsť na tento nový formát a tým si zabezpečiť zisk. Takisto riešenie problémov je len v rukách tvorcu uzavretého systému. Tento postup je nazývaný vendor lock-in a môže prerásť až do zneužívania monopolného postavenia na trhu. Ak sa vyskytnú problémy s otvoreným systémom, pomoc môžete hľadať na Internete, v e-mail-listoch alebo aj priamo u autora software-u či priamo v zdrojovom kóde. Vprípade uzavretých systémov ste odkázaní na reakciu dodávateľa uzavretého systému.

Spôsob vývoja MS Windows má za dôsledok niečo, čomu biológovia hovoria monokultúra. Odchýlky medzi jednotlivými inštaláciami sú pomerne malé. Biológovia by vám tiež povedali, že monokultúra je náchylná na epidémie. Epidémiami vo svete počítačov sú vírusy. Rozmanitosť jednotlivých inštalácií Linux-u, ako aj výraznejšie oddelenie jednotlivých podsystémov, spôsobuje vyššiu odolnosť voči vírusom.

Aj filozofia stavby aplikácií je odlišná. Linux-ové systémy dávajú prednosť spájaniu malých jednoúčelových modulov do komplexnejších celkov. Dosahuje sa sa tým vysoká flexibilnosť. Windows-ové aplikácie nech sú akokoľvek prepracované podobnú flexibilnosť nemôžu dosiahnuť. Rozdielom je tiež to, že Linux-ové nástroje sú predurčené na spracovanie textových údajov. Ak sú takéto údaje poškodené, je spravidla jednoduchšie ich opraviť ako poškodené binárne údaje.

Mnohí ľudia kritizujú na Linux-e jeho použiteľnosť. Odborníkov, ktorí vedia urobiť dokonalý grafický dizajn je málo. O to menej ich je medzi vývojármi otvorených systémov. Či je táto kritika oprávnená nechávam na vás, pretože je to dosť subjektívna záležitosť. Nedostatok je aj tvorcov kvalitných fontov. Fontov, nezaťažených reštriktívnymi licenciami a vysokou cenou, je málo. Linux, ale nemá problémy s podporou štandardu zvaného TrueType fonty. Niektoré z nich sú dokonca voľne dostupné (napr. Bitstream Vera, či Luxi ).

Posledný rozdiel, ktorý spomenieme je podpora hardware-u. Dodávateľom Windows-ových ovládačov pre najrôznejší hardware spravidla nie je firma Microsoft, ale práve výrobca tohto hardware-u. Pre Windows-y to znamená, že ak výrobca urobí chybu v ovládači, ohrozí tým stabilitu celého operačného systému. Navyše len on môže túto chybu opraviť. Užívatelia sú teda, podobne ako pri aplikáciách odkázaní na ochotu a schopnosti dodávateľa ovládačov. Pretože Linux má pomerne malý poddiel na trhu, mnohí výrobcovia hardware-u považujú vývoj ovládačov pre Linux za nerentabilný. Vývojári otvorených systémov sú prirodzene ochotní vyvíjať tieto ovládače, ale aby mohli dokonale využiť potenciál hardware-u, potrebujú od jeho výrobcu podrobnú dokumentáciu. Tí sa ju však často zdráhajú poskytnúť pretože sa obávajú, že by tak poskytli výhodu svojej konkurencii. To je napríklad aj dôvodom menšieho množstva hier pre Linux, ktoré potrebujú rýchly grafický výstup. Napriek týmto problémom, hardwarová podpora pre Linux je pomerne rozsiahla a kvalitná hlavne pre staršie typy prídavných zariadení. Navyše výrobcovia môžu poskytnúť uzavreté ovládače, pretože systém, do ktorého ich začleňujú je verejne známy - tento postup napríklad používa výrobca grafických kariet nVidia.