4

2 つの異なる CPU に 2 つのスレッドを固定する必要がある Linux カーネル モジュールを作成しています。カーネルにエクスポートした後、sched_setaffinity() を使用する予定です。同じための他のエクスポートされた関数はありますか?

また、cpumask に 1 つの CPU のみを設定した場合、スレッドはその CPU に移動してすぐに有効になりますか? そうでない場合、どうすれば同じことを強制できますか? sched_setaffinity() の直後に schedule() を呼び出すと役立ちますか?

4

1 に答える 1

2

のマニュアルページはsched_setaffinity言う

pidで指定されたプロセスが で指定された CPU のいずれかで現在実行されていない 場合、そのプロセスmaskは で指定された CPU の 1 つに移行されmaskます。

私の解釈では、この移行は への呼び出しsched_setaffinityが返される前にすぐに発生します。

于 2010-10-08T13:08:34.560 に答える