ブランドゾーン (BrandZ) フレームワークは、このマニュアルのパート II「ゾーン」で説明されている Solaris ゾーンインフラストラクチャーを拡張して、ブランドの作成機能を追加します。「ブランド」という用語は、さまざまなオペレーティング環境を指す場合があります。BrandZ を使用すると、アプリケーションを実行するための、ネイティブでないオペレーティング環境を含む非大域ブランドゾーンを作成できます。ブランドタイプにより、ゾーンのインストール時および起動時に実行されるスクリプトが決定されます。また、ゾーンのブランドにより、アプリケーションの起動時に正しいアプリケーションタイプが適切に識別されます。すべてのブランド管理は、現在のゾーン構造の拡張を通して実行されます。
ブランドでは、単純な環境を提供することも、複雑な環境を提供することもできます。たとえば、単純な環境では、Solaris の標準ユーティリティーを同等の GNU ユーティリティーで置き換えることができます。複雑な環境では、Linux アプリケーションの実行をサポートする完全な Linux ユーザー空間を提供できます。
すべてのゾーンに、それぞれ関連するブランドが構成されます。デフォルトは native ブランド、つまり Solaris です。ブランドゾーンは、ネイティブでないバイナリのブランドを 1 つだけサポートします。つまり、1 つのブランドゾーンは 1 つのオペレーティング環境を提供します。
BrandZ はゾーンのツールを次のように拡張します。
zonecfg コマンドを使用して、ゾーンの構成時にゾーンのブランドタイプを設定します。
zoneadm コマンドを使用して、ゾーンのブランドタイプの報告とゾーンの管理を行います。
構成済み状態にあるゾーンのブランドは変更することができます。ブランドゾーンのインストールが完了したあとは、そのブランドの変更や削除を行うことはできません。
ブランドゾーンでは、ブランドゾーンで実行中のプロセスだけに適用される一連の介入ポイントがカーネル内に用意されます。
これらのポイントは、syscall パス、プロセスローディングパス、スレッド作成パスなどのパス内に見つかります。
これらの各ポイントで、ブランドは Solaris の標準的な動作を補完したり置き換えたりすることができます。
ブランドは librtld_db のプラグインライブラリを提供することもできます。デバッガ (mdb(1) のマニュアルページを参照) や DTrace (dtrace(1M) のマニュアルページを参照) といった Solaris のツールは、このプラグインライブラリを使用して、ブランドゾーン内で実行中のプロセスのシンボル情報にアクセスできます。
各ゾーンでサポートされるデバイスについては、そのブランドに関するマニュアルページやほかのマニュアルに記載されています。デバイスのサポートは、ブランドによって定義されます。ブランドでは、サポートされていないデバイスや認識されないデバイスの追加を禁止するように選択することができます。
ブランドゾーンに必要なファイルシステムは、ブランドによって定義されます。
ブランドゾーンで使用できる特権は、ブランドによって定義されます。特権の詳細については、「非大域ゾーン内の特権」および 「lx ブランドゾーンで構成可能な特権」を参照してください。