-
ref_mpl
iref_mpl
-
ER ref_mpl ( ID mplid, T_RMPL *pk_rmpl );
ER iref_mpl ( ID mplid, T_RMPL *pk_rmpl );
|
|
|
|
ID mplid;
|
|
|
T_RMPL *pk_rmpl;
|
可変長メモリ・プール詳細情報を格納する領域へのポインタ
|
【 可変長メモリ・プール詳細情報T_RMPLの構造 】
typedef struct t_rmpl {
ID wtskid; /*待ちタスクの有無*/
SIZE fmplsz; /*空き領域の合計サイズ*/
UINT fblksz; /*獲得可能なメモリ・ブロックの最大サイズ*/
} T_RMPL;
|
mplidで指定された可変長メモリ・プールの可変長メモリ・プール詳細情報(待ちタスクの有無,空き可変長メモリ・ブロックの合計サイズなど)を
pk_rmplで指定された領域に格納します。
-
wtskid
可変長メモリ・プールの待ちキューにタスクがキューイングされているか否かが格納されます。
その他: 待ちキューの先頭にキューイングされているタスクのID
-
fmplsz
可変長メモリ・プールの空き領域の合計サイズ(単位:バイト)が格納されます。
-
fblksz
獲得可能なメモリ・ブロックの最大サイズ(単位:バイト)が格納されます。
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- CPUロック状態から本サービス・コールを発行した。
- 「PSW.IPL > カーネル割り込みマスクレベル」の状態から本サービス・コールを発行した。
備考 タスクからiref_mplを発行した場合,および非タスクからref_mplを発行した場合,コンテキスト・エラーは検出されず,システムの正常な動作は保証されません。
|
|
|
- 呼び出しタスクからの pk_rmplが示す領域に対するオペランド・ライト・アクセス許可がない。
|
|
|
- mplidの可変長メモリ・プールが存在しない。
|