私はある種の新しい Linux タスク スケジューラを実装しようとしているので、この記事http://www.eetimes.com/design/embedded/4204929/Real-Time-Linux-Scheduling-Part-1 が本当に役に立ちます。ただし、/kernel-source-code/include/linux/sched.h に新しいスケジューリング マクロを定義する必要があるだけでなく、/usr/include/bits/sched.h にも同じものを定義する必要があるとのことでした。
では、スケジューラはカーネルで動作するため、ユーザー空間のヘッド ファイルを変更する必要があるのはなぜですか。ユーザー空間のヘッド ファイルがある理由がわかりません。とにかく、ユーザー空間プログラムは、カーネルで定義された関数を直接使用することはできません(システムコールを介さない限り)よね?また、新しいスケジューラを実装するためにユーザー空間ファイルも変更する必要がある場合、ユーザーは新しいカーネル イメージを使用する必要があるだけでなく、ユーザー空間ファイルも変更する必要があるため、スケジューラを移植するにはどうすればよいでしょうか?