1

RTOS について読むと、「ハード」な RTOS の特徴は、決定論的に期限を守ることができるということですが、システムが実際に要件を満たしていることをどのようにテストまたは証明すればよいのでしょうか?

MicroC/OS II RTOS はハード RTOS として特徴付けられていますが、その主張をどのように検証できますか? C プログラムを実行し、RTOS と同様にセマフォを使用してスレッド間でコンテキスト スイッチを実行できる FPGA 用の C コードと ISR がある場合、OS/RTOS が「ハード」RTOS か「ソフト」RTOS かをどのように確認できますか?

アプリケーションに依存し、タイマーが必要なため、組み込みのハードウェア タイマー (たとえば、Altera DE2 には 50 Mhz オシレーターがあります) をハードウェア割り込みと共に使用することが推奨されます。締め切りに間に合ったかどうかを確認しますか?

それとも、オペレーティング システム、リアルタイム オペレーティング システム、ハード RTOS とソフト RTOS を区別するために含めなければならない一般的な慣行はありますか?

「ハードRTOS」というラベルの典型的な要件を備えた「典型的なテスト」はありますか?

4

1 に答える 1

5

あなたの前提が間違っているので、この質問に答えるのは難しいです。

ハードリアルタイムとして分類されるシステムは、締め切りに間に合わなかったという重大度によってのみ、ソフトリアルタイム システムと区別されます。ハード RT では、締め切りに間に合わなかった場合、システム障害として分類されます。これは、ハードウェアや人に害を及ぼすかどうかに関係なく、システム障害として分類されます。一方、ソフト リアルタイムは通常、締め切りに間に合わなくてもシステムのパフォーマンスが低下するだけで、システムが完全に停止することはありません。

ハード RT システムの典型的な例は、過熱時にシステムをシャットダウンするウォッチドッグです。期限に間に合わなかった場合、システムは壊れます。また、発電所や航空機などの一般的な安全関連システムもこのカテゴリに分類されます。ソフト RT の例としてはビデオ ストリーミングが挙げられます。この場合、締め切りに間に合わなかったために画質が低下したり、途切れたりしますが、必ずしもシステムの障害が発生するわけではありません。

簡単に言うと、ハード RT とソフト RT は完全なソフトウェア システムの特性であり、その仕様と障害モデルによって測定されます。したがって、通常、ハード/ソフト RT 基準に適合するのはオペレーティング システム上で実行されているアプリケーションであり、OS は、アプリケーションがタイミングを仮定できるようにする、予測可能なタイミング動作を備えたインターフェイスを提供するだけです。

于 2014-04-01T05:53:16.130 に答える