[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

(itron-club 1728) cyclicハンド ラーの初期動作(Re: TOPPERS/JSP isig_timの実装について )



こんにちは。氏原です。

小南さんありがとうございます。

> TOPPERS/JSPの特に実装に関しての質問は、users __at__ toppers.jpの
> 方が適切だと思います。

お教えいただいてありがとうございます。早速登録させていただきました。こち
らでは、ITRON仕様についてだけ議論します。

まだ気にかかるのは、現状のTOPPERSの実装ですと位相が0のcyclicハンドラー
は最初の周期が1-tick短くなることが起こります。

例えば、周期が2で位相が0のcyclicハンドラーは
          start
timer-tick  0 ----- 1 ----- 2 ----- 3 ----- 4 ----- 5 ----- 6 -
cyc_hdr     -------run-----run-------------run-------------run-
(横は時間軸)

最初のtimer割り込みはtick 1のときになります。
tick 1とtick 2は間隔なしで実行されます。

> 私としては、「システム初期化時に第1回の起動を行なうべきではないか」と
> 思います。

これなら、timerスタート時に一回目の起動をするべきだと思います。指定時刻
より後で実行されてもよいということですが、あくまでイレギュラー時の話だと
思いますけどどうでしょう。スタート時に一回目を起動するのは現実的に難しい
のなら、この場合でしたらtick 2からスタートさせればよいのではないでしょう
か。(私の提案したプログラムと食い違ってきますが、その話はまた場を変えて
後ほど)。

-- 
Roland Corporation Japan
Tatsuhiro Ujihara