Sappiamo di misure a breve termine per mitigare le vulnerabilità Meltdown e Spectre in alcuni microprocessori in cui l'esecuzione speculativa ha effetti misurabili sui temporizzatori della cache (principalmente patch al microcode, sistemi operativi e qualsiasi applicazione che contenga limiti di affidabilità).
Quali sono le soluzioni a lungo termine al problema?
Ovviamente, è improbabile che soluzioni semplici come "non speculare" o "ignora la cache durante la speculazione" siano accettabili a causa delle considerazioni sulle prestazioni che hanno introdotto la speculazione in primo luogo.
Le istruzioni ipotizzate potrebbero utilizzare una cache separata, che viene copiata sulla cache principale solo se la speculazione ha esito positivo? In caso contrario, perché no?
I processori potrebbero aggiungere informazioni privilegiate alle voci della tabella di pagina, per rendere automatico l'isolamento della tabella delle pagine del kernel (e ridurne l'impatto sulle prestazioni)?
Ci sono altre modifiche al design che migliorano la sicurezza senza un grande impatto sulle prestazioni?