組み込みソフト開発のしきいを下げる"リアルタイムOS"のすべて
6. 組み込みシステムにOSを導入するときに考えるべきこと
組み込みシステムの世界には,大きなものから小さなものまで,さまざまなシステムが存在します.ですから,導入するときに考慮しなければならない条件は,それこそ星の数ほど存在するでしょう.
●OSが必要となる条件
数限りない条件があるとは思いますが,「あえてどのシステムにも共通した条件をあげよ」と言われるならば,筆者は次のように考えたいと思います.
1)管理する資源の数 →多いほどOSが必要
2)管理する資源の規模 →大きいほどOSが必要
3)同時に実行するタスクの数 →多いほどOSが必要
4)スケジューリングの複雑さ →タイトであるほどOSが必要
5)システムの複雑さ →実行するタスクの種類が多いほどOSが必要
これとは逆に,システムによっては必ずしもOSを適用する必要がない場合もあります.いろいろなケースがあるので一概には言えませんが,次のようなことが考えられる場合,無理にOSを導入する必要はないでしょう.
●OSを導入しなくてもいい場合
次のようなシステムの場合,OSを導入するメリットがほとんどありません.
1)シングル・タスクのシステム
2)I/Oがないシステム(CPUとメモリだけ)
3)管理すべき資源,それを使うタスクがない
4)コンテキスト・スイッチの時間さえも惜しい場合
5)OSに割り当てられるメモリが少ない場合
●リアルタイムOSの選定基準
以上のようなことを考慮に入れて,リアルタイムOSを導入する際の選定の指標を考えてみました.
1)作ろうとしているシステムは本当にOSが必要なのか?
2)どういう理由でリアルタイムOSでなければならない のか?
3)採用するリアルタイムOSはシステムに最適か?
4)リアルタイムOSを導入することでシステムが得られるメリットは何か?
5)リアルタイムOSを導入する際のコストは製品の利益に見合っているか?
これら五つの条件のなかに,一つだけお金の問題が入っています.商品を開発するときには,必要な項目であるといえます.