Home arrow Blog arrow Moja prvá skúsenosť s operačným systémom Mac OS X 10.4 (Tiger)
Moja prvá skúsenosť s operačným systémom Mac OS X 10.4 (Tiger) PDF Print E-mail
User Rating: / 0
PoorBest 
Sunday, 11 February 2007
Veľa ľudí ktorí pracujú s Apple Macintosh, inštaluje na svoj desktopový Mac či iBook operačný systém Mac OS X. Nedajú naň dopustiť a stanú sa z nich zarytí "jabĺčkári". Mal som možnosť s týmto systémom pracovať asi 3 týždne, zistil som však, že tento systém nie je ani zďaleka taký dobrý a stabilný, ako Linux či BSD unixy, s ktorými mám tiež veľa skúseností, no iba pozitívnych. Komerčný operačný systém Mac OS X je založený na nekomerčnom opensourceovom jadre BSD Unixu. Tento populárny (neviem prečo) operačný systém od Apple je podľa mojich skúseností menej stabilný ako Windows XP od Microsoftu. Približne po niekoľko hodinovej práci systém urobí paniku (niečo podobné ako STOP error, slangovo prezývaný "bluescreen" na Windowsoch). Stane sa to tiež po mountnutí CIFS filesystému (pripojenie sa na windowsácky zdieľaný adresár), pri veľkom CPU load (ak je systém príliš zaťažený nejakou operáciou). Systém sa vôbec automaticky nereštartuje, čo je kritické najmä ak ide o web či databázový server a stane sa to o polnoci a zákazníkom nejde web kým sa administrátorovi uráči ráno prísť do práce a resetovať ho manuálne. Pri takom nekorektnom ukončení systému sa môže poškodiť súborový systém, zatiaľ čo po manuálnom resete systém vypíše pri bootovaní, že partícia je žurnalizovaná, a teda nie je potrebné skontrolovať jeho konzistenciu (čo nie je vždy pravda). Spoliehal som sa na to, že programátori v Apple vedia čo robia a teda nie je potrebné kontrolovať konzistencie súborového systému… Až raz systém začal robiť paniku pri mountnutí súborového systému (laicky povedané, inicializácia a pripojenie dát z disku do systému pri jeho spúšťaní) a odmietol sa spustiť. To isté sa stalo aj pri spustení inštalácie systému z CD disku, až keď som odpojil harddisk, tak sa inštalácia korektne spustila. Z toho vyplýva, že harddisk musíte preformátovať iným operačným systémom, aby ste Mac OS X mohli opäť reinštalovať.

Ešte pred tým som však bootol do záchranného režimu (single user) aby som manuálne spustil príkaz "fsck -fy", ktorý však po chvíli práci oznámil, že nie je možné disk opraviť (ak si dobre spomínam, napísal niečo ako "invalid key index length" a dajaké čísla). Začal som teda hľadať na Google, a v rôznych diskusných fórach malo veľa ľudí ten istý problém, a každému bolo odporučené zakúpiť si program DiskWarrior, s ktorým sa vraj dajú zachrániť dáta na takomto softvérovo poškodenom disku. Napríklad na Linuxe som ešte nezažil problém z poškodeným súborovým systémom, s ktorým by si štandardný unixácky príkaz "fsck" nevedel poradiť. Nanajvýš sa pár súborov stratí, ale systém sa vždy dá ďalej používať. Je to ako keď si kúpite krásne nové auto, ktoré vyrába len jediná fabrika na celom svete, používajú svoje špecifické skrutky, nekompatibilné s nijakým bežným skrutkovačom. Ak sa vám v aute spáli poistka, tak si musíte zakúpiť špeciálny skrutkovač, ktorý pre nich vyrába nejaká firma, aby ste mohli poistkovú skrinku rozobrať a poistku vymeniť. No však takýto špecifický a drahý skrutkovač v štandardnej výbave auta chýba, a musíte si ho zakúpiť od tretej strany, aby ste mohli vymeniť hlúpu poistku. Čo je to za operačný systém, ktorý neposkytuje v štandardnej výbave správne fungujúci nástroj ("fsck") nutný na jeho bežnú údržbu, ale je potrebný vylepšený nástroj tretej strany, ktorý sa predáva za ťažké peniaze (pritom je otázne či funguje – ak ho robili podobní programátori ako "fsck", či samotné jadro, alebo webový browser Safari, ktorý tiež stále padá, tak iste nie). Chcem zdôrazniť, že som mal nainštalované všetky updaty od Apple, čiže som mal najnovšiu verziu systému, a nepoužil som žiadne beta verzie, ale verzie oficiálne označené za stabilné.

Nepáči sa mi tiež, že v defaultnej inštalácii systému je súborový systém case-insensitive (nerozlišuje, podobne ako Windows, rozdiel medzi malými a VEĽKÝMI písmenami), na rozdiel od ostatných unixov. Toto robí v niektorých prípadoch veľkú neplechu aj na Windowsoch (ak je požadovaná kompatibilita s iným unixom, napríklad pri FTP, či zdieľaní súborov medzi rôznymi systémami), nehovoriac o tom, že to značne spomaľuje systém, hlavne vyhľadávanie súborov na harddisku, keďže systém musí najprv názvy súborov a adresárov skonvertovať na malé písmená, aby ich mohol porovnať. No Apple si však myslí, že je taký pomalý preto, že beží na PowerPC procesore, tak sa pred nedávnom rozhodol že radšej bude Mac OS X pracovať na procesoroch firmy Intel, či kompatibilných.

Ďalšia vec ktorá sa mi na Mac OS X nepáči je tá, že je to systém podobný unixu, teda "unixoid" s BSD Unix jadrom (ale upraveným), ale vôbec nenasleduje jeho "štandardné" vlastnosti. Napríklad databáza užívateľov nie je v súbore "/etc/passwd" a "/etc/shadow"; prvý spomenutý sa využíva iba v single user móde (čiže je tam root účet a pár účtov pre daemony), zatiaľ čo druhý spomenutý súbor vôbec neexistuje. Tiež stojí za zmienku, že na ňom neexistuje štandardný unixácky príkaz "su", ale všetko čo vyžaduje oprávnenia účtu "root" sa robí cez príkaz "sudo", čo je pre mňa osobne neakceptovateľné a značne nepohodlné. Taktiež, filesystem layout (štandardné názvy adresárov) je úplne iný ako na väčšine unixov, a dokonca mnoho adresárov v roote filesystému (v koreňovom adresári) začína VEĽKÝM písmenom (!), čo je totálne nepraktické, ak používate terminalový shell program "bash" (príkazový riadok), ktorý je súčasťou systému. Ja som na tomto systéme – ako na každom "unixoide" - všetko robil cez príkazový riadok. Z toho dôvodu sa mi tiež nepáči že tento systém ma grafické rozhranie, ktoré vďaka excesívnemu používaniu grafických efektov v rámci úžasného Apple grafického dizajnu iba zbytočne žerie pamäť, čo pri nedostatku pamäti (veľa spustených programov) značne spomalí systém (z dôvodu swapovania).

Keď už som pri tom swapovaní, nepáči sa mi že Apple nepoužíva separátnu partíciu (oddiel na disku) pre účely swapovania (čo nastane ak máte spustených veľa programov a pamäť vám nestačí), ale vytvorí si swapovací súbor, čo podľa môjho názoru je nezmyselné, používa sa to na unixových systémoch ak nemáte voľnú partíciu (oddiel) na disku len ako krajné riešenie. Aj Windows to používa podobne ako Apple. Žeby nie len Microsoft odkukával od Apple, ale aj opačne? Toto riešenie značne spomalí systém, hlavne ak je swap súbor fragmentovaný. Tento systém má skutočne nepraktickú a zlú architektúru. Pripadá mi to, ako by ho projektovali softwarevoví architekti z Microsoftu, ktorí sú len v informatike teoretikmi, ale prax v programovaní nemajú žiadnu.

Ešte niečo, čomu budú rozumieť len administrátori a programátori. Zarazilo ma, že systém pomocou BSD sockets API funkcií nedokáže bindnúť počúvajúci socket na konkrétnu IP adresu prítomnú na niektorom z lokálnych sieťových interfaceov, ale iba na wildcardovú ("0.0.0.0"), čo môže v niektorých prípadoch a konfiguráciách otvoriť vážnu bezpečnostnú dieru. V opačnom prípade kernel vráti chybu 49: "Can’t assign requested address". Po druhé, čo sa týka klientských socketov, je nutné lokálny port nastaviť na nulu (port wildcard), nie je možné použiť konkrétne číslo portu (naštastie, špecifikáciu portu väčšina programov nevyužíva, možno len implementácie FTP servra).

Tento operačný systém patrí medzi "unixoidy", no musím povedať, že im robí veľkú hanbu. Systém prosto nepracuje ako by mal, padá, "fsck" nefunguje… Apple má s Microsoftom veľa spoločného. Apple vôbec nie sú dobrí programátori, ale iba dobrí biznismeni. Nič viac. Nehovoriac o tom, že si zobrali opensourceové jadro BSD Unixu, ktoré je zadarmo, vylepšili ho (resp. zaniesli doň veľa chýb), a predávajú ho za veľké peniaze. Sú to iba obyčajní príživníci, ktorí sa priživujú na skvelej práci tých čo robili BSD Unix, chvastajúci sa úžasným dizajnom, ktorým ide iba o peniaze. Mňa nezaujímajú vičačkané ikonky a nádherný design, ja potrebujem systém ktorý je stabilný a na ktorý sa môžem spoľahnúť. Čo je ligotavé pozlátko s hnilým jadrom oproti rýdzemu zlatu?

* Niektoré názvy použité v článku sú registrované obchodné známky ich respektívnych vlastníkov.
< Previous   Next >