Novità nel kernel Linux: rimozione del supporto per i486 e i primi Pentium

Negli ultimi anni, il kernel Linux ha continuato a supportare architetture hardware ormai considerate autentici pezzi da museo, come le CPU Intel 80486 (note anche come i486) e alcune delle prime CPU 586, entrambe della famiglia di CPU Intel x86 a 32 bit. Questi processori, lanciati tra la fine degli anni ’80 e l’inizio degli anni ’90, rappresentano una tappa fondamentale nella storia dell’informatica, ma oggi sono praticamente scomparsi dall’uso quotidiano. Nonostante ciò, fino a poco tempo fa, il kernel Linux includeva ancora codice specifico per garantire la compatibilità con queste piattaforme storiche.
Il supporto continuato per i486 era motivato dal principio di massima compatibilità che ha sempre guidato lo sviluppo del kernel Linux. Questo approccio ha permesso a numerose distribuzioni GNU/Linux di funzionare su un vastissimo parco hardware, inclusi sistemi datati utilizzati in ambiti di nicchia, come il retrocomputing (utilizzo di computer e tecnologie obsolete per scopi di studio, collezionismo o applicazioni specifiche) o l’embedded industriale (sistemi informatici integrati all’interno di macchinari e dispositivi per il controllo e l’automazione dei processi industriali).Tuttavia, mantenere questa compatibilità richiede un notevole sforzo di manutenzione: ogni nuova funzionalità, correzione o ottimizzazione deve essere verificata anche su hardware ormai obsoleto, spesso introducendo “collanti di compatibilità” (compatibility glue) e percorsi alternativi nel codice.
Linus Torvalds e la svolta storica
La proposta di rimuovere il supporto per i486 e le prime generazioni di Pentium non è nuova: fu avanzata da Linus Torvalds già nell’ottobre del 2022. Ora, dopo anni di dibattiti, sembra che la questione sia finalmente giunta a una risoluzione definitiva.
Negli ultimi tempi, la discussione su questo tema si è intensificata nella mailing list del kernel Linux, dove Torvalds ha espresso in modo chiaro e diretto la sua posizione in un recente messaggio:
Non penso davvero che l’hardware di classe i486 sia ancora rilevante. Nessuno dovrebbe sprecare tempo nello sviluppo per questi casi.
Il messaggio è stato subito raccolto dalla comunità, in particolare da Ingo Molnar, sviluppatore di lungo corso, che ha proposto una serie di modifiche radicali per innalzare i requisiti minimi dell’hardware delle piattaforme x86 a 32 bit.
Novità nel kernel Linux: rimozione del supporto per i486 e i primi Pentium
La proposta di Molnar si traduce in una raccolta di 15 modifiche (proposte di aggiornamento del codice) che eliminano il supporto per le CPU prive di alcune istruzioni fondamentali, come il Time-Stamp Counter (TSC), un registro hardware a 64 bit che conta i cicli di clock dall’avvio del processore, e la CMPXCHG8B (CX8), un’istruzione di comparazione e scambio su 8 byte, essenziale per operazioni atomiche di sincronizzazione nei processori moderni.
In termini pratici, ciò significa che il kernel Linux non sarà più compilabile né eseguibile su processori i486 e sulle prime versioni di Pentium che non dispongono di queste istruzioni, ovvero su hardware prodotto prima del 1995 circa.
Le principali modifiche introdotte includono:
- Rimozione delle opzioni di compilazione per le CPU M486, M486SX, le prime M586, WinChip, Elan e le relative peculiarità hardware
- Rimozione del supporto a piattaforme specifiche come RDC321x e AMD Elan, nate nell’era dei 486.
- Rimozione dell’emulazione della FPU (Floating Point Unit), ovvero la libreria math-emu e il flag di avvio no387, utilizzati per simulare il coprocessore matematico nei sistemi che ne erano privi, come i vecchi 80386 e 80486SX.
- Le istruzioni TSC (Time-Stamp Counter) e CX8 (CMPXCHG8B) diventano obbligatorie: il kernel Linux non includerà più percorsi alternativi per CPU che non le supportano.
Questa operazione di pulizia del codice porterà alla rimozione di circa 14.000 righe di codice distribuite su 80 file, con un incremento netto di appena 38 righe. Anche escludendo l’emulatore FPU, il kernel Linux risulterà comunque più snello di oltre 1000 righe, semplificando la manutenzione futura.
Impatto sulla comunità e sulle distribuzioni GNU/Linux
L’abbandono del supporto per i486 e delle prime generazioni di Pentium (586) avrà un impatto trascurabile sulla maggior parte degli utenti. Le ultime CPU i486 sono state prodotte fino al 2007, ma già da tempo le distribuzioni GNU/Linux hanno smesso di fornire immagini precompilate per questa architettura. Oggi, soltanto una ristretta cerchia di appassionati di retrocomputing e progetti di emulazione continua a fare uso di questi processori. Per questi scenari estremi, restano comunque disponibili le versioni precedenti del kernel Linux con supporto a lungo termine (LTS), oltre alla possibilità di utilizzare emulatori avanzati per la riproduzione di sistemi storici.
Un altro passo verso la modernizzazione del kernel Linux
La rimozione del supporto per i486 segna il primo abbandono di una famiglia di CPU dal 2012, quando il kernel Linux cessò di supportare le CPU i386. Da allora, il focus dello sviluppo si è spostato su hardware più moderno, garantendo migliori prestazioni, maggiore sicurezza e una stabilità ottimale per tutte le distribuzioni GNU/Linux.
Secondo le discussioni nella mailing list del kernel Linux, questa transizione potrebbe diventare effettiva già a partire dalle versioni 6.15 o 6.16 del kernel Linux, con la progressiva eliminazione del codice legacy. La proposta di Ingo Molnar ha suscitato un ampio dibattito tra sviluppatori ed esperti, e chi desidera approfondire può consultare direttamente la mailing list, inserita nelle fonti al piede dell’articolo, dove vengono illustrati tutti i dettagli tecnici e le motivazioni di questa storica decisione.
Fonte: https://lore.kernel.org/lkml/CAHk-=wi6k0wk89u+8vmOhcLHPmapK13DDsL2m+xeqEwR9iTd9A@mail.gmail.com/
Fonte: https://lore.kernel.org/lkml/20250425084216.3913608-1-mingo@kernel.org/
Fonte: https://www.phoronix.com/news/Linux-RFC-Remove-i486-Early-586
Fonte: https://www.tomshardware.com/pc-components/cpus/linux-developers-want-to-remove-i486-and-i586-pentium-cpu-support-to-unburden-kernel-developers
Fonte: https://linuxiac.com/linux-kernel-to-drop-support-for-legacy-i486-and-early-586-cpus/
Se vuoi sostenerci, puoi farlo acquistando qualsiasi cosa dai diversi link di affiliazione che abbiamo nel nostro sito o partendo da qui oppure alcune di queste distribuzioni GNU/Linux che sono disponibili sul nostro negozio online, quelle mancanti possono essere comunque richieste, e su cui trovi anche PC, NAS e il ns ServerOne. Se ti senti generoso, puoi anche donarmi solo 1€ o più se vuoi con PayPal e aiutarmi a continuare a pubblicare più contenuti come questo. Grazie!
Hai dubbi o problemi? Ti aiutiamo noi!
Se vuoi rimanere sempre aggiornato, iscriviti al nostro canale Telegram.Se vuoi ricevere supporto per qualsiasi dubbio o problema, iscriviti alla nostra community Facebook o gruppo Telegram.
Cosa ne pensi? Fateci sapere i vostri pensieri nei commenti qui sotto.
Ti piace quello che leggi? Per favore condividilo con gli altri.





