組み込みLinuxデバイスの電源管理サポートを実装しています。要件は、システムで実行するものがなく、次のタイマーイベントで十分な場合に、メモリへのシステムサスペンドを実行することです。既存のカーネルenter_state()関数に基づくつもりです。
最初は、システムに実行するものが何もないときに実行されるため、cpu_idle()関数(アイドルカーネルスレッド)からコードを呼び出すことを計画しました。しかし、enter_state()が最終的にschedule()関数を呼び出すという問題が発生し、「bad:アイドルスレッドからのスケジューリング!」というエラーメッセージが表示されます。
そのため、独自のカーネルスレッドを作成する必要があると結論付けましたが、優先度は最も低く静的です。私の質問は、それをどのように行うことができるかということです。
そして別の質問:そのような実装に潜在的な問題がありますか?
質問する
1376 次