組み込まれたエンジニア

我輩は石である。名前はまだ無い。

OSEK/VDX (ToppersATK1) alarm.cのパッチ

2011-09-20 16:37:01 | Weblog

性能向上がほとんどないのに、無意味なほど複雑と思えるコードを見ると、思わず変更したくなります。

ATK1のカーネルではalarm.cのカウンタの回し方がそうです。

オリジナルのコードでは、カウンタを2倍の値まで回していますが、そのメリットはほとんどないように思います。(カウンタの発動の比較時に比較演算が1つ減る程度なので、性能的にはゴミです)

一方、2倍までまわす弊害は多く、多くの関数で、余分な条件判断を行なわざるをえません。

パッチファイルは、alarm.patch です。