Spectre e Meltdown: è tempo di abbandonare i processori x86?

Nel 1978 arrivò sul mercato il processore Intel 8086, la prima soluzione a 16-bit naturale evoluzione dell’8080 ad 8-bit, considerabile come il progenitore dei moderni Kaby Lake/Coffee Lake Intel e modello per i set di istruzioni x86 attualmente utilizzati dai vendor (non solo Intel ma anche AMD, ARM etc.). Il termine x86 deriva proprio dalla presenza del numero “86” nelle sigle di numerosi chip successivi all’8086. Le architetture, ovviamente, si sono evolute nel corso del tempo implementando importanti funzionalità ed ottenendo considerevoli boost prestazionali.

A metà degli anni ’90, come ipotizzato da alcuni esperti, l’evoluzione dei processori x86 portò anche all’inconsapevole introduzione delle falle Spectre e Meltdownrimaste celate per quasi 22 anni – l’opinione pubblica ne ha appreso l’esistenza il 3 gennaio 2018 mentre i vendor ne erano a conoscenza almeno dal 2017.

L’editorialista J.Perlow di ZDNet ha colto l’occasione per tornare a parlare di un tema a lui caro, quello della necessità di “tagliare i fili” con il passato (x86) e pensare a nuove soluzioni architetturali – del resto si tratta di una tesi che aveva già sostenuto in altri articoli come quelli dedicati all’affermazione del cloud e Linux. Vediamo di riassumere i punti salienti del suo intervento.

DNA ed architetture

Perlow paragona le istruzioni x86 al DNA. Quest’ultimo è una sorta di manuale in cui si spiega come debbano essere svolte alcune funzioni base degli organismi. Le architetture spiegano invece ai processori cosa fare per ottimizzare le prestazioni – nel caso di Intel, ad esempio, una delle falle riguarda l’algoritmo predittivo delle CPU. Se vi sono dei problemi al livello del codice genetico, si manifesteranno delle malattie che, per quanto mitigabili da farmaci e simili, non potranno mai essere curate completamente. Nel mondo dell’hardware, prosegue, la situazione è analoga. “L’unica cura — ad oggi — è che l’organismo muoia [ed] un altro ne prenda il […] posto.”.

I prodotti x86 sono predominanti sul mercato e, a causa delle falle a livello architetturale, non possono essere “corretti” con una semplice patch –  Intel promette il lancio di nuovi processori privi di bug entro la fine del 2018, obiettivo che richiederà tuttavia un accurato intervento di riprogettazione. Dal 2008 ad oggi, prosegue Perlow , non si è fatto altro che tenere in vita x86: l’affermazione di Linux, la virtualizzazione, il cloud (si pensi a quanto Microsoft si è allontanata da Windows rivolgendosi a vari OS e puntando sulla nuvola, Office 365 etc.) e più recentemente la containerizzazione, tutte tecnologie che hanno reso l’industria meno dipendente dalle eredità del passato e dai workload compatibili con Windows, non sono bastati. Ma da dove bisogna iniziare?

L’eredità di OpenSPARC T2

La soluzione al problema x86, afferma Perlow, è la nascita di una nuova generazione di processori open source – in grado di adattarsi meglio ad una realtà cloud centrica ed in continua evoluzione, proprio come Linux. Un pioniere di tale approccio, seppur fallito in quanto l’azienda chiuse i battenti e venne acquisita da Oracle, fu Sun Microsystems che nel 2008 condivise l’architettura proprietaria OpenSPARC T2.

“Dobbiamo sviluppare un corrispettivo moderno di OpenSPARC in modo che ogni [fonderia] sia in grado di creare [dei chip senza l’acquisto di alcuna licenza, abbassando i costi generali per la distribuzione su larga scala – destinata al cloud, al mercato mobile ed all’Internet delle Cose]. […] [Dobbiamo abbandonare i data center privati e tutte le problematiche dell’era x86 per passare finalmente nel cloud]” aggiunge l’editorialista.

Chi offrirà all’industria una preziosa proprietà intellettuale (IP)? Difficile dirlo: escludendo Intel ed AMD, leader del settore che difficilmente rinunceranno ai propri “segreti” ingegneristici, restano ARM, OpenSPARC (Oracle) ed IBM (chip OpenPOWER). Soprattutto per quest’ultima, inseguitrice storica della top 3 AWS/Azure/GCP (Google Cloud Platform), la svolta open source potrebbe rappresentare un’importante occasione per rafforzare la propria posizione sul mercato.

Fonte: 1