この機能は、Solaris Express 3/04 で新しく追加されました。
Solaris 10 オペレーティングシステムが機能拡張され、デバイスのオープン、読み取り、書き込みといったデバイスへのアクセス操作をカーネルモジュールが実行できるようになりました。また、公開された新しい階層化ドライバインタフェース (LDI) を使用してどのデバイスが提供されているか調べることもできます。
ドライバ開発者は、LDI インタフェースを使用して、Solaris カーネルから文字デバイス、ブロックデバイス、または STREAMS デバイスに直接アクセスできます。アプリケーション開発者は、LDI インタフェースを使用してデバイス階層情報を表示できます。管理者は、この新しいアーキテクチャーを使用して、カーネル内のデバイス使用率を監視することもできます。詳細は、ldi_*(9F) および di_*(3DEVINFO) のマニュアルページを参照してください。
prtconf と fuser ユーティリティーが拡張され、次の機能が組み込まれています。
prtconf コマンドによる「デバイス階層」の表示 – このコマンドは、デバイスのマイナーノードとデバイス使用率情報を表示します。また、このユーティリティーは、カーネルモジュールが現在どのマイナーノードを開いているかも表示します。
prtconf(1M) のマニュアルページを参照してください。
fuser コマンドによる「デバイスの使用率」の表示 – このコマンドは、特定のデバイスのユーザーに関する情報を表示します。また、このコマンドは、Solaris カーネル内でどの汎用 Solaris カーネルサブシステムまたはユーザープロセスが特定のデバイスをオープンおよびアクセスしているかも表示します。
fuser(1M) のマニュアルページを参照してください。
LDI は接頭辞 ldi_ で始まります。これらのインタフェースは、デバイスにアクセスするとき、およびカーネルレベルのデバイス情報を取得するときに使用されます。これらのインタフェースのマニュアルページは、セクション 9F にあります。ユーザーレベルでは、一連のデバイス情報ライブラリインタフェースによって、アプリケーション内でカーネルデバイス使用率情報を取得するための機能が提供されています。LDI libdevinfo インタフェースのマニュアルページは、セクション 3DEVINFO にあります。prtconf(1M) および fuser(1M) のマニュアルページには、LDI アーキテクチャーによって提供されるカーネルデバイス使用率情報を表示する方法に関する説明も記載されています。
詳細は、『Writing Device Drivers』の第 13 章「Layered Driver Interface (LDI)」を参照してください。