問題タブ [rtos]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
910 参照

c - カスタムRTOSのスレッドのサポートをGDBに追加することは可能ですか?

カスタムRTOSを実行しているリモートターゲットをデバッグするシナリオでは、GDBにスレッドサポートを追加するために何が必要ですか?

私の場合、RTOSソースとそのすべてのスケジューラのシンボルのデバッグ情報にアクセスできるので、理論的には情報にアクセスできます。

これはGDBの再コンパイルを意味しますか?スレッド関連のコマンドにフックを追加しますか?

どんな解説でも大歓迎です!

0 投票する
3 に答える
1683 参照

c++ - Windows 7.0 でプログラミングしてより決定論的にする方法は?

私の理解では、Windows は非決定論的であり、データ取得に使用すると問題が発生する可能性があります。32 ビット バスとデュアル コアを使用して、インライン asm を使用して Visual Studio 2005 で割り込みを処理したり、少なくともある種のフラグを設定して時間的に一貫性を持たせたりすることは可能ですか?

RTOS (リアルタイム オペレーティング システム) の方向性: カーネル モードでプログラミングを行う Windows CE は、私たちにとっては高すぎるかもしれません。

0 投票する
1 に答える
199 参照

c++ - RTOS: windows ce: PID 制御ループのすべての計算をカーネル モードで実行できますか?

Windows CE では、「カーネル モード」で PID (Proportional-Integral-Derivative) 制御ループのすべての計算を行い、「ユーザー モード」を使用しないようにすることはできますか? システムを「カーネルモード」に保つために、TCP = IPを介して別のマシンにデータを転送します。私の理解では、「カーネル モード」から「ユーザー モード」への切り替えには時間がかかります。つまり、往復で 40us かかります。

0 投票する
3 に答える
7870 参照

real-time - ヒューマノイド ロボットに適した RTOS とは?

私たちは大学でスポンサー付きの研究プロジェクトとして中型 (高さ 4.5 フィート) の人型ロボットを開発している学生です。ロボットが実行できる必要がある主なタスクには、動き回る (前後左右)、走る、物を拾うなどがあります。ロボットを制御するために、ハードリアルタイム オペレーティング システムを使用することを検討しています。ただし、組み込みシステムやオペレーティング システムのバックグラウンドがほとんどなく、この分野には不慣れであり、さまざまなオプションが利用可能であるため、どれが適切な選択になるかわかりません。私たちは以下に遭遇しました(括弧内はそれらに対する私たちの現在の印象です):

  1. RTLinux (現在は死んでおり、カーネル 2.4.x、gcc 2.95 (ビルドが非常に難しい)、ドキュメントはほとんどまたはまったくありません)
  2. FreeRTOS (優れたコミュニティとドキュメント、人気があり、多くのアーキテクチャに移植されています)
  3. uc-OS II (小型、クリーンコア、軽量)
  4. RTAI (Linux ベース)

いくつか質問があります:

  1. このプロジェクトに適したオプションはどれですか? これは少し主観的に聞こえるかもしれませんが、アドバイスをいただければ幸いです。重要な情報が不足していると思われる場合は、その点を指摘してください。
  2. Linux カーネル用のCONFIG_PREEMPT_RT パッチと呼ばれるものに出くわしました。これはカーネルにハード リアルタイム機能を付与します。Debian ベースのディストリビューションで利用できる、このパッチが適用されたコンパイル済みのカーネルもあります。それだけで私たちの要件を満たすことができますか?
  3. オペレーティング システム全般についての知識はほとんどありません。まずそれらについて学ぶ必要がありますか。「はい」の場合、このテーマの短い入門書として適切なものは何ですか?

更新:信じられないほど詳細な回答をありがとうございます。これが間違った方法であることは明らかです。知識や漠然とした要件なしで飛び込むことは、確かに悪いことです. 座って、必要なものを正確にチョークアウトする必要があります。それが十分に進んだら、適切な OS を見つけようとします。それがどのように機能するか見てみましょう。MicroC OS II: The Real Time Kernel の第 2 章も読むつもりです。

0 投票する
3 に答える
1401 参照

timer - Linux RTOS sleep() - タイマー タスクの wakeup()

基本的にタイマーであるタスクがあります。したがって、スリープ状態になり、定期的にウェイクアップすることになっています..したがって、タイマータスクはたとえば10ミリ秒スリープします。しかし、起こっていることは、覚醒に一貫性がなく、時間内に正しく目覚めることに依存できないということです.

実際、私のランニングでは、睡眠時間に大きな違いがあります。時々、覚醒時に 1 ~ 2 ミリ秒変化することがあり、まったく元に戻らないことはほとんどありません。これは、カーネル スケジューラがすべてのスリープ状態と待機状態のタスクをキューに入れ、ポーリングして誰を目覚めさせるかを確認するときに、ラウンド ロビンだと思うからです。そのため、スケジューラが再度ポーリングするまでにタスクが期限切れになることがあります。割り込みが発生すると、ISR が制御を取得し、タイマーの起動を遅らせることがあります。

この種の問題を処理するための最良の解決策は何ですか?

(追加の詳細: タスクはワイヤレス ネットワークの MAC タイマーです。RTOS は u-velOSity マイクロカーネルです)

0 投票する
5 に答える
5880 参照

real-time - AVRでのマルチタスクRTOS

マルチタスクRTOSを実行したいAT90USB162AVRチップを持っているので、AVRチップで使用できるRTOSを評価しています。どのマルチタスクRTOSがAVRでサポートされていますか?多分QNX?(AVRマイクロチップ上でQNXカーネルを実行することは可能ですか?)

前もって感謝します。

0 投票する
4 に答える
2459 参照

cross-compiling - オープンソースのクロスコンパイラでサポートされている Ada マルチタスク RTOS

Ada がマルチタスク/マルチスレッドをサポートするオープンソース/無料のクロスコンパイラを利用できるのはどの RTOS ですか?

Ada を使用してプログラムしたい Atmel AT90USB162 チップがあります。私の最初のオプションは、プログラミングに AVR-Ada を使用することでしたが、タスク処理をサポートしていないため、選択の余地がありません (現在、タスク処理がサポートされている方法についての手がかりがありません)。ですから、より強力なアプローチが必要です。QNX を使用することも考えましたが、私のチップ スタンドよりもはるかに複雑です。

AVR チップが uC/OS-II と FreeRTOS をサポートしているという情報を入手しました。FreeRTOS または uC/OS-II 用の無料の Ada クロスコンパイラはありますか?

ありがとう。

0 投票する
2 に答える
1387 参照

c++ - arm-none-eabi-g++ グローバル コンストラクターの呼び出し

gcc ツール (RTOS を使用) で c++ アプリケーションをアームボードに移植しようとしています。しかし、私の static const コンストラクターは呼び出されていません。

簡単なコード:

クラス定義を提供します。しかし、これを TestInitClass::TestClassObj.getM() で呼び出すと、0 が返されます。

複数の問題があります。

  1. 私の static const は .bss セクションに割り当てられています。.ctors セクションに入っていません (これはリンカー スクリプトの問題でしょうか?!)
  2. .ctors セクションに入ったとしても、これらのコンストラクターを呼び出すにはどうすればよいですか
  3. 静的 C++ ライブラリを使用する場合、それらをどのように呼び出す必要がありますか?

ありがとう

0 投票する
3 に答える
1587 参照

embedded - uC/OS (組み込みシステム) でのコンテキスト切り替え

割り込みにより、スケジューラがコンテキストを RTOS の特定のタスクに切り替えることができるかどうかを知りたいです。私はmicroCOS OSで作業しています

これは、キースキャンを実行して文字をメールボックスに投稿するタスクです。デバウンスや自動リピートなどの機能をこのコードに追加する必要がありますが、適切に機能させるにはトリガー メカニズムを整理する必要があります。

これを達成するためにポーリングまたは割り込みを使用する方法がわかりません

0 投票する
3 に答える
645 参照

module - 分離されたアプリケーションモジュール

カーネル全体とアプリケーションソフトウェアをコンパイル/リンクせずにソフトウェアを更新する機能をサポートする組み込みRTOSを探しています。概念は、WindowsまたはUnixデスクトップシステムの場合のようになります。カーネル(カーネルから切り離された)に触れることなく、アプリケーションモジュール(コンパイル/リンクされたバイナリ)をターゲットにダウンロードします。このようなメモリ保護されたダウンロード可能なアプリケーションモジュール(DAM)をサポートするRTOSの1つは、ExpressLogic(www.rtos.com/products/threadx/)のThreadXです。

そのようなDAMコンセプトをサポートする他のRTOS(フットプリントが小さく、ターゲットCPU Cortex-M3)を知っている人はいますか?

ThreadXのDAMの経験はありますか?いくつかの承認された文献?

前もって感謝します!