IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Le noyau Linux abandonne la prise en charge des anciens processeurs i486 et des premiers Pentium d'Intel,
Ce changement supprime environ 15 000 lignes de code et améliore la sécurité du noyau Linux

Le , par Mathis Lucas

9PARTAGES

23  0 
Le noyau Linux abandonne la prise en charge des anciens processeurs i486 et des premiers Pentium d'Intel
ce changement supprime environ 15 000 lignes de code et améliore la sécurité du noyau Linux

Les travaux sur le noyau Linux 6.15 se poursuivent et l'équipe a décidé de procéder à un grand nettoyage dans le code. Dans le cadre de ce changement notable, le noyau Linux 6.15 fait ses adieux aux anciens processeurs Intel. La version stable ne prendra plus en charge les processeurs Intel 486 et les processeurs similaires en raison de leur incapacité à répondre aux exigences modernes en matière de performances et d'instructions. Ce changement supprime environ 15 000 lignes de code, ce qui permet de rationaliser le noyau et d'améliorer les performances sur les systèmes pris en charge. Cela améliore également la sécurité du noyau Linux.

Le noyau Linux 6.15 prend forme. La cinquième version candidate (RC) vient d'être publiée et la version stable pourrait être publiée vers la fin du mois de mai ou le début du mois de juin. L'un des changements les plus notables est la suppression du support de plusieurs processeurs 80486 32 bits d'Intel. Alors que certains projets comme NetBSD se concentrent sur la compatibilité, le noyau Linux donne la priorité à un développement orienté vers l'avenir.

Ces puces sont apparues au début des années 90. En d'autres termes, ils sont vraiment vieux. De nos jours, l'architecture i486 est plus une relique des livres d'histoire de l'informatique qu'une chose que les gens utilisent. Cela inclut également certains processeurs similaires tels que IDT WinChip et AMD Elan.

Pourquoi maintenant ? Parce que les logiciels modernes ont besoin d'un matériel plus rapide. Certains parmi vous se souviennent peut-être de l'époque où le 486DX à 33 MHz était la puce la plus rapide. Ces puces ne répondent pas aux exigences en matière de performances ou d'instructions pour les fonctionnalités modernes. Le correctif qui supprime cette prise en charge supprime environ 15 000 lignes de code. Il s'agit d'un nettoyage très important.

Pourquoi ces processeurs sont-ils abandonnés ?

Récemment, au cours d'une discussion sur certaines fonctionnalités du noyau sur la liste de diffusion des développeurs du noyau, Linus Torvalds a écrit ce qui suit : « j'ai vraiment l'impression qu'il est temps d'abandonner le support i486. Il n'y a aucune raison pour que quiconque gaspille une seconde d'effort de développement sur ce genre de problème ». Et la réponse n'était même pas tardive ; un contributeur du noyau a répondu avant le lendemain.


Le développeur de longue date du noyau Linux, Ingo Molnar, a publié un RFC de 15 correctifs qui augmenterait la base matérielle des systèmes x86 32 bits jusqu'aux processeurs équipés d'un compteur d'horodatage (TSC) et de l'instruction CMPXCHG8B (« CX8 »). En clair, les noyaux modernes ont besoin de certaines caractéristiques du processeur pour fonctionner correctement. Et les caractéristiques TSC et CMPXCHG8B sont désormais obligatoires.

TSC et CMPXCHG8B n'existent pas dans les puces de l'ère 486. Sans eux, le noyau ne peut pas garantir les performances ou la stabilité. La suppression du support permet également de se débarrasser des anciennes solutions de contournement. L'un des plus importants était le logiciel qui émulait les unités à virgule flottante (FPU). Ceux-ci étaient utilisés lorsque les processeurs ne disposaient pas de matériel intégré pour les mathématiques complexes.

Ce code n'est plus nécessaire. La plupart des processeurs modernes intègrent des unités à virgule flottante. Cette évolution permet de simplifier le noyau et d'améliorer les performances sur les systèmes pris en charge. Ce changement permet également d'améliorer la sécurité des utilisateurs du noyau Linux.

Ce n'est pas la première fois que Linux supprime la prise en charge d'anciens processeurs. En 2012, la prise en charge de l'Intel 386 a été abandonnée. C'était le dernier grand nettoyage. Cette fois, c'est la gamme 486 qui est sur la sellette. La proposition a été présentée pour la première fois en 2022, mais n'a pas été adoptée. Aujourd'hui, elle est enfin mise en œuvre. Si vous utilisez un ordinateur construit après la fin des années 90, vous ne risquez rien.

Mais si vous travaillez sur des projets de niche, des émulateurs ou des systèmes embarqués utilisant ces puces, vous pourriez être concerné. Pour les utilisateurs et les développeurs de tous les jours, cette mesure apporte : un noyau plus propre et plus rapide, moins de bogues hérités du passé et une maintenance plus facile pour les futures versions. En bref, Linux taille dans le gras pour rester moderne afin de s'attaquer à des choses plus intéressantes.

Il est intéressant de noter que NetBSD a récemment réintroduit la prise en charge du logiciel FPU. Cela montre que des projets différents servent des objectifs différents. NetBSD se concentre sur le fonctionnement de tous les systèmes, anciens et nouveaux. Linux, quant à lui, se concentre davantage sur l'avenir.

Conclusion

« Le maintien d'une colle de compatibilité pour des puces avec lesquelles pratiquement personne ne démarre aujourd'hui cause parfois même des problèmes que les gens passent du temps à résoudre », a averti le contributeur Ingo Molnar. Un correctif soumis pour Linux 6.15 provoque ce qui suit :

  • options CPU : M486, M486SX, les premiers M586, WinChip, Elan et d'autres anciennes puces ne sont plus prises en charge ;
  • prise en charge des plateformes : les puces de niche telles que RDC321x et AMD 486-era Elan sont supprimées ;
  • émulation FPU : la vénérable bibliothèque math-emu/ et le drapeau de démarrage no387 sont supprimés ;
  • TSC et CX8 : les deux symboles deviennent inconditionnels, effaçant les chemins de repli pour les puces qui en sont dépourvues.


Alors que Microsoft a cessé de prendre en charge ces processeurs avec la sortie de Windows XP en 2001, Linux les a maintenus en vie et en bonne santé pendant plus de 20 ans. Mais toutes les bonnes choses ont une fin, et avec la sortie prochaine du noyau Linux 6.15, le 486 et les premiers processeurs Pentium seront mis au rancart. (Notez que le système d'exploitation NetBSD prend toujours en charge plusieurs processeurs anciens et plus récents.)

Sources : billet de blogue, Linux 6.15-rc5

Et vous ?

Quel est votre avis sur le sujet ?
Que pensez-vous de la suppression par Linux du support des anciens processeurs 80486 32 bits d'Intel ?
Selon vous, quels impacts ce changement pourrait-il avoir sur le noyau Linux et les utilisateurs ?
Utilisez-vous toujours l'un de ces anciens processeurs ? Si oui, quel impact ce changement a-t-il sur vous ?

Voir aussi

Linus Torvalds critique le code de test resté dans Linux 6.15-rc1 qui ralentit le processus de build : « N'obligez pas les autres à voir cette chose dégoûtante »

Linus Torvalds exprime son mécontentement à l'égard des systèmes de fichiers insensibles à la casse : « les noms insensibles à la casse sont terriblement erronés », mais certains ne partagent pas son avis

Le noyau Linux 6.14 est disponible avec un pilote NTSYNC fonctionnel destiné à améliorer les performances des jeux Windows sur Linux fonctionnant avec Wine et un meilleur équilibrage des lectures Btrfs RAID1
Vous avez lu gratuitement 11 articles depuis plus d'un an.
Soutenez le club developpez.com en souscrivant un abonnement pour que nous puissions continuer à vous proposer des publications.

Une erreur dans cette actualité ? Signalez-nous-la !

Avatar de papajoker
Expert confirmé https://www.developpez.com
Le 12/05/2025 à 13:32
Citation Envoyé par meylodie Voir le message
Pour les vieux ordinateurs, comme ceux qui fonctionnent avec un CPU dual-core ou core2duo, 2 Go de RAM
Attention ! ici, on parle de 486, des pc avec 4Mo.. 16Mo de ram, a l'époque il était impensable d'avoir "seulement" 1Go
7  0 
Avatar de N_BaH
Modérateur https://www.developpez.com
Le 09/05/2025 à 23:47
c'est un passage important, qui mériterait bien que le noyau change de version 6.14 -> 7.0
5  0 
Avatar de Obsidian
Modérateur https://www.developpez.com
Le 16/05/2025 à 10:41
Citation Envoyé par disedorgue Voir le message
Moi, je me rappelle que mon core2duo (32 bits) je l'avais gonfler avec 3go de ram sans problème
Personnellement, j'ai monté ma machine fin 2008 et c'est toujours elle que j'utilise actuellement. Un Core 2 Quad Q9550 avec 8 Go de DDR3 (parce que ma carte-mère plafonne). Il fonctionne toujours parfaitement sous Fedora 41.

À l'époque, le modèle de CPU était déjà sur sa fin de vie, mais ça restait encore la classe de disposer de quatre cœurs et pas deux. À l'usage, c'est également très confortable, car le système est nettement plus réactif même lorsqu'il est très chargé. Il y a toujours un thread disponible quelque part pour permettre au noyau de répondre même quand les autres sont bloqués dans des I/O.

Ce n'est certes pas notre vénérable 486DX33 qui était une très belle machine à l'époque (c'était aussi le début des vraies machines dites « multimédia ») mais il est de fait que le ralentissement du remplacement des technologies a déjà commencé, aussi bien à cause des « murs techniques » de plus en plus difficiles à franchir que du pouvoir d'achat des gens qui s'amenuisent. À l'époque, je l'avais équipée d'une carte graphique EN9800GT. Quand elle est tombée en panne, j'ai dû la remplacer par une GT730 et il est exclu pour moi, en l'état, d'en avoir une plus puissante.

Naturellement, les 486 commencent à être vraiment lointains et surtout, il n'est plus nécessaire de mettre à jour leur noyau non plus à part pour les mises à jour de sécurité, qui de toutes façons sont rétroportées sur les versions stables, au moins dans le cas de Linux. Par contre, il est audacieux de faire l'hypothèse que plus personne n'utilise de vieilles machines, surtout dans les pays en voie de développement. Un audit bien mené montrerait sans doute que cela affecte beaucoup plus de personnes que prévu.
3  0 
Avatar de meylodie
Membre régulier https://www.developpez.com
Le 11/05/2025 à 21:41
Bonjour,

Autant je suis pour faire durer le vieux matériel quand il est encore fonctionnel, autant l'annonce d'une optimisation significative dans les sources du noyau Linux, pour l'évolution des distributions est une bonne nouvelle.

Il est clair que les noyaux actuels sont bien plus gros en termes de kilobytes que ceux d'il y a quelques années, sans compter le volume des distributions grand public qui gonfle beaucoup (sans que je comprenne bien pourquoi).

Pour les vieux ordinateurs, comme ceux qui fonctionnent avec un CPU dual-core ou core2duo, 2 Go de RAM, il n'est pas impensable de leur permettre de continuer à employer des éditions de kernels moins récentes, même si des questions de sécurité informatique sont à considérer : parce que les très vieux PC sont soit la propriété d'utilisateurs ayant des besoins d'usage très limités, soit la propriété d'entreprises qui les utilisent dans des conditions spécifiques et souvent hors réseau.
2  0 
Avatar de smarties
Expert confirmé https://www.developpez.com
Le 12/05/2025 à 15:56
Les vieux PC d'avant 2005 doivent commencer à se faire bien rare. J’accueille favorablement ce nettoyage du noyau... mais ça aurait pu être en 7.x comme dit précédemment.

Pour faire de la bureautique et du web, le matériel de 2008+ suffit souvent avec une distribution Linux légère, ça peut être la vidéo avec x264 et x265 qui peuvent poser problème pour le manque de puissance.

On trouve des vieux PC d'avant 2012 autour des 50€, pour pouvoir continuer ses activités avec un PC qui suit c'est un "investissement" raisonnable
2  0 
Avatar de Obsidian
Modérateur https://www.developpez.com
Le 10/05/2025 à 19:54
Citation Envoyé par N_BaH Voir le message
c'est un passage important, qui mériterait bien que le noyau change de version 6.14 -> 7.0
Ce serait un point de repère utile, en effet.
Linus ajoute lui-même qu'il n'y a aucun critère spécifique au passage à une version majeure, autre que celui de ne pas faire grimper les chiffres trop haut et, je cite, « de ne pas être trop prévisible ».

Cela dit, la v4 est montée jusqu'à v4.20 et la v5 jusqu'à v5.19. Nous en sommes à v6.14, ce serait donc envisageable, mais je pense malgré tout qu'on devrait suivre la tendance normale quand même.
1  0 
Avatar de meylodie
Membre régulier https://www.developpez.com
Le 12/05/2025 à 16:14
Citation Envoyé par papajoker Voir le message
Attention ! ici, on parle de 486, des pc avec 4Mo.. 16Mo de ram, a l'époque il était impensable d'avoir "seulement" 1Go
Je reconstruis quelques distributions pour les simples utilisateurs dotés de vieux pc. Des fois, la distribution a une option i486 ça peut profiter à des PC pouvant supporter i586 mais il n'y a pas de version de kernel i586.

Bon, c'était en 2022 : https://linuxvillage.org/blog/2022/0...to-antix-i486/ là, il n'y en a plus en téléchargement.
1  0 
Avatar de disedorgue
Expert éminent sénior https://www.developpez.com
Le 12/05/2025 à 19:55
Moi, je me rappelle que mon core2duo (32 bits) je l'avais gonfler avec 3go de ram sans problème
1  0 
Avatar de Eric80
Membre éprouvé https://www.developpez.com
Le 19/05/2025 à 15:43
Pour ceux qui parlent de Core2Duo, ce sont des cpu x86-64-v1, donc HS ici.

l article parle des "1ers pentium d Intel". Mais lesquels au juste?
Le tout 1er Pentium, sorti en 1993, a justement ajouté cmpxchg8b: https://en.wikipedia.org/wiki/Pentium_(original)

Je pense qu on parle plutot des 586 "compatibles" des concurrents d intel qui ne sont PAS des Pentium. Comme les AMD 5x86 (X5) qui existe en version 133 Mhz mais basé sur une archi 486! Le 5x86 était AVANT le K5 (et le K6 donc)

En cherchant cela, et puisque la conclusion parle de Windows XP, je vois qu un fou a modifié XP pour justement passer outre le cmpxchg8b et le faire tourner un 486:
https://msfn.org/board/topic/186080-...g-on-a-486-cpu
0  0 
Avatar de Eric80
Membre éprouvé https://www.developpez.com
Le 19/05/2025 à 15:51
sur le fond du sujet maintenant: la majorité des distributions Linux pour ordinateurs exigent un x64 depuis plusieurs versions.
Beaucoup de distributions se basent sur Debian. Outre les populaires Ubuntu et Mint, les distrib ultra light comme Puppy Linux ou DSL (Damm Small Linux, désormais en version 2024) sont basées sur du Debian 12 donc avec les contraintes de Debian:
https://www.debian.org/releases/stab...en.html#idm186
"Debian GNU/Linux bookworm will not run on 586 (Pentium) or earlier processors. "
Donc 686 mini.
Et pour la version Trixie qui sort prochainement, il n y aura plus d installeur pour les CPU IA32, donc x64 pour une install fraiche. L upgrade 12->13 sur le IA32 sera encore possible, mais tjs à partir des 686.

Tiny Core est peut etre la dernière distro pour les ordi des années 90:
"minimum CPU is an i486DX. A Pentium II CPU and 128 MB of RAM are recommended".
"Core v16.0 updates the linux kernel version to 6.12.11" donc si il y a une version 17 ou 18 en noyau 6.15, ce sera peut etre la seule distro limitée par le noyau.
edit: il y a un fou qui a installé la version 15 sur un pentium 133 avec 128 Mb de RAM:
youtube.com YouTube
6 min pour booter sur son PC (core charge tout du disque en RAM): cela fonctionne mais reste très lent!

Donc on peut bien se demander QUI utilise encore des PC à base de l archi 486!
Cela ne concerne probablement que des systèmes embarqués, puisque certains systèmes sont prévus pour fonctionner 30-40 ans. On parle justement de CPU > 30 ans.
On se rappelle aussi les contraintes de la NASA.
Mais tout ces vieux systèmes ont soit des OS propriétaires sans Linux, soit sont restés à de vieux noyaux bien matures et donc n auront jamais besoin de ce noyau 6.15.
Et ces vieux systèmes sont sur des réseaux fermés, cad PAS sur internet..

Donc in fine, la simplification du noyau de Linux est bien justifiée car il va affecter quasi personne.
0  0