05/02/05 21:26:43
>>226
たぶん大多数の実装において、差は無い(待ち状態におけるref_flgは除く)。
しかし、μITRON4.0仕様書の記述
「待ち状態を満たせば待ち行列の先頭ではなくても解除されるため、
待ち行列につながれた順序で待ち解除されるとは限らない。」
を意地悪く解釈すれば、差は出る。…かもしれない。
待ち解除に相当するタスクの優先度が全て違うなら、276の言う通り。ディスパッチはサービスコール実行の最後で起きるであろうから。
しかし同一優先度の複数待ちタスクがTA_WMULにより解除されたときは、グレー。待ち行列の順序で待ち解除されるかは、不定だから。
これのグレーさは、TA_TFIFOかTA_TPRIかということには依存しない。
そして仕様書は、TA_FIFOとTA_TPRIで同じ挙動であると保証はしていない。
まあそんな恣意的な実装があるとは到底思えないのではあるが。
気になるなら、各実装のマニュアルやソースコードを見るのが吉。
…ではないかな。
>>277
ITRONの話を壷で期待するのが大きな間違い。