Linuxカーネル実行キューの拡張優先順位テーブル

Linuxカーネル実行キューの拡張優先順位テーブル

私は完了するのに苦労しているハードウェアの課題があります。それはおそらく、Linuxカーネル全体を初めて使うからです。

既存のスケジューリングアルゴリズムに新しいスケジューリング戦略を追加する必要があります。これらの新しいポリシープロセスは優先順位が異なり、RTプロセスの後に通常のプロセスの前に実行する必要があります。

私たちは新しいポリシープロセスに対応するためにprio_arrayテーブルサイズを拡張し、すべての一般プロセスを140に「移動」してみました(新しいポリシーの優先順位は140です)。これで、通常のプロセス優先順位を保存し、プロセスを実行キューに挿入するときに「shift」のみを使用します。

これで問題は、Linuxカーネルがロードされずに再起動され続けることです。私たちは想像できるものをすべて試しましたが、何も機能しませんでした。

私たちのアイデアは実現可能ですか?この問題を引き起こすどのような変更を適用しましたか?

私たちがしなければならないことを達成するより良い方法はありますか?

関連情報