AmigaOS

AmigaOS (アミガOS)とは



AmigaOSは、1985年にコモドール社によって開発されたパーソナルコンピュータAmiga」専用のオペレーティングシステムです。当初はモトローラ68kシリーズのプロセッサで動作していましたが、後のバージョンではPowerPCプロセッサにも対応しました。AmigaOSは、当時としては先進的なマルチタスク機能とカラーグラフィックスを特徴とし、欧米を中心に高い人気を博しました。

AmigaOSの特徴



AmigaOSは、以下の要素で構成されています。

Exec: プリエンプティブ・マルチタスクを実現するカーネル
AmigaDOS: ディスクオペレーティングシステム
Intuition: ウィンドウシステムAPI。
Workbench: グラフィカル[[ユーザインタフェース]] (GUI)。
AmigaShell: コマンドラインインタフェース (CLI)。

GUIとCLIは補完的な関係にあり、同等の機能を提供します。

歴史



1985年のリリース当初から、AmigaOSはマルチタスクカラーグラフィックスという先進的な機能を備えていました。しかし、1994年にコモドールが倒産し、一時的に販売が停止しました。その後、Amigaの資産は複数の企業に渡り、1999年Amiga.intによってAmigaOS 3.5がリリースされましたが、大きな特徴はなく売り上げは低迷しました。2004年にはAmigaOS 4.0が登場し、新機能が多数追加され、評判を回復しました。

現在、Amigaの知的財産はAmiga Incが所有しており、AmigaOS 4の開発を監督しています。実際の開発はHyperion Entertainmentが担当しており、2009年にAmigaOS 3.1の独占的権利とAmigaOS 4.x以降のバージョンを販売する権利を獲得しました。2015年にはAmigaOS 3.1のソースコードがインターネットにリークされました。

欧米と日本の人気度の差



AmigaOSは、欧米ではその先進性、高性能、優れたデザイン性で非常に高い人気を誇りました。特に、マルチタスク性能とグラフィックス処理能力は高く評価されました。

一方、日本では、マルチバイト文字への対応が遅れたため、日常的な文書作成には不向きでした。そのため、一般向けの販売は伸び悩み、広く知られることはありませんでした。ただし、テレビ業界では、CGアニメ制作にAmigaが使用されたことで、一部で知られていました。

コンポーネント



AmigaOSは、ROM上のKickstartとディスク上のWorkbenchに分かれています。

Kickstart: ブートストラップROM。Amigaのハードウェアを起動するために必要なコードと、OSの中核コンポーネントを含みます。PC/AT互換機|PC_AT互換機のBIOSとOSカーネルに相当します。
Workbench: 標準のグラフィカルデスクトップ環境。作業台(ワークベンチ)のメタファーを使用しています。ディレクトリは「引き出し」、実行ファイルは「工具」、データファイルは「プロジェクト」と表現されます。

Kickstartの詳細



Kickstartは、Amigaの起動時にハードウェアの診断や初期化を行い、OSの中核コンポーネントを起動します。ブートデバイスからOSをロードし、ユーザーにデスクトップ環境を提供します。

Workbenchの詳細



Workbenchは、Amigaの標準的なデスクトップ環境を提供します。独自の「マルチスクリーン」機能を持ち、複数の画面を同時に表示できます。また、直感的な操作性を持つGUIは、Mac OSに似ています。ウィンドウシステムであるIntuitionを基盤としており、画面制御や入力処理、メッセージパッシングを行います。

AmigaOS 2.x でのユーザインタフェースの改善



AmigaOS 2.0では、標準ウィジェットセットが導入され、統一感のあるユーザーインターフェースが実現しました。また、アプリケーションが他のアプリケーションと共有可能なスクリーンを作成できるようになったり、オンラインヘルプシステム「AmigaGuide」が導入されました。さらに、入力イベントを詳細に調べることができる「Commodities」が導入され、ホットキー機能も利用できるようになりました。AmigaOS 2.1では多言語対応のためにlocale.libraryが導入されました。

AmigaDOSの詳細



AmigaDOSは、AmigaOSのディスクオペレーティングシステムです。ファイルシステム、ファイルとディレクトリの操作、コマンドラインインタフェースなどを提供します。初期のバージョンではBCPLで記述されていましたが、後のバージョンではC言語アセンブリ言語で書き直されました。ファイル拡張子は必須ではなく、プログラムはマジックナンバーで識別します。

グラフィックス機能



初期のAmigaOSでは、Amigaチップセットのみをサポートしていましたが、後にretargetable graphics (RTG) が導入され、サードパーティ製のグラフィックスカードも利用できるようになりました。3Dグラフィックス機能は標準化されていませんでしたが、3DCG制作プラットフォームとして広く使われました。intuition.library、GadTools、Magic User Interface (MUI)などのGUIライブラリが存在し、現在のAmigaではSDLエンジンが広く利用されています。

オーディオ機能



初期のAmigaOSでは、Amigaチップセットのサウンド機能のみをサポートしていましたが、後にAHI (Audio Hardware Interface) が導入され、サードパーティ製のオーディオカードも利用できるようになりました。MIDIAmigaOS 3.1から正式にサポートされました。

音声合成



Amigaには当初から音声合成機能があり、テキストを音声に変換できました。教育ソフトなどで多く利用されました。しかし、Workbench 2.1以降では音声合成機能が省かれました。

ARexx



AmigaOSは、ARexxというスクリプト言語をサポートしており、アプリケーション間の連携や自動化に利用できます。プログラムは「ARexxポート」を通じてメッセージを受け渡し、プログラム間でメモリ上で直接データをやり取りできます。

RAMディスク



AmigaOSには、動的にサイズが変わるRAMディスクがあり、高速なデータアクセスが可能です。また、固定サイズのRAMディスクもサポートしています。

ブートブロック



Kickstartは、ブート可能なデバイスからブートを試みます。ブートブロックにはブート命令が格納されており、OSをロードします。ブートブロックはウイルス攻撃の対象となることもありました。

技術概要



AmigaOSのモジュール化は、動的読み込みの共有ライブラリを中心に構成されています。ライブラリ関数へのアクセスは間接ジャンプテーブルを介して行われ、実行時にパッチを当てたりフックしたりできます。カーネルであるexec.libraryは、タスクスケジューリングプロセス間通信を効率的に行います。カーネルは特権モードではなく、ユーザーモードで動作します。デバイスドライバライブラリとして提供され、標準化されたインターフェースでアクセスされます。

Datatypes



Datatypesは、Amiga独自のデータファイル管理システムです。さまざまな形式のデータファイルを読み書きするための集中型システムであり、対応するdatatypeが存在すれば、あらゆる画像ファイルなどを扱うことができます。

ハンドラとファイルシステム



デバイスやリソース管理は、ハンドラと呼ばれるタスクによって行われます。ファイルシステム・ハンドラを使うことで、さまざまなファイルシステムを扱うことができます。ハンドラは、デバイス名やボリューム名でアクセスでき、入出力チャネルの指定などに使われます。アサイン機能により、論理パスでファイルにアクセスできます。AmigaOSでは、SYS:、C:、DEVS:、L:、LIBS:、S:、PROGDIR:といった標準的なアサインが使用されます。

ページングメモリとスワップパーティション



AmigaOS 4.0以降では、ページングメモリ機能が導入され、物理メモリを効率的に管理できるようになりました。また、スワップパーティションを作成することで、メモリ不足を解消できます。

他のOSへの影響



AmigaOSからは、AROSやMorphOSといったクローンOSが誕生しています。DragonFly BSDBeOS、AtheOS、Syllable、3DO Interactive Multiplayerなど、他のOSにもAmigaOSの技術やコンセプトが影響を与えています。

イースターエッグ



AmigaOSには、著作権メッセージなどのイースターエッグが隠されています。特定のキー操作やメニュー操作で表示させることができます。

脚注・出典



Amiga'>Amiga
AmigaOne'>AmigaOne
平沢進
岩井俊雄
Guru Meditation

外部リンク



AMIGA (英語)
www.chiptune.com (JavaScriptによるAmigaDOS1.3のエミュレート)
AmigaOS Support homepage
The Workbench Nostalgia Page – AmigaOSの各バージョンの非常に詳細な情報
Reference Library
Amiga Developer Help Site
Amiga_uses'>Famous Amiga Uses

もう一度検索

【記事の利用について】

タイトルと記事文章は、記事のあるページにリンクを張っていただければ、無料で利用できます。
※画像は、利用できませんのでご注意ください。

【リンクついて】

リンクフリーです。