Инго Молнар (Ingo Molnar), основен разработчик на архитектурата x86, механизма на блокировките и планировчика на задачи в ядрото на Linux, предложи за обсъждане набор от пачове, които премахват от ядрото поддръжката на процесорите 486 (M486, M486SX, AMD ELAN) и началните серии на процесорите 586. В ядрото се предлага да остане само възможността за работа с x86 процесори, които поддържат инструкциите CX8 (CMPXCHG8B) и регистъра TSC (Time Stamp Counter), които се появиха с CPU Pentium.
Отбелязва се, че за да може ядрото да поддържа CPU 486, трябва да поддържа код, който емулира операциите CX8 (сравни и замени 8 байта) и TSC (брояч на цикли на CPU, използван в планировчика на задачи). Този код усложнява ядрото, затруднява поддръжката и понякога става източник на проблеми, разискванията по които отнемат време на разработчиците. Прекратяването на поддръжката на 486 ще позволи премахването на 14104 реда код от ядрото, което значително ще опрости някои функции в ядрото чрез изключване на промеждутъците, емулиращи CX8 и TSC, и ще позволи освобождаването от библиотеката math-emu, която емулира FPU.
Един ден преди публикуването на пачовете, въпросът за целесъобразността на премахването на поддръжката на 486 беше повдигнат от Линус Торвалдс по време на обсъждането на пореден проблем, свързан с емулацията на CX8. Линус смята, че е време да се откаже поддръжката на CPU 486 и не вижда причини да продължава да се харчи време от разработчиците за решаване на проблемите, произтичащи от тях. Поддръжката на процесорите 386 бе премахната от ядрото през 2012 г. Според участниците в дискусията, сега е времето за премахване на поддръжката на CPU 486. През октомври 2022 г. Линус вече публикува подобно предложение, но то не получи развитие.
В системите 486, които все още са в употреба, актуалните ядра на Linux практически не се използват. Специализирани варианти на процесорите 486 за вградени системи, като Intel Quark, поддържат CX8 и TSC, и промените в тях няма да се отразят. Стари оригинални CPU 486 обикновено продължават да се използват със стари дистрибуции, предоставящи стари версии на ядрото на Linux. Съвременните дистрибуции на Linux отдавна са прекратили поддръжката на 32-битови x86 системи или са преминали на използване на опцията X86_PAE при компилация, изискваща поддръжка на CX8.
Източник: opennet.ru
