次に示す API では、指定した lgroup の内容に関する情報を取り出します。
lgroup 階層は、ドメインの資源を組織化し、もっとも近い資源を検索するプロセスを簡素化します。葉 lgroup は、もっとも応答時間の短い資源で定義されます。葉 lgroup の上位ノードの各 lgroup には、その子 lgroup にもっとも近い資源が含まれます。ルート lgroup には、そのドメインにあるすべての資源が含まれます。
lgroup の資源は、lgroup の直下に含まれるか、またはその lgroup にカプセル化された葉 lgroup 内に含まれます。葉 lgroup は、直下に資源を含み、ほかの lgroup をカプセル化することはありません。
lgrp_resources() 関数は、指定した lgroup に含まれる資源の数を返します。
#include <sys/lgrp_user.h> int lgrp_resources(lgrp_cookie_t cookie, lgrp_id_t lgrp, lgrp_id_t *lgrpids, uint_t count, lgrp_rsrc_t type);
lgrp_resources() 関数は、lgroup 階層のスナップショットを表す cookie を引数に使用します。その cookie は lgrp_init () 関数から取得されます。lgrp_resources() 関数は、lgrp 引数の値で指定した ID を持つ lgroup にある資源の数を返します。 lgrp_resources() 関数は、CPU またはメモリーの資源を直下に含む lgroup のセットを持つ資源を表します。lgrp_rsrc_t 引数には、次の 2 つの値が指定できます。
lgrp_resources() 関数は CPU 資源の数を返します。
lgrp_resources() 関数はメモリー資源の数を返します。
lgrpids[] 引数として渡された値が NULL でなく、かつ count 引数に渡された値がゼロでない場合、lgrp_resources() 関数は lgroup ID を lgrpids[] 配列に格納します。lgrpids[] 配列に格納できる lgroup ID の最大数は count 引数の値です。
指定した cookie、lgroup ID、またはタイプが無効な場合、lgrp_resources() 関数は EINVAL を返します。指定した lgroup ID が見つからない場合、lgrp_resources () 関数は ESRCH を返します。
lgrp_cpus(3LGRP) 関数は、lgroup 階層のスナップショットを表す cookie を引数に使用し、指定した lgroup にある CPU の数を返します。
#include <sys/lgrp_user.h> int lgrp_cpus(lgrp_cookie_t cookie, lgrp_id_t lgrp, processorid_t *cpuids, uint_t count, int content);
cpuid[] 引数が NULL ではなく、CPU 数がゼロでないとき、lgrp_cpus() 関数は、配列の要素数の上限まで、またはすべての CPU ID を配列に入れて返します。
content 引数には、次の 2 つの値が指定できます。
lgrp_cpus() 関数は、この lgroup と下位ノードにある CPU の ID を返します。
lgrp_cpus() 関数は、この lgroup にある CPU の ID だけを返します。
指定した cookie、lgroup ID、またはフラグのいずれか 1 つが無効な場合、lgrp_cpus() 関数は EINVAL を返します。指定した lgroup ID が存在しない場合は、lgrp_cpus() 関数は ESRCH を返します。
lgrp_mem_size(3LGRP) 関数は、lgroup 階層のスナップショットを表す cookie を引数に使用し、指定した lgroup にインストールされたメモリー、または空きメモリー領域のサイズを返します。lgrp_mem_size() 関数は、メモリーサイズをバイト数で返します。
#include <sys/lgrp_user.h> lgrp_mem_size_t lgrp_mem_size(lgrp_cookie_t cookie, lgrp_id_t lgrp, int type, int content)
type 引数には、次の値が指定できます。
lgrp_mem_size() 関数は、空きメモリー領域のサイズをバイト数で返します。
lgrp_mem_size() 関数は、インストールされたメモリーのサイズをバイト数で返します。
content 引数には、次の 2 つの値が指定できます。
lgrp_mem_size() 関数は、この lgroup と下位ノードのメモリーサイズの総量を返します。
lgrp_mem_size() 関数は、この lgroup のメモリーのサイズのみを返します。
指定した cookie、lgroup ID、またはフラグのいずれか 1 つが無効な場合、lgrp_mem_size() 関数は EINVAL を返します。指定した lgroup ID が存在しない場合は、lgrp_mem_size() 関数は ESRCH を返します。