CzAN Read more...

AmigaRulez rozhovor s Thomasem Friedenem od Johana "Graak" Forsberga

Cau a dekuju ti za to, ze sis nasel cas udelat tento rozhovor. Predstav se nasim ctenarum.

"Jmenuji se Thomas Frieden a momentalni pracuji na Amiga OS 4 pro Hyperion Entertainment. Mam 33 let a bydlim v Trieru v Nemecku"

Co te primelo,aby jsi zacal s Amigou? Co se ti na tom libilo/libi?

"Kdyz jsem videl poprve Amigu bezet v mistnim obchode, byl jsem unesen tim, jak muze fungovat nekolik ruznych programu zaroven. To bylo v roce 1988 a ja si stale pamatuje jak pod Workbenchem 1.3 bezeli vselijake demo programky (dotty, boxes, lines...pametnici si to urcite pamatuji take :). To me opravdu dostalo."

Prave delas na OS4, novem AmigaOS, ktery je zalozen na PowerPC. Rekni nam prosim te v kostce o cem vlastne bude a jake budou nove moznosti?

"AmigaOS 4 bude posledni krok od 68k Amiga hardwaru k PowerPC Amiga systemu. Berem duraz i na to, ze bude chodit i na jinych PowerPC hardwarech vcetne Amigy One nebo Shark PPC, ale nebude omezen jen na ne. Samozrejme, ze stare PPC turbokarty od Phase 5 bude podporovat take. Hlavne zmena u OS4.0 bude v Execu, kernel Amigy OS je kompletne prepsan z pracovniho tak, aby na PowerPC bezel nativne. To znamena, ze krome emulace teto zasadni vlastnosti, je kompletne nativni, a proto bude prinaset nejlepsi a nejrychlejsi mozne reseni pro OS4. Krome Execu tam bude vykonny emulator 68k procesoru, pomoci ktereho bude mozne spoustet software vytvoreny pro stare 68k procesory bez nutnosti mit 68k CPU v pocitaci. OS4 uz nebude 'nikdy' pouzivat skutecny 68k procesor, i presto, ze bude v pocitaci. Duvod je jednoduchy: 68k a PPC na stejnem pocitaci jsou si navzajem cizi. Nikdy nebyly navrhnuty tak, aby pracovaly spolecne ve stejnem systemu. Pro priklad 68k a PPC nesdili svoje on-chip pametove cache-ky, narozdil od nekolika PowerPC procesoru. Takze, kdyz jeden chce pristup pro zapis dat od druheho (coz je vzdycky v pripade, kdyz PowerPC vola operacni system), tyto cache-ky musi byt vyprazdneny. Tyto cache-ky jsou jednim z duvodu proc jsou moderni procesory tak rychle. Vyprazdnovani cache-ky vede ke spomaleni systemu natolik, ze oba procesory pracuji na velmi male procento jejich skutecneho vykonu. Takze, jak vidite, kdyz mate dva procesory (rozdilne) v jednom pocitaci, vykon jde misto nahoru jen dolu. Takze emulovani 68k dava smysl a poprve umozni PowerPC ukazat jeho plny potencial. V OS4 bude tedy mnoho dalsich modulu PowerPC nativnich, vcetne takovych podstatnych komponent jako je intuition, Amigacke GUI a vetsina casti, ktere jsou narocne na procesorovy cas, jako napr. nektere zarizeni a ovladace.

My vlastne pridavame funkcnost. Pro priklad, intuition projde dukladnou generalkou, stejne tak dobre i layers.library. To same se tyka i DOSu, coz je stale cast kodu s mnoha starymi 'kludgey hacks' a zpetnou kompatibilitou, ktera nebyla pouzita od dob Kickstartu 2.0. Do Execu jsme pridali mnoho novych veci. Bude tam uplne novy interface knihoven, ktery umozni programatorovi nabidnout rozdilne pohledy knihovny pro programatory aplikace a bude mit spojenou funkcnost knihoven do ruznych 'interfacu'. Doufame v to, ze budeme schopni v OS4 zprovoznit virtualni pamet a stejne tak dobre i omezenou formu pametove ochrany (plna ochrana pameti pravdepodobne zrusi zpetnou kompatibilitu). Planujeme neco jako resource tracking, coz je metoda pro programy trackovat, ktere systemove zdroje (pamet, soubory, okna, obrazovky, atd.) otevreli. Takze kdyz program spadne, system jej bude schopen uplne odstranit z pameti vcetne vsech oken a obrazovek, ktere otevrel nebo souboru, ktere cetl. Dale budou pridany nove funkcnosti ve vsech moznych oblastech. Jedna z hlavnich vylepsenich je uzavreni USB svazku, ktery umozni Amiga uzivatelum pouzivat USB zarizeni jako jsou klavesnice, mysi a joysticky, stejne tak dobre i scannery, tiskarny, digitalni fotoaparaty. OS4 bude mit take plne funkcni TCP svazek, ktery bude ten nejrychlejsi TCP svazek pro Amigu na trhu. Navic tam budou zamozrejme nove rozsireni, jako jsou nove 3D ovladace, AmigaInput, system pro programatory her, aby si mohli abstraktne nacist zarizeni, coz znamena, ze muzou pouzit stejny kod pro mysi, klavesnice, joypady, PSX joypady, analogove joysticky, digitalni joysticky a nebo dokonce USB joysticky, vsechno uplne stejnym zpusobem. Proto, programatori, nestarejte se o kazde zarizeni zvlast."

Hodne lidi zajima, zda AmigaOS4 bude mit Amiga "feeling". Bude stale tak rychly a pruzny jako vzdycky predtim?

"Ano bude. V zaklade to bude 'jen' port na PowerPC. Tento procesor tedy prinasi surovy vypocetni vykon, ktery dalece prekonava 68k a dokonce i nynejsi turbokarty od Phase 5. Jako pridavek uvedu: stare principialni operacni metody pouzivany ve starem Execu, zustanou zachovany a vy uvidite, ze OS4 je tak pruzny jako ten stary (OS4 bude pro priklad pouzivat ten samy task scheduling algoritmus jako OS3)."

Lide se ptaji jak to bude s multitaskingem v OS4. Bude stejny jako v OS 3.x nebo bude vylepsen, a kdyz se tak stane, bude to neco jako Executive?

"Na multitaskingu v OS3 neni mnoho veci k vylepsovani. Je velmi pruzny a blizko realnemu casu. Vskutku vlastne pouziva stejny algoritmus, ktery je pouzit v mnoha realtime operacnich systemech (jako QNX). Casem bude mozne prejit na jiny algoritmus, ale pro ted tam bude jen ten stary. Ve skutecnosti prvni testy dokazuji, ze souvislost prepinani casu (cas ktery je potreba k prepnuti jednoho beziciho tasku do druheho) bude extremne nizka (konkretne tato cast systemu je cela napsana v PowerPC assembleru), takze je to opravdu rychle."

Vsechny drivejsi verze AmigaOS byly kodovany v C a assembleru. Je OS4 take kodovan v C a assembleru? Nekteri lidi maji strach z toho, ze pokud bude kodovan jen v C, tak to nemuze byt tak rychle jako drivejsi verze v assembleru.

"Neni to kodovano pouze v C. Mame dve casti Execu: samotny Exec kernel a neco nazvane jako hardwareovy abstraktni layer nebo zkracene HAL. HAL je vazba mezi high-level Execem a hardwarem. Tento HAL je napsan temer v assembleru, protoze se dotyka skutecnych low-level casti, jako zachazeni s prerusenimi a vyjimkami, spravou cache-ky atd. Dokonce i high-level casti, ktere jsou napsany v C budou rychle. Je to bezna chybna predstava, ze assembler znamena rychle a C pomalu. Vubec to neni pravda. Pokud si zvolite spatny algoritmus, assembler bude pomaly jako BASIC. Vzhledem k tomu, ze moderni kompilery jsou extremne dobre, stravite hodne casu pokorenim C kompileru assemblerem (pro system pouzivame aktualni verzi gcc). Samozrejme, ze existuji casti kodu, ktere zabiraji kriticke mnozstvi casu. Scheduler (prepinani tasku) je jedna z nich a z toho duvodu je kompletne napsan v assembleru. Ostatni casti high-level funkcnosti budou tedy brzy konvertovany do assembleru (technicky to znamena, ze sem spadaji veci jako sprava uloh, ktere samozrejme pouzivame hodne casto...)."

Mezi nove moznosti OS4 patri i 'volitelna ochrana pameti'. Co to znamena?

"Volitelna znamena, ze muze byt bud zapnuta nebo vypnuta. Mnoho starych programu se nerozbehne s ochranou pameti. To znamena, ze pamet, kterou pouziva jeden task nemuze byt vyuzita druhym. Toto pravidlo bylo nekolikrat poruseno, castecne kvuli lidem, kteri si to neuvedomili, castecne protoze dokumentace nebyla zcela jasna (pokud vas to zajima, tak se podivejte na MEMF_PUBLIC v AllocMem autodoc ;), a castecne proto, ze proste nebyl zadny jiny zpusob (AmigaOS nema takovy koncept procesu jako ostatni systemy). Takze, abychom zustali zpetne kompatibilni, ochrana pameti bude volitelna, to znamena bud vypnuta nebo zapnuta, s tim, ze nektere programy se muzou spadnout. Doufejme, ze na OS4 budou brzy programy, ktere nahradi stare programy a ochrana pameti tedy bude vyuzita v plne siri."

Co nam reknes o systemu virtualni pameti? Pujde take vypinat?

"Ano, pujde. Virtualni pamet sedi na subsystemu normalni pameti Execu. A co dokonce jeste vic, programy budou muset specificky zadat o pamet, ktera by mohla byt virtualni (existuje nova zalozka MEMF_VIRTUAL). Timto zpusobem programy muzou zajistit, ze choulostiva data nebudou koncit ve virtualni pameti, zatimco 'bulk' data (jako jsou graficke nebo geometricke data v 3D hrach) jsou rizena pres system virtualni pameti."

Budou rozvrhovaci rutiny pameti - allocation/deallocation zlepseny tak, aby mene fragmentovali pamet?

"Mame plany to udelat, ale zatim ne, pouzivame stare schema. Nektere funkce v Execu dokonce vyzaduji toto stare schema rozmistovani pameti a proto nemohou byt uplne odstraneny. Pokud to cas dovoli, tak prijde i na nove schema alokace."

Hyperion oznamil, ze OS4 bude mit vseobecnou pci.library pro vsechny Amiga karty a zakladni desky. Jednali jste s nekterymi vyrobci techto karet nebo zakladnich desek?

"Ano. Jedname s Matay a Elbox o podpore jejich hardwaru.Absolutne zadny ohlas o spolupraci nemame z DCE, s respektem k GREXu a starym turbokartam od Phase 5 i navzdory tomu, ze jsme se jim hodnekrat ozyvali. Nedavno jsme zjistili, ze bPlan jim naridil, aby v zadnem pripade nespolupracovali s OS4 vyvojarskym teamem."

Jaky hardware s nim pobezi? Bude to chodit i na Blizzard PPCs? A jak jste daleko s podporou SharkPPC?

"Zamer je podporovat vsechen PowerPC hardware, jen jak to bude mozne. Trochu nam to komplikuje otazka licencovani, takze momentalne jsme se zamerili na Amigu One, Shark PPC a CyberStorm PPC. Blizzard by mel byt take podporovan, ale nedostatek dokumentace (a ochota vyrobce tu dokmentaci vydat) to ztezuje. Koneckoncu jak ja rikam "nic neni nemozne", a my se urcite pokusime o podporu Blizzarda. Prece jenom je to jadro Amiga trhu za posledni dva roky."

Vim, ze uz ta otazka padla tisickrat, ale kdy OS4 bude?

"Mozna znate tu hru 'Duke Nukem Forever'? Uz na otazku odpovidaji nekolik malo let. Takze ja pouziju jejich standardni odpoved: Az to bude ;)"

Co si myslis o konkurencnim produktu MorphOS?

"Abych byl uprimny, nikdy jsem ho nevidel.Pro me to neni AmigaOS, ikdyz nekteri lidi vam pravdepodobne reknou opak. Zajimam se o MorpOS asi tak jako napriklad o BeOS. Nikdy jsem ho nevidel, takze nemuzu a nebudu komentovat jeho technicke zalezitosti. Presto, nevidel jsem zadne plany MorphOS do budoucna, krome nahrazeni AmigaOS necim jinym, co umi spustit AmigaOS programy. Vypada to, ze snad ani zadne plany nemaji, a to je duvod, proc davam osobne prednost napadu Amiga Inc. s upgradovanim OS3.x na OS4 a pak na OS5."

Co myslis, ze se stane v budoucnosti s Amigou? Myslis, ze uplne zemre?

"Kdybych veril, ze Amiga zemre, nedelal bych na jeji budoucnosti. Vsichni jsme si vedomi toho, ze mame velke dedictvi se kterym se musime vyporadat. Posledni Amigy vysli v roce 1992, a to uz bylo pred 10 lety. Technologie prosla hodne rukama a vsichni byvali majitele jen ukazali velke plany, ktere se rozplynuly jako dym. Nynejsi majitele celi neustalym urazkam a utokum, ale dokonce i ti lidi by si meli uvedomit, ze uz udelali pro Amigu vic nez vshichni byvali majitele dohromady tim, ze nam umoznili pokrocit s OS4. Amiga se nevrati pres noc. 10 roku zanedbavani se neda prekonat za jednu noc. Je to pomaly proces, ale s novymi prichazejicimi technologiemi (A1, Pegasos, SharkPPC) a moznosti integrace AmigaDE do AmigaOS nam da usmerneny OS s jeho dynamickou, rychlou odezvou (nenarocnou na cas) a malymi naroky, a s podporou vsech oddanych uzivatelu, je to mozne..."

Jake Amigy mas prave ted?

"Momentalne mam dve Amigy 4000 a dve Amigy 1200, vetsina z nich ma PowerPC. Na vyvoj pouzivam hlavne A4000."

Co nejradsi na pocitaci delas, kdyz zrovna neprogramujes? A co rad delas,kdyz nesedis u pocitace? =)

"Kdyz neprogramuju, hraju hry. Mam rad hry v hlavni roli (jako jsou like Baldur's Gate a Dungeon Master), strategicke hry a strilecky (jako je Shogo). A kdyz nesedim u pocitace, rad posloucham hudbu a divam se na zavody formule jedna (nejsem fanda Michaela Schumachera ;). Take mam rad hry v hlavni roli, ale na papire a Magic: The Gathering"

Diky moc za to, ze sis nasel cas.