Everything

ext_tsk

概要
自タスクの終了
C言語形式
 void    ext_tsk ( void );
 
アセンブリ言語形式
 BR      !!_ext_tsk
 
パラメータ
なし
機能
自タスクをRUNNING状態からDORMANT状態へと遷移させます。
これにより,自タスクは,レディ・キューから外れ,RI78V4のスケジューリング対象から除外されます。
ただし,本サービス・コールを発行した際,自タスクに起動要求がキューイングされていた(起動要求カウンタが0x0以外であった)場合には,RUNNING状態からDORMANT状態への状態操作処理,および,起床要求カウンタの減算処理(起床要求カウンタから0x1を減算)を行ったのち,DORMANT状態からREADY状態への状態操作処理もあわせて実行されます。
備考1 本サービス・コールでは,自タスクがsig_semget_mpfなどの発行により獲得したOS資源の返却は行いません。したがって,獲得中のOS資源については,本サービス・コールを発行する以前に返却する必要があります。
備考2 本サービス・コールでは,RUNNING状態からDORMANT状態への状態操作処理を実行する際に,
- 優先度(現在優先度)
- 起床要求数
- サスペンド要求数
- 割り込み状態
といった情報をタスクの生成時に設定される値で初期化しています。
備考3 タスク内でreturn命令を記述した場合,本サービス・コールと同様の動作が実行されます。
備考4 RI78V4では,“自タスクの終了”としてreturn命令を記述した方がコード効率が良くなります。
戻り値
なし