ARMv7 組み込み OMAP システムの構成を以下に示します。sched_rt_period_us = 1000000 = 1 秒 sched_rt_runtime_us = 950000 = 0.95 秒
そして、SCHED_RR および pri = 1 で実行されている 4 つのリアルタイム プロセスがあり、sched_rr_get_interval () は 93750000 ナノ秒、つまりシステムで 0.093750 秒を返しました。
SCHED_RR と pri が 1 で、同じデフォルトの rr_interval が 0.09375 秒の新しいプロセスを追加しました。
この構成によると: 毎秒 5 つの RT プロセスをそれぞれ 2 回実行する必要があり (0.09375 * 10 = 0.9375 秒)、残りの 1 秒の時間間隔は非 RT タスクによって使用されます。つまり、1.0 - 0.9375 = 0.0625 秒です。 .
しかし、実行からわかるように、新しく追加された 5 番目のタスクはタイムラインを逃し、ランダムにのみ実行され、1 秒ごとまたは不確定な出力が生成されます。上記の構成に従って毎秒 2 回実行されるように、この新しいプロセスを決定論的にする方法を教えてください。
2 の静的 pri を設定しようとしましたが、SCHED_FIFO でもチェックしましたが、同じ結果が得られました。
または、これらの計算に欠けているものはありますか。
私は使用しています: Linux xxxx 2.6.33 #2 PREEMPT Tue Aug 14 16:13:05 CEST 2012 armv7l GNU/Linux