Co se děje kolem AmigyPETR KRENŽELOK
Prázdniny jsou pryč a tak je čas opět zasednout ke klávesnici a napsat
souhrn událostí z počítačového světa více či méně spjatého s Amigou či její
filozofií. Touto větou jsem si doufám šikovně zajistil dostatečně široký prostor
ohledně věčně ožehavého tématu co to vlastně je a co není amiga, protože se k
tomu zřejmě díky událostem posledních dvou měsíců dostaneme...
Musím se přiznat, že aktivity společnosti Amiga nabraly poslední dobou na
obrátkách. Celkem mile mě překvapil rozhovor s Billem McEwenem a Fleecym Mossem
na stránkách internetového časopisu IBM developerWorks, jež se poměrně detailně
zabývá technologií, již chce Amiga použít pro své budoucí produkty. A tak mi
dovolte ve zkratce přiblížit technologii Tao Group, nazvanou Intent, respektive
přiblížit principy jejího fungování alespoň v globálu.
Jak již jsme si řekli, základem této technologie je VP (virtuální procesor). Již
tento pojem sám nabádal k tomu, že řada uživatelů, aniž viděla tuto technologii
na vlastní oči, si dělala o jejím fungování předčasné závěry. Slovo "virtuální"
totiž zní jako něco, co ve skutečnosti neexistuje, v podstatě zjednodušeně
řečeno jako emulátor a ještě vulgárněji vyjádřeno - balast, zpomalující
fungování aplikací. Jak tedy vlastně VP funguje a jaký je rozdíl oproti
"běžnému" nativnímu kódu?
Intent, řekněme tedy Tao OS, má celkem tři vrstvy v nativním kódu, zbytek
systému je v kódu VP. Jednou z těchto nativních vrstev je translátor
(překladač), jež se stará o překlad z VP kódu (jazyka VP), do nativního kódu
daného procesoru. Ten zajímá asi 50 - 80 kb kódu. Druhou vrstvou je PII
(Platform Isolation Interface), jež abstrahuje základní desku, třetí vrstvou pak
tzv. CII (CPU Isolation Interface), jež abstrahuje daný fyzický procesor.
Řekněme tedy, že napíšeme aplikaci v kódu VP, jež je na pohled směsicí asembleru
a C. Při spuštění dojde k dynamickému překladu, kdy překladač tento "mezikód"
přeloží do nativního kódu fyzického procesoru, nad nímž běží. Je zde tedy jeden
mezikrok, ovšem na druhé straně i poněkud odlišná technika fungování. Rovněž na
každém jiném běžném systému dochází k tomu, že je váš program nahrán do paměti,
je již pro daný procesor přeložený, a musí se vykonat. Tao zde však používá
poněkud údajně efektivnější techniku. Nenahrává se bůhvíjaká část kódu, ale
jednotlivé funkce nebo metody, jimž se v terminologii Tao říká - "tools". Ušetří
se tedy nějaká doba potřebná k natažení potřebných dat z média do paměti. Fleecy
se zmínil o poměru 80:20, kdy například u klasického přístupu se jen kvůli jedné
metodě vyvolá kód celé objektové třídy, což se u Tao neděje. Samozřejmě se navíc
jednou přeložený kód nepřekládá znovu. Jaká jsou tedy další pro a proti?
Výhodou, a to v relativně blízké budoucnosti výhodou velkou, může být
přenositelnost kódu. Jak se navíc v novém vydání Amiga World
(www.amiga.com/press/zine/8-1-00/) zmiňuje Dean Brown, šéf vývoje
referenční hw platformy Amigy, příliš jsme si zvykli na klasický hvězdicový
model počítače. V centru je CPU, na který se naloží stěžejní část úkolů a zátěž
se distribuuje jen velmi špatně. Rozdíl ve výkonu 500 MHz procesoru a jeho 1 GHz
ekvivalentu bývá podle Browna tak 20%. Tao zde však vnáší novou výhodu - možnost
postavit systém s mnoha různými procesory nejrůznějšího zaměření, nad kterými
poběží jejich VP, důkladně využívající jejich funkcí. Z hlediska software je v
systému vše naprosto transparentní a jsou zde techniky, kterými se zátěž rozloží
rovnoměrně skrze celý systém (load balancing).
Jistou nevýhodou se pak může jevit převod existujícího kódu. Amiga portovala
Doom na Intent asi za 15 minut, nicméně se můžeme rozloučit s možností
dynamického překladu na jednotlivé toolsy. Rovněž se nikdo nezmiňuje o tom, jak
efektivní bude technologie Intent při aplikacích většího ražení, řekněme
například v případě kancelářských balíků. To vše ukáže teprve čas, závan
čerstvého přístupu zde však zůstává.
Udělal jsem tedy jednu šílenou věc a SDK si zakoupil. Protože jsem si však
rovněž zakoupil nové PC (650 MHz), jen těžko mohu odpovědět na otázku, zdali mi
připadaly dané dema rychlé či nikoliv. Při přechodu ze 133 MHz pentia se vám zdá
rychlé úplně všechno :-) Ještě jsem se bohužel nedostal k tomu, abych vyzkoušel
některou z náročnějších aplikací.
Ano, aplikace. Když jsem se přihlásil na Open Amiga mailing list, k mému
překvapení je tam hezky živo. Nechápu čím se povedlo Amize přesvědčit vývojáře k
práci na aplikacích pro Amiverse, nicméně již několik zajímavých projektů zde k
vidění je. UAE, Regina Rexx, Python, REBOL, ACommander (file manager od
slovenských Ablaze), POV Ray, mpeg přehrávač, a práce započaly rovněž na
produktu Taifun, NG verzi známého WildFire a řadu běžných utilit snad nemusím
ani zmiňovat.
Aby toho nebylo málo, Amiga oznamuje partnerství za partnerstvím, i když zde mám
jisté výhrady. Například o "spolupráci" se společností Red Hat její
představitelé údajně nic nevědí, což se jal osobně ověřit Jason Compton. Red Hat
pouze nabízí SDK ve svém internetovém obchodě. Podobné to zřejmě bude i s tzv.
strategickou spoluprací se společností Matrox. Jak jsem se dověděl, je důležité
dělat rozruch, aby zůstali investoři spokojení a měli dojem, že se pořád něco
děje ;-)
Když už jsem u Matroxe, SDK využívá služeb X Windows. Ty samy o sobě nejsou
nijak zázračné, a tak jistým zrychlením může být přechod na XFree manager, jež
podporuje DRI (Direct Rendering Instructions?), jež již v systému mám, a co víc,
k dispozici je již ovladač pro karty Matrox, který by měl vizuální stránku věci
ještě urychlit.
Neměl bych rovněž opomenout fakt, že již brzy bude dostupná verze SDK pro
Windows, a jsem celkem rád, že Amiga opět vyslyšela prosbu vývojářské komunity.
Jak dlouho však ještě budeme muset čekat na non-hosted verzi systému ví snad jen
představitelé Amigy samotné.
Zřejmě to však nebude dříve, než se dokončí některé další vrstvy systému,
protože zatím ještě není k dispozici zvuk, 3D API (Mesa), skriptovací jazyk
Sheep, prostě řada služeb, bez nichž se jednoduše nedá hovořit o kompletním
systému.
Uzavřeme tedy nyní část tohoto sloupku týkající se AmigyNG. Jakékoliv odkazy k
výše zmiňované problematice najdete skrze stránku
www.amiga.com.
Druhé želízko v ohni, respektive novinka, na niž se bude záhodno přinejmenším
podívat, je QNX RtP (Real Time Platform). Členům konsorcia Phoenix již totiž
byla dána k dispozici první betaverze, samozřejmě nekompletní. Musím se přiznat,
že instalace byla velmi hladká, systém se nainstaluje podobně jako BeOS na
partition Windows, a z dnešního rána již vím, že je již hotov rovněž instalátor
pro Linux. Mé první dojmy jsou více než dobré. Rychlost systému jsem ve
skutečnosti ocenil až na svém starém P133, kde mé W95 téměř pořád swapují.
S kolegou věnujícím se Linuxu jsme vložili na bedra QNX "mírnou" zátěž, přičemž
se OS choval pořád svižně. Štíhlý Unix byla slova mého kolegy. Přiznám se, že
pokud mě něco na QNX štve, je to hlavně filesystém, který je téměř stejný jako
linuxí, ale na druhou stranu, snad kromě POSIX kompatibilního API, je QNX
systém, který si dle mého názoru zaslouží označení amiga-like. Interní
architektura je totiž na hony vzdálená Unixu. Je to čistá mikrokernelová
architektura, velmi dynamická, škálovatelná, s automatickým vyvažováním síťové
zátěže, stejně jak je tomu u technologie Tao. Jejím základem jsou tzv. resource
managery, úlohy běžící v uživatelské režimu, samozřejmě plně s ochranou paměti,
přes něž tečou zprávy (messages) reprezentující události systému a jež fungují
jako plug-iny. Do již běžícího resource manageru můžete zapojit jiný, bez
nutnosti restartu úlohy, natož systému a systém tak může škálovat na daleko
složitější architekturu. Z teoretického hlediska se dá říct, že Tao a QNX pro mě
představují asi tu nejpokrokovější architekturu OS, což ovšem nic neznamená,
protože operačních systémů, přestože nekomerčních, jsou zde desítky, a každý z
nás má zřejmě jiný pohled na to, co je a co není v OS důležité, ať už z hlediska
vývojářských, či uživatelských potřeb. QNX RtP by měl být volně ke stažení ze
stránky http://get.qnx.com či
www.qnx.com počínaje 26. září. Není jej
důvod nevyzkoušet, - nakonec - ještě za dob Gatewaye tohle měla být naše
Amiga...
Nashledanou příště... Vytlačiť článok
Pozn.: články boli naskenované ako text a preto obsahujú aj zopár chýb. Taktiež neručíme za zdrojové kódy (Asm, C, Arexx, AmigaGuide, Html) a odkazy na web. Dúfame, že napriek tomu vám táto databáza dobre poslúži.
Žiadna časť nesmie byť reprodukovaná alebo inak šírená bez písomného povolenia vydavatela © ATLANTIDA Publishing
none
|