| マイクロネット > INtime > マイクロネット社長からの一言 > 3.リアルタイムOSとは何か? | |
| 3.リアルタイムOSとは何か? | |
■ |
リアルタイムOSは決してアプリケーションを高速で動作させるためのOSではありませんし、CPUアクセラレータでもありません。 アプリケーションを高速に処理させるには高速クロックのCPUを使って実現します。 リアルタイムOSの役割はアプリケーションシステムの開発者やプログラマが実行タイミングや実行時間を計算した“通り”に実行させることができることです。 別の言い方をすれば、動作するたびにそれらのタイミングや時間がばらつかないようにすることができるOSともいえます。 英語表現ではDeterministic(確定論的な)タスクスケジューラといいます。 産業用システムではこのことが極めて大事なことで、この時間がばらつくと精度の高い制御を行うことができなかったり、時には装置や機械を壊してしまうこともあります。 これを実現するためにリアルタイムOSではそれぞれのアプリケーションプログラム(スレッド、タスク等という言い方をします)に優先順位(プライオリティ)を付けることにより、プログラムの実行順位を決めます。 複数のプログラムが同時に動作可能状態になったときにはリアルタイムOSは優先度の高いプログラムを先に実行させます。 いくら高速のCPUを使っても、Windowsですと本当のリアルタイム(ハードリアルタイム)を実現できないことはしばしば体験されていることでしょう。 一方、CPUとしては低速の8ビットマイコンを使ってもリアルタイムシステムを作ることはできます。
(補) |