Capitolo 3. Infrastruttura principale e meccanismi
3.1. Stati inattivi della CPU
Le CPU con architettura x86 supportano diversi stati attraverso i quali sezioni della CPU vengono disattivate o eseguite con prestazioni più basse. Questi stati, conosciuti come stati-C, permettono ai sistemi di risparmiare energia disattivando parzialmente le CPU non utilizzate. Gli stati-C sono numerati da C0 in ordine crescente, con numeri più alti che rappresentano funzionalità CPU decrescenti ed un risparmio energetico maggiore. Anche se gli C-States sono più o meno simili su tutti i processori, il significato di uno stato-C particolare è specifico ad un processore o famiglia di processori, quindi C3 su di un processore non è uguale ad un C3 su di un altro processore. Stati-C 0–3 sono definiti nel modo seguente:
- C0
- stato operativo o di esecuzione. In questo stato la CPU è in esecuzione e non è inattiva.
- C1, Halt
- uno stato nel quale il processore non esegue alcuna istruzione ma non è generalmente in uno stato di alimentazione bassa. La CPU è in grado di continuare con la processazione senza alcun ritardo. Tutti i processori che offrono uno stato-C devono essere abilitati a questo stato. I processori Pentium 4 supportano uno stato C1 migliorato chiamato C1E il quale rappresenta uno stato per un consumo energetico più basso.
- C2, Stop-Clock
- uno stato nel quale il clock è stato sospeso per questo processore, mantenendo il suo stato completo per i registri e le cache, dopo aver riavviato il clock sarà possibile iniziare nuovamente la processazione. Questo è uno stato opzionale.
- C3, Sleep
- uno stato nel quale il processore entra in uno stato inattivo 'sleep' e non ha bisogno di mantener aggiornata la propria cache. La sua riattivazione da questo stato richiede un periodo più lungo rispetto allo stato C2 a causa di tale comportamento. Questo rappresenta uno stato opzionale.
CPU Intel recenti con una microarchitettura "Nehalem" presentano un nuovo stato-C, C6, il quale è in grado di ridurre la fornitura di voltaggio di una CPU fino a zero, ma generalmente riduce il consumo di energia tra l'80% ed il 90%. Il kernel in Red Hat Enterprise Linux 6 include alcuni miglioramenti per questo nuovo stato-C.