Linux-Kernel-Entwickler arbeiten an der Entfernung der Unterstützung für i486-Prozessoren

Ingo Molnar, der Maintainer der x86-Architektur, des Locking-Mechanismus und des Scheduler im Linux-Kernel, hat einen Vorschlag zur Diskussion gestellt, der eine Reihe von Patches umfasst, die die Unterstützung für 486-Prozessoren (M486, M486SX, AMD ELAN) und die frühen Serien der 586-Prozessoren aus dem Kernel entfernen. Im Kernel soll nur die Möglichkeit erhalten bleiben, mit x86-Prozessoren zu arbeiten, die die CX8-Anweisung (CMPXCHG8B) und den TSC (Time Stamp Counter) unterstützen, die mit den Pentium-CPUs eingeführt wurden.

Es wird darauf hingewiesen, dass zur Unterstützung von 486-CPUs im Kernel Code gehalten werden muss, der die CX8-Operationen (Vergleichen und Austauschen von 8 Bytes) und den TSC (Zähler für CPU-Zyklen, der im Scheduler verwendet wird) emuliert. Solcher Code kompliziert den Kernel, erschwert die Wartung und wird von Zeit zu Zeit zur Quelle von Problemen, deren Analyse den Entwicklern Zeit raubt. Die Einstellung der Unterstützung für 486 ermöglicht es, 14.104 Codezeilen aus dem Kernel zu entfernen, was einige Funktionen im Kernel erheblich vereinfacht, indem die Schichten, die CX8 und TSC emulieren, ausgeschlossen werden und die math-emu-Bibliothek, die die FPU emuliert, entfernt werden kann.

Einen Tag vor der Veröffentlichung der Patches stellte Linus Torvalds die Frage nach der Sinnhaftigkeit der Unterstützung des 486ers während einer Diskussion über ein weiteres Problem, das bei der Emulation von CX8 auftrat. Linus ist der Meinung, dass es an der Zeit ist, die Unterstützung für den 486er Prozessor aufzugeben, und sieht keinen Grund, weiterhin Entwicklerzeit auf die Lösung der damit verbundenen Probleme zu verwenden. Die Unterstützung der 386-Prozessoren wurde bereits 2012 aus dem Kernel entfernt. Den Diskussionsteilnehmern zufolge ist jetzt der richtige Zeitpunkt, um die Unterstützung für den 486er CPU zu entfernen. Im Oktober 2022 hatte Linus bereits einen ähnlichen Vorschlag unterbreitet, der jedoch keine weiteren Fortschritte erhielt.

In den nach wie vor verwendeten 486-Systemen kommen aktuelle Linux-Kerne praktisch nicht mehr zum Einsatz. Spezialisierte Varianten der 486-Prozessoren für Embedded-Systeme, wie der Intel Quark, unterstützen CX8 und TSC und werden von dieser Änderung nicht betroffen sein. Alte originale 486-CPUs werden normalerweise weiterhin mit veralteten Distributionen verwendet, die alte Kernel-Versionen von Linux bereitstellen. Moderne Linux-Distributionen haben längst die Unterstützung für 32-Bit-x86-Systeme eingestellt oder sind auf die Verwendung der X86_PAE-Option umgestiegen, die die Unterstützung von CX8 voraussetzt.

Quelle: opennet.ru

Zuverlässiges Webhosting mit DDoS-Schutz, VPS- und VDS-Server kaufen 🔥 Zuverlässiges Webhosting mit DDoS-Schutz, VPS- und VDS-Server kaufen | ProHoster