2012-02-29 6 views

答えて

1

リアルタイムスレッド(つまりSCHED_RR)は、常に非リアルタイムのスレッドを先取りします(SCHED_OTHER)。

つまり、SCHED_OTHERスレッドは、SCHED_RRスレッドがブロックされたときにのみ実行されます。

+0

リアルタイムポリシーのスレッドが長時間続くと仮定すると、SCHED_OTHERポリシーのスレッドはどうなりますか? – Gughan

+0

@ Gughan:SCHED_OTHERスレッドは、リアルタイムスレッドがCPUをあきらめるまで待機します。リアルタイムスレッドが決してCPUをあきらめないなら、SCHED_OTHERスレッドは決して実行する機会を得ません。 – janneb

0

LinuxがPOSIXを実装していると@jannebは言っています。この質問はまたposixをタグ付けしているのでしかし、私は何POSIX 7 says about itを引用しなければならない。

他のスレッドはSCHED_FIFO、SCHED_RR、またはSCHED_SPORADICの下で実行されているシステムのSCHED_OTHERポリシーとスケジューリングスレッドの効果は実装です定義される。

私は、POSIXでは何が起こっているのかを特定していないと解釈できます。

関連する問題