-
ras_tex
iras_tex
-
ER ras_tex ( ID tskid, TEXPTN rasptn );
ER iras_tex ( ID tskid, TEXPTN rasptn );
tskidで指定されたタスクに対して,タスク例外処理を要求します。対象タスクの保留例外要因を,
rasptn で示された値との論理和に更新します。
タスク例外処理ルーチン起動時には,保留例外要因は0クリアされ,タスク例外は禁止されます。タスク例外処理ルーチンには,引数として0クリア前の保留例外要因と,タスクの拡張情報が渡されます。
タスク例外処理ルーチンが終了すると,タスク例外許可状態に変更され,そのタスクはタスク例外処理ルーチン起動直前の地点から実行を再開します。
タスク例外処理ルーチンからのリターン時,RI600PXはタスクのユーザ・スタックにタスクのコンテキストレジスタを保存します。この処理においてユーザ・スタックのオーバー・フローを検出した場合は,
システム・ダウンとなります。
タスク例外処理ルーチンでCPUロック状態に移行した場合,タスク例外処理ルーチンからリターンするまでにCPUロック状態を解除しなければなりません。CPUロック状態のままタスク例外処理ルーチンからリターンした場合,
システム・ダウンとなります。
割り込み優先レベル(PSW.IPL)は,タスク例外処理ルーチンの起動前後,タスク例外処理ルーチンからのリターン前後で変化しません。割り込み優先レベルがカーネル割り込みマスクレベルより高い状態で,タスク例外処理ルーチンからリターンした場合は,
システム・ダウンとなります。
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- CPUロック状態から本サービス・コールを発行した。
- 「PSW.IPL > カーネル割り込みマスクレベル」の状態から本サービス・コールを発行した。
|
|
|
- スタック・ポインタが呼出しタスクのユーザ・スタック領域の範囲外を指している。
|
|
|
- tskidのタスクがDORMANT状態である。
- tskidのタスクにタスク例外処理ルーチンが定義されていない。
|
|
|
|