Be社のWebサイトには、Media OSについて解説したドキュメントがあります(<http://www.be.com/products/beos/mediaos.html>)。このドキュメントでは、デジタルメディアを効率良く扱うためにシステムが備えるべき要件として次の五つを挙げ、それからMedia OSを定義づけています。

  • プロセッサの処理能力を最大活用する(maximize processing power)
  • 高度かつ柔軟なグラフィック処理能力(graphics power and flexibility)
  • 大規模記憶容量への対応(access to large amounts of storage)
  • インターネット接続機能(internet communications)
  • ソフトウェアの協調動作(software works together)
  • BeOSにとってMedia OSとは実現すべき目標であり、それに向かって改良が続けられているのです。Media OSが満たすべきこれらの要件について、それぞれどういったことなのか元のドキュメントから拾って以下に要約してみました。

    ■プロセッサの処理能力を最大活用する

    プロセッサの処理能力が順調に伸びているとはいえ、そのペース、つまりプロセッサ技術の向上ペースだけに頼っていたのではデジタルメディアが要求する水準に追随するのが難しいと前置きし、それとは別の軸が必要なことを説いています。別の軸とはプロセッサの個数であり、プロセッサの数を増やす、すなわちマルチプロセッサ化によって処理能力を向上させることが必要だというわけです。
    また、単にOSをマルチプロセッサ対応させるだけでは不十分であり、その仕方が重要であるとも書いています。これは、たとえば現行のMacOSがマルチプロセッサ機の性能を十分に引き出しているとは言い難いことを考えれば、強くうなづけます。

    ■高度かつ柔軟なグラフィック処理能力

    ユーザにストレスを感じさせないよう、グラフィクス処理にはリアルタイム性、つまり遅滞なく処理を進めるだけの能力が要求され、それを達成するために専用コプロセッサの利用が不可欠である、また様々なグラフィクス処理に対応できる柔軟さも持ち合わす必要があると主張しています。これは最近のゲーム機、特にソニーのプレイステーションが、ある程度の汎用性を持ったグラフィクス処理用コプロセッサを有効に使っているのを思い出させます。
    あるいは、Media OSの定義づけの項で述べられている「安全なやり方でハードウェアを直接制御する」という要件は、たとえばユタ大学で研究されている"Flux"などの、先進的なマイクロカーネル技術の潮流を想起させます(<http://www.cs.utah.edu/projects/flux>)。これはMachやWindowsNTのような、今日では古典となったマイクロカーネル構成を進歩させた考え方です。

    ■大規模記憶容量への対応

    テキストや静止画像など、比較的古くから扱われている種類のデータに比べ、動画像やサウンドなどはデータ量が大きいという特性があります。また、DVD のような大規模容量の記録媒体が実用化され、従来の32bitファイルシステムで扱えるサイズの限界(4GB)では対応できなくなっています。実際に、既に色々なOSが64bitのファイルシステムに移行を始めており、Media OSのみならずとも必須の対応事項でしょう。

    ■インターネット接続機能

    今日ではパーソナル・コンピュータとインターネットを切り離しては語れません。また、"web publishing"という言葉もあるように、制作した作品の流通チャネルとしても無視できない存在になっています。

    ■ソフトウェアの協調動作

    デジタルメディアにおいては多様なデータが存在するため、それらを一つのアプリケーションだけで処理するのは難しく、複数のアプリケーションを相互に連携するツールとして一緒に使うのが普通です。したがって、アプリケーション同士の連携を自然で楽にできるよう、アプリケーション間でのデータ受け渡しや、またAppleScriptのようなスクリプティングの仕組、さらにOLEやOpenDocのように、アプリケーション自体を部品として他のアプリケーションに組み込んでしまえるような機能も必要であると説いています。

     以上五つの要件を満たすOSがMedia OSというわけですが、そこから導かれる特徴として、以下に示す合計十二項目が挙げられています。

    (1)Media OSが備える基本特性(the Media OS foundation)

  • マルチプロセッサ構成に対する最適化(multiprocessor optimized)
  • 行き届いたマルチスレッド化(pervasive multithreading)
  • マルチスレッド化された、64bitのファイルシステム(multithreaded, 64-bit file system)
  • マルチスレッド化され、(ハードに)直接アクセス可能な
  • グラフィクス機能(multithreaded, direct access graphics capabilities)
  • 高い転送効率を持ち、モジュール化された入出力サブシステム(high-efficiency, modular I/O)
  • 分かりやすく単純な設計(clarity & simplicity of design)
  • (2)Media OSがアプリケーションに提供する機能(the Media OS application services)

  • 多様なメディアデータへのアクセス(media services)
  • 統合されたインターネットアクセス(native internet services)
  • アプリケーション相互の対話(interacting application services)
  • 国際化(international services)
  • マルチスレッド化されたユーザインタフェース(multithreaded user interface)
  • オブジェクト指向の設計(object oriented design)