Go to main content
リソース管理および Oracle® Solaris ゾーン開発者ガイド

印刷ビューの終了

更新: 2016 年 11 月
 
 

exacct ファイルに関するプログラミングの問題

  • メモリー管理に関する次の問題に注意してください。

    • ea_free_object()ea_unpack_object() には同じ割り当てフラグを使用します。

    • 文字列オブジェクトの場合、ea_set_item() によって割り当てが行われるため、続けて ea_free_item(obj, EUP_ALLOC) を使用して内部ストレージを解放するようにしてください。

    • ea_pack_object() および getacct() が使用するサイズはゼロです。サイズを取得するには、getacct() を 2 回呼び出すようにしてください。1 回目は NULL バッファーを指定し、2 回目の呼び出しで渡されるバッファーのサイズを指定します。exacct ファイルにアクセスするための C コードの例の例 3-1 を参照してください。

  • exacct ファイルの内容変更に対して堅牢であるために、アプリケーションはシステムによって生成された exacct ファイル内の未知の exacct レコードをスキップする必要があります。

  • アプリケーション固有のレコードを作成するには、カスタマイズアカウンティング用の EXC_LOCAL を使用します。一般的なトレース機能またはデバッグ機能として libexacct を使用します。

    • <sys/exacct_catalog.h> を参照してください。

    • ea_catalog_t のデータ ID フィールドはカスタマイズできます。