LOGOUT
Býval jsem mladistvým lamerem.

MacOSův UNIX (1) - MacMiNT

Už mě několik lidí upozornilo, že dvaasedmdesát hodin nepovažují za krátkou dobu a že bych tedy měl udělat další slibovaný článek na téma Macintosh a UNIX. Tady je.
Na počátku 90. let, kdy ještě nebyla mezi počítači nouze o různorodost, vznikl pro platformu Atari ST/TT/Falcon operační systém MiNT. Původně šlo jen o vrstvu běžící nad jádrem jednotaskového TOSu, která přinesla multitasking a unixové prostředí. Zkratka MiNT původně znamenala MiNT is Not TOS a poté, co se Atari rozhodlo MiNT použít jako základ MultiTOSu, se změnila na MiNT is Now TOS. Komunita dále MiNT pod označením FreeMiNT rozvíjela a vznikly jeho distribuce, které se na Atari ST/TT/Falcon používají dodnes.
Logo MacMiNT

Pro tento článek je ale podstatné to, že byl MiNT v roce 1999 portován Hoshim Takanorim na Macintosh. Jak jsem naznačoval v úvodním článku, nejedná se o samostatný operační systém, ale o aplikaci běžící pod Systémem 7. To mimo jiné znamená, že při jeho běhu máte vlastně v jednom okamžiku funkční hned tři různá systémová jádra:
  1. Jádro Systému/MacOS.
  2. Jádro JET (Just Enough TOS) – speciálně pro Mac přepsané ty nejzákladnější funkce TOSu, které zajišťují, že MiNT může používat všechny služby, které používá na Atari.
  3. Jádro MiNT.

MacMiNT přináší POSIXové prostředí, shell csh, kompilátor gcc, skriptovací jazyk Perl a další věci, které unixáci považují za samozřejmé a MacOS je neměl. Narozdíl od ataristického MiNTu nepodporuje síťování ani grafické nadstavby. Startovací sekvence probíhá tak, že uživatel spustí macovskou aplikaci JET, která si sama nahraje MiNT a ten dál vykoná spouštěcí skript končící až v shellu. Jako hlavní nevýhodu MacMiNTu (krom zmiňovaného síťování a GUI) vidím to, že vytváří jen jednu virtuální konzoli a tedy můžete pracovat najednou v pouze jednom shellu.

1_MacMiNT.png

Pro běh stačí 1500kB paměti, ovšem rozhodnete-li se kompilovat něco pomocí gcc je třeba mít více než 16MB RAM, jinak nepochodíte. Připomínám, že MacOS přiřazoval paměť aplikaci staticky při jejím spuštění, takže větší nebo menší hodnotu (než výchozích 8MB) přiřazené RAM musíte nastavit ve vlastnostech programu ještě před spuštěním. Kompilace mne přivádí k nekompatibilitám, které MacMiNT proti standardním UNIXům má: protože funguje na diskových oddílech ve formátu HFS, musí se vypořádávat se souborovými právy pro MacOS a naopak pro shell musí simulovat práva UNIXová. To ve většině případů není problém, ale například příkaz ls -di vrací pro aktuální adresář při každém zavolání jiné číslo adresářové položky. Zde selhává většina configure skriptů, které kontrolují pomocí ls -di funkčnost příkazu pwd. Naštěstí stačí drobná úprava skriptu a vše je bezproblémů funkční. Pokud je tedy nefunkční configure skript jediným problémem při kompilaci.
MacMiNT je totiž v dnešní době už více než deset let starý, takže kompilace čehokoliv novějšího je víceméně teoretická. Ano, podařilo se mi například přeložit utility uuencode a uudecode, ale druhou jmenovanou jsem musel trochu upravit a to i přes to, že jde o zdrojáky z roku 1994.

Autor vydal pouze jednu verzi MacMiNTu a jeden update ve formě bugů zbavené aplikace JET. Podle dokumentace program využívá možností procesoru 68k a Systému 7 na tak nízké úrovni, že funkčnost ve vyších verzích MacOS nebo procesorech PowerPC nelze zaručit. Sice na webu MacMiNTu najdeme i jiné stroje na kterých byla funkčnost MacMiNTu zkoušena, já jsem ale například neměl úspěch už na Quadře 700, pokud byl nainstalován MacOS 8. Na stejném stroji v Systému 7.1 jede MacMiNT naprosto stabilně.

MacMiNT považuju přesto za nejlepší ze tří existujících unixových rozšíření standardního MacOS. Jedná se totiž o volně šířený software a i přes omezenou funkčnost a chyby, které nepochybně má, jde o plně použitelné prostředí. Sám jsem ho k plné spokojenosti používal před několika lety (v době kdy mým hlavním systémem byl SlackWare Linux) na svém PowerBooku 190.
1. května 2010 | rubrika: Apple Bits | permalink Linkuj si ! asdf.sk
Komentáře

[1] (pol ) Vloženo 02.05.2010, 09:07:59
avatar dá sa v tom používať screen? to by riešilo viacero terminálov.

[2]screen (Logout - WWW) Vloženo 02.05.2010, 10:37:24
avatar to pol: pokousel jsem se prelozit nejakou starsi verzi screenu ale pro preklad je vyzadovano funkcni sitovani. nejsou sockets a pipes -> neni screen.

[3] (Diagon Swarm - WWW) Vloženo 02.05.2010, 12:14:18
avatar Škoda toho síťování. Bez něj mi připadaj možnosti využití dost omezené. To je pak spíš celé jen pro pocit.

[4]omezene moznosti (Logout - WWW) Vloženo 02.05.2010, 12:23:29
avatar to swarm: to si nemyslim. mas moznost si skriptovat, psat a kompilovat veci v C, pracovat s grepem a dalsima utilitama...

nezapomen, ze v minulem stoleti byla pro vetsinu domacich uzivatelu nejaka sit spis jen hudba budoucnosti. rozhodne bych to nezatracoval...

[5] (Art ) Vloženo 03.05.2010, 14:20:37
avatar Je pro MacMiNT k nalezení nějaký archív zkompilovaných programů k použití?

[6] (dex - WWW) Vloženo 03.05.2010, 15:53:52
avatar Podle odkazu zde byl MacMiNT použit ke konverzi Quicktime filmů na MPEG, protože umožňoval MacOSu (díky vlastnímu taskmanageru) běh konvertoru na pozadí (což původně použitý FutureBasic neumožňoval).
http://www.faqs.org...eg-faq/part7/

Všechna pole jsou nepovinná.
Vaše IP adresa nebude veřejně zobrazena.
Číslo v hranatých závorkách vytvoří odkaz na daný komentář.
Avatar friendly.
Vaše jméno:
Váš e-mail:
URL vašich stránek:
Nadpis:
Text: