Skip to main content

ツールニュース

RENESAS TOOL NEWS 2012年02月01日 : 120201/tn1

R8CおよびM16Cファミリ用リアルタイムOSご使用上のお願い

R8CおよびM16Cファミリ用リアルタイムOSの使用上の注意事項を連絡します。
  • タスク切り替えの遅延に関する注意事項
  • ディスパッチ禁止状態に関する注意事項





1. タスク切り替えの遅延に関する注意事項
1.1 該当製品 M3T-MR30 V.3.00 Release 1 ~ V.3.30 Release 2 M3T-MR30/4 V.4.00 Release 00 以降 M3T-MR308 V.1.00 Release 1 ~ V.1.20 Release 1B M3T-MR308/4 V.4.00 Release 00以降 M3T-MR100/4 V.1.00 Release 00以降 1.2 内容 サービスコールの処理中に発生した割り込みによってタスク切り替えが生じる ような操作が行われても、サービスコールの終了時にタスク切り替えが発生 せず、特定のタイミングまでタスク切り替えが遅延する場合があります。 特定のタイミングとは、タスクの状態を変更させる任意のサービスコールを 呼び出した時点、もしくはカーネル管理割り込みが終了した時点です。 1.3 発生条件 製品によって、発生条件が異なります。 (1) M3T-MR30 V.3.00 Release 1 ~ V.3.30 Release 2 および M3T-MR308 V.1.00 Release 1 ~ V.1.20 Release 1B vrst_blkサービスコール (システムコール) を使用している場合に 発生する可能性があります。 (2) M3T-MR30/4 V.4.00 Release 00以降 および M3T-MR308/4 V.4.00 Release 00以降 以下のいずれかを満たす場合に発生する可能性があります。 - vrst_mplサービスコールを使用している。 - ref_tskサービスコールを使用し、タイムアウト待ちタスクを 参照している。 (3) M3T-MR100/4 V.1.00 Release 00以降 以下のいずれかを満たす場合に発生する可能性があります。 - ミューテックス機能を使用しており、かつchg_priサービスコールを 使用している。 - loc_mtxもしくはtloc_mtxサービスコールを使用しており、戻り値 としてエラーE_ILUSEが返されている。 - vrst_mplサービスコールを使用している。 - rel_mplサービスコールを使用しており、戻り値としてエラーE_PARが 返されている。 1.4 回避策 発生条件のサービスコールを呼び出した直後に、ena_dspサービスコールを 呼び出してください。 例: ------------------------------------------------------------- ER ercd; . . . . . . . . . . . . . ercd = vrst_mpl(ID_mpl1); <-- 発生条件(2)(3)のサービスコール ena_dsp(); <-- 回避策 . . . . . . . . . . . . . -------------------------------------------------------------
2. ディスパッチ禁止状態に関する注意事項
2.1 該当製品 M3T-MR30/4 V.4.00 Release 00以降 MR8C/4 V.1.00 Release 00以降 M3T-MR308/4 V.4.00 Release 00以降 M3T-MR100/4 V.1.00 Release 00以降 2.2 内容 レディキューの状態に矛盾が発生して、実行可能状態のタスクが実行されない 問題が発生する場合があります。その結果、システムが正常な動作を行わない 可能性があります。 2.3 発生条件 以下の条件をすべて満たす場合に発生することがあります。 (1) ディスパッチ禁止状態で以下のいずれかを実行している。 (1.1) isus_tskサービスコールで実行状態のタスクを指定している。 (1.2) chg_priまたは ichg_priサービスコールによって、実行状態のタスク の現在優先度を下げている。 (1.3) 実行状態のタスクの現在優先度のレディキューに他のタスクが ある状態で、rot_rdqまたは irot_rdqサービスコールによって実行 状態のタスクの現在優先度を変更している。 (2) (1)の実行状態のタスクから、ext_tskサービスコールを呼び出している。 ただし、M3T-MR100/4 V.1.01 Release 00の場合は、以下のいずれかを呼び 出している。 ploc_mtx、unl_mtx、ext_tsk 2.4 回避策 発生条件(2)のサービスコールはディスパッチ許可状態で呼び出してください。 例: ------------------------------------------------------------- . . . . . . . . . . . . . ena_dsp(); <- ディスパッチの許可 ext_tsk(); <- 発生条件(2)のサービスコール -------------------------------------------------------------

技術的な内容に関するお問い合わせは、お問い合わせ先一覧




End of content

Back To Top