AmigaOS
また、Amigaはビデオ信号のゲンロック(同期)が容易だということでも知られているが、ビデオキャプチャ用インタフェースは内蔵していない。最盛期にはAmiga向けのサードパーティー製ビデオキャプチャ用インタフェースが数多く製造販売されていた。
AmigaOS本来のグラフィック・エンジン兼ウィジェット・ライブラリとしてintuition.libraryがある。AmigaOS 2.0ではそれがGadToolsに拡張された。Stefan Stuntzが開発したMagic User Interface (MUI) が2.0以降のAmigaシステムで使われ、AROSではMUIクローンのZuneを実装、MorphOSではMUIが標準のウィジェット・ツールキットとなっている。また、ClassACTというウィジェット・ツールキットはReAction GUIへと発展し、AmigaOS 3.0および4.0で使われている。AmigaOS 4.0ではReAction GUIが標準の1つとされている。CygnixはAmiga上でX11互換グラフィック環境を提供するものである。他にもcairoやAnti-Grain Geometryといったグラフィックライブラリが一部ベンダーから登場している。
現在のAmigaではクロスプラットフォームのSDL (Simple DirectMedia Layer) エンジンをゲームや他のマルチメディアプログラムによく使っている。
AmigaOS 4.1では3Dのハードウェアアクセラレーションに対応したPorter-Duff画像合成エンジンを採用している。
AmigaOSのAPIを移植性のあるオープンソースのオペレーティングシステムとしたクローン。AmigaOSとは(68k上で動作させない限り)バイナリ互換ではないが、ユーザーによればソース互換性は高いという。
↑ From PC Magazine, October 22, 1996 Inside Track By John C. Dvorak
↑ 注 - Macintoshはライバルだったが、当時のWindowsはまだ発展途上で販売実績は小さく競争相手ではなかった。
↑
↑
1 2 “Amiga Workbench 2.1”. 2008年11月23日閲覧。
↑ http://uk.aminet.net/misc/antiq/ARP_13.readme
↑ “Amiga ReTargetable Graphics”. 2011年3月17日閲覧。 090427 amigau.com
↑ AHI — Retargetable Audio for AmigaOS et al.
↑ http://arp2.berlios.de/ahi/#binaries 2010-11-19
↑ http://www.text2speech.com/#aboutsv
↑ http://uk.aminet.
KickstartはブートストラップROMである。Kickstartには標準的なAmigaハードウェアをブートするのに必要なコードと、AmigaOSの中核コンポーネントの多くを含んでいる。Kickstartの機能はPC/AT互換機で言えば、BIOSとOSのカーネルの主要部分に相当する。しかし、Kickstartはブート時に典型的なPCよりも多くの機能を提供でき、例えば完全なウィンドウ環境が立ち上げ途中でも利用可能である。
KickstartにはAmigaOSの Exec、Intuition、AmigaDOS 中核部、Autoconfig によって拡張ハードウェアを使う機能などが含まれる。つまり、Amigaは電源を入れただけでOSの基本的部分の多くを既に使える状態になっている。後のバージョンではIDEおよびSCSIコントローラのドライバやPCカードポートのドライバなど、Amiga本体に追加されたハードウェアのドライバが追加されている。
立ち上げ時やリセット時、Kickstartは診断やシステムチェックを行い、Amigaのチップセットを初期化し、OS中核コンポーネントを初期化する。次に接続されているブートデバイスを調べ、優先度の高い方からブートを試みる。ブートデバイスが全くない場合、ユーザーに対してブートデバイス(通常フロッピーディスク)を挿入するよううながすメッセージをディスプレイに表示する。
デバイスおよびリソース管理の上位層はライブラリとは異なるタスク型のハンドラ (handler) で制御され、メッセージ・パッシングでやり取りする。
重要な種類のハンドラとしてファイルシステム・ハンドラがある。AmigaOSではハンドラを書きさえすれば任意のファイルシステムを使用できる。これを利用したプログラムとしてAmiga以外のフロッピーディスクを扱えるようにした CrossDOS があり、OFSとFFSというAmigaOSの標準ファイルシステム以外のファイルシステムも少数ながら存在する。これを使えば、ジャーナリングやファイルパーミッションなど標準では存在しない機能を追加することもできる。
ハンドラはDOSに対して「デバイス名」で提示されることが多く、それを使ってそのハンドラに対応する周辺機器にアクセスできる。
例えば、SPEAK:ハンドラにはテキストを送ることができる。そのハンドラはtranslator.libraryを使ってテキストを音素列に変換し、それらをnarrator.deviceに送ると音素列が音声信号に変換され、そこからaudio.deviceに音声信号を送ってAmigaのオーディオ・ハードウェアで音声を再生する。
デバイス名は大文字と小文字を区別しない文字列で表され(通常、大文字で表現)、その後ろにコロンが付く。
AmigaOSには動的に大きさの変わるRAMディスクがあり、内容によって自動的にサイズが変化する。AmigaOS 2.x以降、ブート時にシステム設定ファイルがRAMディスクにロードされ、OSの高速化を図っている。他のファイルもRAMディスクにコピーでき、アクセスを高速化できる。また、AmigaOS 2.x以降からRAMディスク上のファイルの更新を検知して通知する機能をサポートした。
固定サイズのRAMディスクもサポートしており、中身を退避させて立ち上げ時に再ロードできる。これは通常「RADディスク」と呼ばれており、(ブートセクタがあれば)ブートデバイスとしても使える。