各 Perl モジュールには、関連するプロジェクト、タスク、および exacct 関連関数のグループが含まれています。各関数には、標準の Sun::Solaris:: Perl パッケージ接頭辞があります。
|
Sun::Solaris::Project モジュールは、プロジェクト関連システムコールおよび libproject(3LIB) ライブラリのラッパーを提供します。
Sun::Solaris::Project モジュールは、プロジェクト関連ヘッダーファイルの定数を使用します。
|
libexacct(3LIB) API への Perl 拡張は、プロジェクト用に次の関数を提供します。
Sun::Solaris::Project モジュールにはクラスメソッドがありません。
Sun::Solaris::Project モジュールにはオブジェクトメソッドがありません。
デフォルトでは、このモジュールからは何もエクスポートされません。次の表にリストされたタグを使用して、このモジュールで定義された定数および関数を個別にインポートできます。
|
Sun::Solaris::Task モジュールは、settaskid(2) および gettaskid(2) システムコールのラッパーを提供します。
Sun::Solaris::Task モジュールは次の定数を使用します。
|
libexacct(3LIB) API への Perl 拡張は、タスク用に次の関数を提供します。
Sun::Solaris::Task モジュールにはクラスメソッドがありません。
Sun::Solaris::Task モジュールにはオブジェクトメソッドがありません。
デフォルトでは、このモジュールからは何もエクスポートされません。次の表にリストされたタグを使用して、このモジュールで定義された定数および関数を個別にインポートできます。
|
Sun::Solaris::Exacct モジュールは、ea_error(3EXACCT) 関数およびすべての exacct システムコールのラッパーを提供します。
Sun::Solaris::Exacct モジュールは、さまざまな exacct ヘッダーファイルの定数を提供します。P_PID、P_TASKID、P_PROJID、およびすべての EW_*、EP_*、EXR_* マクロはモジュールのビルドプロセス中に抽出されます。マクロは /usr/include にある exacct ヘッダーファイルから抽出され、Perl 定数として提供されます。Sun::Solaris::Exacct 関数に渡される定数は、EW_FINAL のような整数値でも、“EW_FINAL” のような同じ変数の文字列表現でもかまいません。
libexacct(3LIB) API への Perl 拡張は、Sun::Solaris::Exacct モジュール用に次の関数を提供します。
|
if (ea_error() == EXR_SYSCALL_FAIL) { print("error: $!\n"); } else { print("error: ", ea_error(), "\n"); }
Sun::Solaris::Exacct モジュールにはクラスメソッドがありません。
Sun::Solaris::Exacct モジュールにはオブジェクトメソッドがありません。
デフォルトでは、このモジュールからは何もエクスポートされません。次のタグを使用して、このモジュールで定義された定数および関数を個別にインポートできます。
|
Sun::Solaris::Exacct::Catalog モジュールは、カタログタグとして使用される 32 ビット整数を包むラッパーを提供します。このカタログタグは、Sun::Solaris::Exacct::Catalog クラスに与えられた Perl オブジェクトとして表されます。メソッドを使用すると、カタログタグ内のフィールドを操作できます。
EXT_*、EXC_*、および EXD_* のマクロはすべてモジュールのビルドプロセス中に /usr/include/sys/exact_catalog.h ファイルから抽出され、定数として提供されます。Sun::Solaris::Exacct::Catalog メソッドに渡される関数は、EXT_UINT8 のような整数値でも、“EXT_UINT8” のような同じ変数の文字列表現でもかまいません。
libexacct(3LIB) API への Perl 拡張は、Sun::Solaris::Exacct::Catalog 用に次のクラスメソッドを提供します。Exacct(3PERL) および Exacct::Catalog(3PERL)。
|
libexacct(3LIB) API への Perl 拡張は、Sun::Solaris::Exacct::Catalog 用に次のオブジェクトメソッドを提供します。
|
デフォルトでは、このモジュールからは何もエクスポートされません。次のタグを使用して、このモジュールで定義された定数および関数を個別にインポートできます。
|
さらに、register() 関数で定義されたすべての定数は、オプションで呼び出し元のパッケージにエクスポートできます。
Sun::Solaris::Exacct::File モジュールは、アカウンティングファイルを操作する exacct 関数のラッパーを提供します。インタフェースはオブジェクト指向であり、exacct ファイルの作成および読み取りができます。このモジュールでラップされる C ライブラリコールは次のとおりです。
ファイルの読み取りおよび書き込みメソッドは Sun::Solaris::Exacct::Object オブジェクト上で動作します。これらのメソッドは、必要なメモリー管理、パック、アンパック、および必要とされる構造変換をすべて実行します。
Sun::Solaris::Exacct::File は、EO_HEAD、EO_TAIL、EO_NO_VALID_HDR、EO_POSN_MSK、および EO_VALIDATE_MSK 定数を提供します。new() メソッドで必要なほかの定数は、標準の Perl の Fcntl モジュールにあります。表 6 は、$oflags および $aflags のさまざまな値の new() のアクションを示しています。
Sun::Solaris::Exacct::File モジュールには関数がありません。
libexacct(3LIB) API への Perl 拡張は、Sun::Solaris::Exacct::File 用に次のクラスメソッドを提供します。
|
次の表は、$oflags および $aflags パラメータの組み合わせに対する new() のアクションを示しています。
|
libexacct(3LIB) API への Perl 拡張は、Sun::Solaris::Exacct::File 用に次のオブジェクトメソッドを提供します。
|
デフォルトでは、このモジュールからは何もエクスポートされません。次のタグを使用して、このモジュールで定義された定数を個別にインポートできます。
|
Sun::Solaris::Exacct::Object モジュールは、exacct オブジェクトに使用できる 2 つの型であるアイテムとグループの親として機能します。exacct Item は、単一データ値、埋め込まれた exacct オブジェクト、または raw データのブロックです。単一データ値の例として、プロセスによって消費されるユーザー CPU 時間の秒数があります。exacct Group は、特定のプロセスまたはタスクのすべてのリソース使用率の値など、exacct アイテムの順序付けられたコレクションです。グループ同士を互いにネストする必要がある場合は、内側のグループを埋め込みの exacct オブジェクトとして外側のグループの内部に格納できます。
Sun::Solaris::Exacct::Object モジュールには、exacct のアイテムとグループ両方に共通するメソッドが含まれています。Sun::Solaris::Exacct::Object の属性およびそこから派生したすべてのクラスは、new() で新規作成されたあと、読み取り専用になることに注意してください。属性が読み取り専用になることで、カタログタグおよびデータ値の不整合が生じる原因となる、属性の意図しない変更を防ぎます。読み取り専用属性の唯一の例外は、グループオブジェクト内にアイテムを格納するのに使用される配列です。この配列は、通常の Perl の配列演算子を使用して変更できます。
Sun::Solaris::Exacct::Object は、EO_ERROR、EO_NONE、EO_ITEM、および EO_GROUP 定数を提供します。
Sun::Solaris::Exacct::Object モジュールには関数がありません。
libexacct(3LIB) API への Perl 拡張は、Sun::Solaris::Exacct::Object 用に次のクラスメソッドを提供します。
|
libexacct(3LIB) API への Perl 拡張は、Sun::Solaris::Exacct::Object 用に次のオブジェクトメソッドを提供します。
|
デフォルトでは、このモジュールからは何もエクスポートされません。次のタグを使用して、このモジュールで定義された定数および関数を個別にインポートできます。
|
Sun::Solaris::Exacct::Object::Item モジュールは、exacct データアイテムに使用されます。exacct データアイテムは、Sun::Solaris::Exacct::Object クラスのサブクラスである Sun::Solaris::Exacct::Object::Item クラスに与えられた、隠された参照として表されます。ベースとなる exacct データ型は、次のように Perl 型にマッピングされます。
|
Sun::Solaris::Exacct::Object::Item には定数がありません。
Sun::Solaris::Exacct::Object::Item には関数がありません。
Sun::Solaris::Exacct::Object::Item は、Sun::Solaris::Exacct::Object 基本クラスのすべてのクラスメソッドに加え、new() クラスメソッドを継承しています。
|
Sun::Solaris::Exacct::Object::Item は、Sun::Solaris::Exacct::Object 基本クラスのすべてのオブジェクトメソッドを継承しています。
Sun::Solaris::Exacct::Object::Item にはエクスポートがありません。
Sun::Solaris::Exacct::Object::Group モジュールは、exacct グループオブジェクトに使用されます。exacct グループオブジェクトは、Sun::Solaris::Exacct::Object クラスのサブクラスである Sun::Solaris::Exacct::Object::Group クラスに与えられた、隠された参照として表されます。グループ内のアイテムは Perl 配列内に格納され、その配列への参照は継承された value() メソッドからアクセスできます。つまり、グループ内の個々のアイテムを通常の Perl 配列の構文と演算子で操作できます。配列のすべてのデータ要素は、Sun::Solaris::Exacct::Object クラスから派生している必要があります。グループオブジェクトは、既存のグループをデータアイテムとして追加するだけで互いにネストすることもできます。
Sun::Solaris::Exacct::Object::Group には定数がありません。
Sun::Solaris::Exacct::Object::Group には関数がありません。
Sun::Solaris::Exacct::Object::Group は、Sun::Solaris::Exacct::Object 基本クラスのすべてのクラスメソッドに加え、new() クラスメソッドを継承しています。
|
Sun::Solaris::Exacct::Object::Group は、Sun::Solaris::Exacct::Object 基本クラスのすべてのオブジェクトメソッドに加え、new() クラスメソッドを継承しています。
|
Sun::Solaris::Exacct::Object::Group にはエクスポートがありません。
Sun::Solaris::Exacct::Object::_Array クラスは、exacct グループ内に配置されているデータアイテムの型チェックを実施するために内部で使用されます。Sun::Solaris::Exacct::Object::_Array はユーザーが直接作成するべきではありません。
Sun::Solaris::Exacct::Object::_Array には定数がありません。
Sun::Solaris::Exacct::Object::_Array には関数がありません。
Sun::Solaris::Exacct::Object::_Array には内部使用のクラスメソッドがありません。
Sun::Solaris::Exacct::Object::_Array は Perl TIEARRAY メソッドを使用します。
Sun::Solaris::Exacct::Object::_Array にはエクスポートがありません。