問題タブ [preemption]
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.
arduino - 自動運転車向けのプリエンプティブ スケジューリング アルゴリズム
これがこの質問に最適な場所かどうかはわかりませんが、この問題は最適なスケジューリング アルゴリズムと待ち行列理論に関係していると思いますので、問題ないことを願っています。
自律的にコースをナビゲートする RC カーの製作に着手しています。アイデアは、近接センサーの1つが壁やその他の障害物を検出するまで直線を進むというもので、これにより中断とステアリング調整が行われます.
組み込みシステムのコースで RTOS スケジューリング アルゴリズムについて少し学び、ネットワーク パフォーマンスのコースでプリエンプティブ キューイングについて少し学びました。考えすぎ?主な目標は、車が衝突することなくできるだけ速く走るように開発することですが、副次的な目標として、車がぎくしゃくしないようにしたいと考えています。
大まかな意味で、このようなシステムで最高のパフォーマンスをもたらす割り込みを使用するための特定の方法、スキーム、またはタイプのスケジューリング ポリシーはありますか? 割り込みを無効にする必要がある特定のクリティカル セクションはありますか? ハードウェアの制限の参考として、おそらく 3 つの IR センサーを備えた arduino に似たマイクロコントローラーを使用する予定です。アドバイスや提案は大歓迎です。
c - preempt_count() & PREEMPT_ACTIVE == 0 になるのはいつですか?
Linux のスケジューラ コードを見ています。
私が理解しているように、prev
タスクが中断できない場合、このコードは提供されたタスクを非アクティブ化します(そしてランキューから削除します)
誰かが私に何preempt_count
のためにあるのかthread_info
、いつこの条件が満たされるかどうかを説明できますか?
multithreading - POSIX パイプ書き込みのアトミック性の意味
POSIX 標準によると、パイプへの書き込みはアトミックであることが保証されています (データ サイズが PIPE_BUF 未満の場合)。
私が理解している限り、これは、パイプに書き込もうとするスレッドが、別のスレッドの書き込みの途中でパイプにアクセスすることは決してないことを意味します。私には明らかでないのは、これがどのように達成されるか、そしてこの原子性の保証が他の意味を持つかどうかです。
これは単に、書き込みスレッドが書き込み関数内のどこかでロックを取得することを意味するのでしょうか?
パイプに書き込んでいるスレッドは、書き込み操作中にコンテキスト外でスケジュールされないことが保証されていますか?