(toppers-users 1400) Re: TTOC-031104-01/ timer_handler

MURANAKA Masaki monaka @ asahi-net.email.ne.jp
2004年 3月 11日 (木) 13:28:09 JST


こんにちは。

// 連載のネタとして興味深いかもですねぇ。

On 2004/03/11, at 9:55, Minoru Takahashi wrote:
>            もしも、timer_handlerが「ターゲット非依存部」に分類されていた場合、
>            既に用意されているtimer_handlerに手を加えることは、基本的に避け
>            た方がよいと思われます。

タイマハンドラは、確かに systask にあって、カーネル機能の中枢を担っているのですが、
同じくカーネルが提供している割込み管理機能から見れば、単なる割り込みハンドラで
しかなかったりもします。(timer.cfg 参照)

時間周期がisig_timが期待するタイムティックより大きければ、先にご指摘のあるとおり
カーネルが提供する時間管理機能を使うのが無難です。普通はこちらをお勧めします。

しかし、例えばハードウェアタイマの本数が少ない状態で短い周期が欲しい場合には、
ターゲット依存のhw_timerを書き換えた上で、timer_hadlerを書き換えるというのは
カーネルへの変更を最小限に留める有効な方法かもしれません。

せっかくのオープンソースです。危ない橋を渡ってみる自由もあります。
// 改変すると面倒になる配布条件のOSでは、得られない醍醐味ですね ;-)

--
from もなか