Matthew Dillon, padre del sistema operativo DragonflyBSD , ha individuato un bug nelle CPU AMD. Dopo mesi di email scambiate con lo sviluppatore il chipmaker americano ha confermato l’esistenza del problema, che comunque si scatena in condizioni molto, molto particolari.
A quanto pare la falla hardware è legata all’unità di calcolo in virgola mobile e a quell’istruzione di ritorno (POP) che fa decrescere lo stack. Con il termine “stack” (“pila” in italiano) si intende una struttura dati che utilizza modalità d’accesso di tipo LIFO (Last In First Out), dove l’ultimo dato inserito è anche il primo ad essere prelevato. Come una pila di libri o riviste, l’ultima deposta in cima sarà la prima a essere a portata di mano.
Per riprodurre in laboratorio il particolare difetto e creare la condizione in cui la CPU aggiorna in modo errato il puntatore dello stack, i tecnici di Sunnyvale hanno dovuto seguire scrupolosamente le lunghe istruzioni fornite da Dillon e lavorare con il sistema operativo DragonFlyBSD, che è basato su Kernel FreeBSD e dedicato a macchine multiprocessore.
Per il giovane sviluppatore il sistema operativo non è comunque parte del problema: gli stessi test condotti su CPU Intel con DragonFlyBSD non hanno mandato in tilt il computer. Fino ad ora Dillon dichiara di aver riprodotto il bug su tre macchine diverse, con Opteron 6168 e Phenom II X4 820, ma il fastidioso buco potrebbe coinvolgere anche altre famiglie di processori AMD. Non si tratterebbe comunque, a giudicare da quanto si comprende fino a questo punto, di un problema generalizzato che possa riguardare la massa degli acquirenti di CPU di Sunnyvale. Resta una bella impresa per Dillon, che da solo è riuscito a scovare un difetto hardware in un microprocessore complesso come quelli moderni.
Roberto Pulito