私はJavaで簡単なプログラムを作成しました:
public static void main(String[] args) throws InterruptedException {
while (true)
;
}
これをLinuxマシンで実行すると、100%のCPU使用率が表示されますが、OSの速度が低下することはありません。ただし、Windowsでまったく同じコードを実行すると、約20%のCPU使用率しか表示されません。
WindowsではOracleJREを使用し、LinuxではOpenJDK6を使用しています。
Windowsのスケジューラーがスレッドをランダムにプリエンプトし、Linuxのスケジューラーがプリエンプトしないのではないかと思います。