Innanzitutto, Meltdown interessa solo le CPU Intel. È un exploit relativamente semplice che riguarda tutte le CPU Intel con esecuzione fuori servizio, che è la maggior parte di tutto dal 1997 ad eccezione di alcune CPU Atom.
Riguardo a Spectre, c'è ancora molta confusione là fuori su quali tipi di CPU ne sono influenzati. C'è un articolo su tenfourfox su PowerPC dove è stato stabilito che alcuni vecchi chip PowerPC come il 7447 non hanno abbastanza esecuzione fuori ordine per essere vulnerabili a Spectre. Suppongo che anche le vecchie CPU AMD, come le architetture K6 o K7, potrebbero non avere abbastanza capacità speculative (fuori servizio) da essere influenzate.
Per almeno una variazione di Spectra, due istruzioni devono essere eseguite in modo speculativo. Il primo è un accesso di memoria a una posizione che può essere al di fuori di ciò a cui il programma è autorizzato ad accedere, e quindi la seconda è un'istruzione di caricamento della memoria dipendente che utilizza i dati caricati dalla prima istruzione come indirizzo. Ciò richiede che due istruzioni siano complete tutte in anticipo. Facendo ciò, le tracce dell'indirizzo di quella seconda lettura di memoria che era basata su dati illegalmente accessibili dalla prima lettura di memoria sono lasciati nella cache e possono essere estratti lentamente usando una sorta di metodo di cronometraggio di prova ed errore. L'istruzione di accesso alla memoria illegale deve essere eseguita dopo un ramo che la CPU non prevede in modo corretto, altrimenti il programma si arresterebbe in modo anomalo quando l'istruzione viene effettivamente eseguita. Quando la CPU si dirama in un altro modo rispetto a quanto previsto, scarica semplicemente le istruzioni eseguite in modo speculativo e continua, ma la cache rimane influenzata dall'accesso alla memoria causato da quelle istruzioni.
Non sono un esperto su questo, quindi ci sono probabilmente alcuni errori tecnici ma il quadro generale di ciò che sta accadendo dovrebbe essere corretto.