AmigaOS
Author
Albert FloresAmigaOS je nativní operační systém osobních počítačů Amiga. Původně byl vyvíjen firmou Commodore International a prvně představen společně s uvedením Amigy 1000 na trh. Běžel na 32bitovém mikroprocesoru Motorola série 68k, vyjma AmigaOS 4 který běží na mikroprocesorech PowerPC.
Základem je kernel fungující na bázi preemptivního plánování, který se nazývá “Exec”, a který podporuje abstrakci unikátního hardwaru, diskový operační systém “AmigaDOS”, rozhraní pro programování aplikací “Intuition” a uživatelské grafické rozhraní (GUI) “Workbench”. Nechybí samozřejmě ani příkazová řádka.
AmigaOS se chová jako realtimový systém, přestože takový není. Používá tak propracovaný multitasking, že dosud zůstává nepřekonán - nedá se najít operační systém s tak kvalitním víceúlohovým prostředím (velmi blízko je například BeOS, AtheOS nebo QNX, jsou však o hodně mladší a stále kvalit AmigaOS nedosahují).
Největší nevýhodou tohoto systému byla - a stále je - neexistence systémů ochrany paměti - aplikace má přístup kamkoli do operační paměti a pokud sáhne tam, kam nemá, může havarovat celý systém.
Součásti AmigaOS
Amiga může být rozdělena na dvě části: “Kickstart” (ROM) a „Workbench“. Poslední hardwarovou verzi Kickstartu představuje Kickstart 3. +more1 (V40), jenž kromě AmigaOS 3. 1 (V40) využívají i následující softwarové updaty operačního systému AmigaOS 3. 5 (V44) a AmigaOS 3. 9 (V45). AmigaOS 4 (V50 a vyšší) zavádí svůj Kickstart z harddisku (případně výměnného média).
Kickstart
“Kickstart” je název pro ROM zavaděč. Na prvním modelu Amigy (Amiga 1000), byl tento zavaděč načítán z diskety do speciální sekce paměti nazývané WCS, ačkoliv případně mohl být zaveden přímo do ROM chipu uvnitř počítače. +more Amiga 1000 mohla být dodatečně upravena pro použití těchto chipů.
Kickstart obsahuje kód potřebný pro nabootování hardwaru a případně rozšiřujícího hardwaru. Zároveň také obsahuje mnoho kmenových částí operačního systému, jako například “Exec”, “Intuition” a jádro “AmigaDOSu”. +more Pozdější verze obsahovaly ovladače pro IDE a SCSI a spoustu jiného hardwaru. Dalo by se to porovnat s BIOSem plus Windows kernelem, ačkoliv nabízí mnohem větší funkcionalitu v průběhu bootování, např. plně funkční prostředí.
Společně se softwarem třetích stran je možné načíst Kickstart do RAM namísto ROM, např. můžeme nahrát Kickstart 1. +more3, abychom mohli hrát staré hry nekompatibilní s Kickstartem 2. 0 a vyšším. Tyto programy se nazývají “softkickers”. Existují také hardwarové přepínače Kickstartů, které umožňují použití více než jedné sady chipů uvnitř počítače, které se dají přepínat např. pomocí klávesové zkratky při startu počítače.
Workbench
Workbench je název pro software operačního systému, který není uložen v Kickstart ROM, a zároveň také grafický shell pro počítače Amiga. Pro běh softwaru však nemusí být prostředí Workbenche načteno. +more V praxi to znamená, že pokud chce např. nějaká hra obejít hardware a nechat si všechnu paměť a prostředky pro sebe, spousta z nich bootuje přímo z Kickstartu na floppy disku.
V terminologii Workbenche je “Metaphor” to samé, co ve Windows “Desktop”, adresáře se nazývají “drawers”, spustitelné soubory jsou “tools”, datové soubory “projects” a GUI prográmky známé jako Widgets jsou “Gadgets”. V mnoha jiných aspektech se interface podobá Mac OS, např. +more na ploše se zobrazují ikony připojených disků a svazků, každé okno má jednotné menu. Oproti Macu má Amiga dvoutlačítkovou myš.
Speciální funkcí jsou pak tzv. “multiple screens”. +more Tento koncept je podobný jako u X Window virtuálnímu desktopu nebo pracovní ploše, ale jsou generována dynamicky podle toho, jak jsou vyžadována aplikačními programy. Každé okno má jiné rozlišení a barevnou hloubku. Gadget v pravém horním rohu, umožňuje přepínání oken. Okna se mohou přetahovat pouze ve směru nahoru a dolů. Od AmigaOS verze 4 jdou okna přetahovat ve všech směrech. Funkce Drag and Drop mezi okny funguje také.
Výchozím prvkem Workbenche je zobrazovací systém “Intuition”. Ten ovládá a zobrazuje okna, obrazovky a gadgety, znakový vstup z klávesnice a myši.
AmigaDOS
AmigaDOS obsluhuje souborový systém, práci se soubory a složkami, příkazový řádek, odkazy a další.
V AmigaOS 1. x, port AmigaDOS byl založen na TRIPOS portu od MetaComCo. +more Správná funkčnost byla zaručena pouze u programů napsaných v BCPL. Od verze 2. x a vyšší je AmigaDOS přepsán a dále rozvíjen v jazyce C a assembleru, zaručující plnou kompatibilitu s 1. x verzí.
Grafika
Do verze 3, podporoval AmigaOS pouze originální grafický chipset Amiga, grafické karty třetích stran byly podporovány pouze neoficiálním řešením. Ideální řešení, kdy by Amiga podporovala jakýkoliv grafický systém se nazývalo “retargetable graphics” (RTG). +more AmigaOS 3. 1 umožňoval práci s chunky grafikou, což přispělo ke zvýšení kompatibility ovládacího software některých grafických karet (např. Picasso II).
Amiga neměla žádnou oficiální podporu 3D grafiky, takže neměla žádné standardní grafické rozhraní. Výrobci grafických karet proto přinesli svá vlastní řešení např. +more MiniGL, Warp3D, Storm a CyberGL. VideoScape 3D byl jedním z prvních 3D renderovacích animačních systémů.
Zvuk
Stejně jako u grafických karet, AmigaOS až do verze 3. 1 podporoval pouze svá vlastní originální řešení. +more MIDI nepodporoval až do doby, kdy Roger Dannenberg přepracoval camd. library jako standardní MIDI API. Verze camd. library od Commodoru obsahovala navíc sériový port.
RAM disk
Operační systém AmigaOS má RAM disk dynamicky měnící svoji velikost, měněnou podle jejího obsahu. Při spuštění AmigaOS 2. +morex, se konfigurační soubory operačního systému nahrály do RAM disku při bootování, což velmi urychlilo použití operačního systému. Ostatní programy byly nahrány jako jakékoliv standardní zařízení a nebrzdily tím start operačního systému.