## Suppression du support i486 dans le noyau Linux : le patch de Molnar et le contexte historique
Ingo Molnar, responsable de l'architecture x86 dans le noyau Linux, a préparé un patch pour supprimer complètement les options CONFIG_M486, CONFIG_M486SX et CONFIG_MELAN. Cela exclura le support des processeurs 486DX, 486SX et AMD ELAN des builds modernes du noyau.
Conséquences techniques de la suppression
Le support i486 nécessite d'émuler des instructions clés : CX8 (cmpxchg8b pour les opérations atomiques 64 bits) et TSC (Time Stamp Counter pour l'ordonnanceur de tâches). Ce code ajoute de la complexité au noyau, complique le débogage et déclenche périodiquement des bogues.
Supprimer ces couches réduira le code source de 14 104 lignes. En particulier :
- Les émulateurs CX8 et TSC disparaîtront.
- La bibliothèque math-emu pour le FPU sur 486SX s'effacera.
Cela optimisera l'ordonnanceur et les sous-systèmes de verrouillage, allégeant la charge des développeurs.
Note : Aucune distribution majeure n'expédie de noyaux récents avec M486=y activé. Les branches Linux actuelles sur du matériel 32 bits i486 sont à peine utilisées.
Position de Linus Torvalds
Linus Torvalds a soulevé cette question à plusieurs reprises. En 2022, il a souligné que l'émulation de cmpxchg8b sur i486 est inutile : cette instruction existe sur Pentium et tous les CPU x86-64. Torvalds a suggéré d'utiliser les branches LTS pour les systèmes legacy.
Plus tôt, en 2012, le support i386 a été abandonné. Il y a treize ans, Torvalds avait proposé de supprimer math-emu, mais la communauté avait temporisé en raison de clones 486SX encore en production. Le consensus a depuis évolué.
Compatibilité avec les systèmes embarqués
Les puces spécialisées comme Intel Quark (basées sur i486) supportent nativement CX8 et TSC — le patch ne les touchera pas. Les i486 originaux tournent sur des distributions obsolètes et d'anciens noyaux.
Les distributions 32 bits modernes utilisent X86_PAE, qui requiert CX8. Le support x86 32 bits pur est minimal.
- Avantages de la suppression :
1. Réduction du code de plus de 14 k lignes.
2. Ordonnanceur et verrous simplifiés.
3. Moins de bogues liés à l'émulation.
4. Focus sur les architectures pertinentes.
Points clés
- Le patch de Molnar supprime CONFIG_M486*, les émulateurs CX8/TSC et math-emu — moins 14 104 lignes de code.
- Les i486 ne sont plus utilisés avec les noyaux modernes ; les distributions sont passées à PAE ou 64 bits.
- Torvalds l'approuve : l'émulation cmpxchg8b est obsolète — utilisez LTS pour le legacy.
- Les Quark embarqués sont indemnes — ils ont CX8/TSC natifs.
Ces changements rendront le noyau plus propre pour les développeurs intermédiaires et seniors travaillant sur x86.
— Editorial Team
Aucun commentaire pour le moment.