Everything

rel_mpf

概要
メモリ・ブロックの返却
C言語形式
 ER      rel_mpf ( ID mpfid, VP blk );
 
アセンブリ言語形式
 MOVW    BC, #LOWW(_blk)
 MOV     A, #mpfid
 CALL    !!_rel_mpf
 
パラメータ
I/O
パラメータ
説明
I
 ID      mpfid;
固定長メモリ・プールのID
I
 VP      blk;
メモリ・ブロックの先頭アドレス
 
機能
mpfidで指定された固定長メモリ・プールにblkで指定されたメモリ・ブロックを返却します。
ただし,本サービス・コールを発行した際,対象固定長メモリ・プールの待ちキューにタスクがキューイングされていた場合には,メモリ・ブロックの返却処理は実行されず,該当タスク(待ちキューの先頭タスク)にメモリ・ブロックが渡されます。
これにより,該当タスクは,待ちキューから外れ,WAITING状態(メモリ・ブロック待ち状態)からREADY状態へ,またはWAITING-SUSPENDED状態からSUSPENDED状態へと遷移します。
備考1 本サービス・コールを発行した際,待ちキューの先頭タスクがREADY状態へと遷移する場合は,該当タスクの優先度に対応したレディ・キューの最後尾にキューイングし直す処理もあわせて実行されます。
備考2 RI78V4では,メモリ・ブロックを返却する際,メモリ・ブロックのクリア処理を行っていません。したがって,返却されたメモリ・ブロックの内容は不定となります。
戻り値
マクロ
数値
意味
E_OK
0
正常終了