(toppers-users 2242) 管理外割込みと例外について

酔漢 suikan7 @ yahoo.co.jp
2006年 1月 5日 (木) 11:38:40 JST


あけましておめでとうございます。
BlackfinにTOPPERS/JSPを実装しております酔漢です。

TOPPERS/JSPというよりITRON4についてですが、管理外割込みからの戻りに付い
て質問させてください。

μITRON4仕様 ver 4.01.00によると、「カーネルは、ある優先度よりも高い優先
度を持つ割込み(阻止できない割り込みを含む)を、管理しないものとすること
が出来る。このような割り込みを、カーネルの管理外の割り込みと呼ぶ」となっ
ています。管理外割り込みはカーネルの管理下の割込みよりも優先度が高いた
め、管理外割り込みの中で管理下の割り込みがネストすることはありません。

しかし、Blackfinプロセッサは例外を割込みよりも高い優先順位としているた
め、以下のようなネストが発生しえます。

タスク
管理外割込み
例外

現在の実装では例外から戻るときには「ネスト中である」と判断してディスパッ
チやタスク例外処理を行いません。したがって、タスクに戻ったときに発生すべ
きディスパッチや例外がおきないことがあります。

このような場合、仕様はカーネルが厳密に仕様どおりに振舞う、つまり、上記の
ような場合もディスパッチがおきるように求めていると解釈すべきでしょうか。
それとも、実装依存として実装者が何らかの警告文書を出すだけで対応してもよ
いものでしょうか。

直感的には「スタンダードプロファイルを名乗らなければ実装依存だよ」という
ことになりそうですが、それはちょっと悲しいです。一方、遅延割込みを使って
実装する手立てはありますが、余計な割込みをひとつ使うのが嫌だなぁと感じて
います。

ご意見いただきたくお願いします。

-- 
酔漢
Blackfin 空挺団           http://adsp2191.hp.infoseek.co.jp/
TOPPERS/JSP for Blackfin  http://sourceforge.jp/projects/toppersjsp4bf/
Blog                      http://blackfin.g.hatena.ne.jp/suikan/

--------------------------------------
Yahoo! Mail - supported by 10million people
http://pr.mail.yahoo.co.jp/mail_pr/