Ho creato un semplice programma in Java:
public static void main(String[] args) throws InterruptedException {
while (true)
;
}
Se lo eseguo su una macchina Linux, mostra un utilizzo della CPU al 100%, ma non fa apparire lento il sistema operativo. Tuttavia, se eseguo esattamente lo stesso codice su Windows, mostra solo circa il 20% di utilizzo della CPU.
Sto usando Oracle JRE su Windows e OpenJDK 6 su Linux.
Mi chiedo se lo scheduler di Windows preveda i thread casualmente e quelli di Linux no?
100*N cores %
?