リアルタイムオペレーティングシステム(RTOS)とは何ですか?どのように機能しますか?

問題を排除するために楽器を試してください





オペレーティングシステムという言葉を聞くと、最初に頭に浮かぶのは、ラップトップやコンピューターで使用されているオペレーティングシステムです。通常、Windows XP、Linux、Ubuntu、Windows 7,8.8.1、10などのさまざまな種類のオペレーティングシステムを使用します。スマートフォンでは、オペレーティングシステムはKitKat、Jellybean、marshmallow、Nougatなどです。デジタル電子機器には、によって開発されたある種のオペレーティングシステムがあります マイクロコントローラプログラム 。がある さまざまな種類のオペレーティングシステム マイクロコントローラ用に開発しますが、ここではリアルタイムオペレーティングシステムについて説明しました。

リアルタイムオペレーティングシステムとは何ですか?

RTOSはオペレーティングシステムであり、リアルタイムシステムの頭脳であり、入力への即時応答です。 RTOSでは、タスクは指定された時間までに完了し、予測できないイベントに対する予測可能な方法でその応答が行われます。 RTOSの構造を以下に示します。




RTOSの構造

RTOSの構造

RTOSの種類

次の3つの異なるタイプのRTOSがあります



  • ソフトリアルタイムオペレーティングシステム
  • ハードリアルタイムオペレーティングシステム
  • しっかりとしたリアルタイムオペレーティングシステム
RTOSの種類

RTOSの種類

ソフトリアルタイムオペレーティングシステム

ソフトリアルタイムオペレーティングシステムには特定の期限があり、見逃される可能性があり、時間t = 0+でアクションを実行します。ソフトリアルタイムオペレーティングシステムはOSの一種であり、極端なルールに制約されていません。このオペレーティングシステムのクリティカルタイムは、ある程度遅れています。このオペレーティングシステムの例は、デジタルカメラ、携帯電話、オンラインデータなどです。

ソフトリアルタイムオペレーティングシステム

ソフトリアルタイムオペレーティングシステム

ハードリアルタイムオペレーティングシステム

これもOSの一種であり、締め切りまでに予測されています。予測される期限は、時間t = 0で反応します。このオペレーティングシステムの例としては、自動車のエアバッグ制御、アンチロックブレーキ、エンジン制御システムなどがあります。

しっかりしたリアルタイムオペレーティングシステム

企業のリアルタイムでは、オペレーティングシステムには一定の時間的制約があり、それらは厳密ではなく、望ましくない影響を引き起こす可能性があります。このオペレーティングシステムの例は、産業オートメーションの目視検査です。


リアルタイムオペレーティングシステムの操作

RTOSの基本的な機能にはさまざまな種類があります。

  • 優先度ベースのスケジューラ
  • システムクロック割り込みルーチン
  • 決定論的行動
  • 同期とメッセージング
  • RTOSサービス

優先度ベースのスケジューラ

優先度ベースのスケジューラーでは、ほとんどのRTOSは、個々のタスクまたはプロセスに対して32〜256の可能な優先度です。このスケジューラーは、最も高い優先順位でプロセスを実行します。タスクがCPUで実行されている場合、次に優先度の高いタスクが実行され、プロセスが続行されます。

システムでは、最も優先度の高いプロセスにCPUが搭載されます

  • それは閉じるために実行されます
  • 元のタスクが新しいタスクに取って代わられると、優先度の高いプロセスが準備されます。

実行の準備ができているようなタスクまたはプロセスの3つの状態があり、もう1つはブロックされており、各状態の説明を以下に示します。

実行する準備ができました

実行の準備ができているとは、プロセスに実行するすべてのリソースがあると言われますが、実行状態であってはなりません。次に、実行準備完了と呼ばれます。

ランニング

タスクが実行中の場合、実行状態にあると言われます。

ブロックされた

この状態では、実行するのに十分なリソースがない場合、ブロックされた状態に送信されます。

タスクをスケジュールするために3つの手法が変更され、以下にその説明があります。

協調スケジューリング

このタイプのスケジューリングでは、タスクは実行が完了するまで実行されます

ラウンドロビンスケジューリング

このスケジューリングでは、各プロセスに固定タイムスロットが割り当てられ、プロセスはその実行を完了する必要があります。そうしないと、タスクはフローとデータ生成を失います。

プリエンプティブスケジューリング

プリエンプティブスケジューリングには、優先時間依存の時間割り当てが含まれます。通常、256の優先度レベルが使用され、各タスクには固有の優先度レベルがあります。より優先度の高いレベルをサポートするシステムがいくつかあり、複数のタスクにはいくつかの優先順位があります。

システムクロック割り込みルーチン

時間に敏感な操作を実行するために、RTOSはある種のシステムクロックを提供します。 1msのシステムクロックがある場合は、50msでタスクを完了する必要があります。通常、「50msで目を覚ます」と言うAPIがあります。したがって、RTOSがウェイクアップするまで、タスクはスリープ位置になります。ウェイクアップがその時点で正確に実行されることを保証しないという2つの通知があります。これは優先度によって異なり、現在より高い優先度が実行されている場合は遅延します。

決定論的行動

RTOSは、100タスクまたは10タスクのどちらを実行した場合でも、コンテキストを切り替える距離に違いがなく、次に優先度の高いタスクを決定することを保護するために、非常に長く移動します。決定論的なプライムエリアでは、RTOSは割り込み処理であり、割り込みラインに信号が送られると、RTOSはすぐに正しい割り込みサービスルーチンのアクションを実行し、割り込みは遅延なく処理されます。

プロジェクトの開発者がハードウェア固有のISRを作成することを私たちは騒がせなければなりません。これまで、RTOSはシリアルポート、システムクロック用のISRを提供し、ネットワークハードウェアである可能性がありますが、ペースメーカー信号、アクチュエータなどの特殊なものがある場合、RTOSの一部ではありません。

これはすべて大まかな一般化に関するものであり、RTOSには多種多様な実装があります。一部のRTOSは動作が異なり、上記の説明は既存のRTOSの大部分に対応しています。

同期とメッセージング

同期とメッセージングは​​、あるシステムのタスクから別のシステムへの通信を提供し、メッセージングサービスはそれに従います。内部アクティビティを同期するために、イベントフラグが使用され、メールボックス、パイプ、およびメッセージキューで使用できるテキストメッセージを送信します。共通データ域では、セマフォが使用されます。

  • セマフォ
  • イベントフラグ
  • メールボックス
  • パイプ
  • メッセージキュー

RTOSサービス

オペレーティングシステムの最も重要な部分はカーネルです。ハードウェアを監視するには、タスクを軽減し、カーネルがリソースを管理および割り当てる責任を負う必要があります。タスクが毎回CPUの注意を引くことができない場合は、カーネルによって提供される他のサービスがいくつかあります。以下は

  • タイムサービス
  • 割り込み処理サービス
  • デバイス管理サービス
  • メモリ管理サービス
  • 入出力サービス

RTOSの利点

  • すべてのリソースとデバイスが非アクティブの場合、RTOSはシステムの最大消費量とより多くの出力を提供します。
  • タスクの実行中は、RTOSにエラーがないため、エラーが発生する可能性はありません。
  • このタイプのシステムでは、メモリ割り当てが管理に最適なタイプです。
  • このタイプのシステムでは、シフト時間は非常に短くなります。
  • プログラムのサイズが小さいため、RTOSは 組み込みシステム 輸送などのように。

この記事では、リアルタイムオペレーティングシステムがどのように機能するかについて説明しました。これを読んで、いくつかの基本的な情報が得られたことを願っています。この記事に関して質問がある場合、または 電気プロジェクトを実施する 、以下のセクションにコメントしてください。ここにあなたへの質問があります、RTOSの機能は何ですか?