Авторы ядра Linux вернулись к решению на исключение поддержки процессоров i486

3 мин
Авторы ядра Linux вернулись к решению на исключение поддержки процессоров i486

Мейнтейнер архитектуры x86, механизма блокировок и планировщика задач в ядре Linux Инго Молнар (Ingo Molnar) вновь вернулся к теме по поводу прекращения поддержки процессоров i486 в ядре Linux. Молнар опубликовал патч, удаляющий опции для сборки ядра с поддержкой процессоров 486DX, 486SX и AMD ELAN (CONFIG_M486, CONFIG_M486SX и CONFIG_MELAN).

В примечании к патчу Молнара указано, что весьма мало кто использует современные ветки ядра Linux на устаревших 32-разрядных CPU и не удалось найти ни одного основного дистрибутива, для которого продолжали бы публиковаться пакеты с ядром, собранные с опцией "M486=y".

Для поддержки CPU i486 в ядре приходится держать код, эмулирующий операции CX8 (сравнить и обменять 8 байт) и TSC (счётчик циклов CPU, используемый в планировщике задач). Подобный исходник усложняет движок, затрудняет сопровождение и временами становится источником проблем, разбор которых отнимает время у разработчиков. Прекращение поддержки i486 позволит удалить из ядра 14 104 строки кода, что значительно упростит некоторые функции в ядре за счёт исключения прослоек, эмулирующих CX8 и TSC, и позволит избавиться от библиотеки math‑emu, эмулирующей FPU.

Также вопрос целесообразности удаления поддержки CPU i486 поднимал в прошлом году и Линус Торвальдс при обсуждении очередной проблемы, проявляющейся при эмуляции CX8. Торвальдс считает, что настало время отказаться от поддержки i486, и он не видит причин, чтобы продолжать тратить время разработчиков на решение возникающих из‑за них проблем. Сопровождение процессоров i386 была удалена из ядра в 2012 году. По мнению участников дискуссии, сейчас настало время для удаления поддержки CPU 486.

Считается, что в остающихся рабочих системах i486 актуальные ядра Linux практически не используются. Специализированные варианты процессоров i486 для встраиваемых систем, такие как Intel Quark, поддерживают CX8 и TSC, их модификация не коснётся. Старые оригинальные CPU i486, обычно, продолжают использоваться с устаревшими дистрибутивами, поставляющими старые версии ядра Linux. Современные дистрибутивы Linux давно прекратили поддержку 32-разрядных систем x86 или перешли на использование при сборке опции X86_PAE, требующей наличия поддержки CX8.

13 лет назад Торвальдс прекратил поддержку в ядре Linux процессоров i386, так как они потеряли свою актуальность и стали музейной редкостью. Тогда же Торвальдс даже предложил пойти дальше в оптимизации и удалить ветку arch/x86/math-emu с эмуляцией старых сопроцессоров, что необходимо для поддержки 486SX. Но в сообществе не поддержали это предложение: кто-то заметил, что некоторые клоны 486SX до сих пор находятся в производстве. Ранее Торвальдс неоднократно говорил, что он весьма радуется, когда предлагают убрать какой-то код из ядра Linux, а не добавить свежий.

В октябре 2022 года Торвальдс предложил в новой версии ядра Linux отказаться от поддержки процессоров i486, так как они не умеют функционировать с инструкцией cmpxchg8b. Данная инструкция поддерживается старыми процессорами x86-32 и современными x86-64, в том числе Pentium и новее. По мнению создателя Linux, нужно перестать пытаться эмулировать работу данной инструкции на процессорах, которые уже никто не использует. Торвальдс полагает, что процессоры i486 потеряли свою актуальность, а те, у кого они ещё есть, могут применять предыдущие выпуски ядра Linux с долгосрочной поддержкой, которые ещё будут сопровождаться несколько лет. Два года назад это предложение не получило развития.

Читают сейчас

Отчет KPMG про агентный ИИ создал текст ИИ. Он похвалил сам себя и наврал почти во всех ссылках

53 минуты назад

Отчет KPMG про агентный ИИ создал текст ИИ. Он похвалил сам себя и наврал почти во всех ссылках

Аудиторская организация KPMG, одна из "крупный четверки", отозвала свой отчет о пользе агентного ИИ — после того как стало известно, что сам документ оказался наглядной демонстрацией главной проблемы

Google отключил оператор inurl

1 час назад

Google отключил оператор inurl

Ранее Google ограничил количество результатов поиска по оператору site, а теперь полностью отключил и inurl — поисковый оператор, который позволял находить документы содержащие нужную последовательнос

Вышло апдейт мультиплатформенного проекта RevPDF 4.5 — альтернатива Adobe Acrobat

2 часа назад

Вышло апдейт мультиплатформенного проекта RevPDF 4.5 — альтернатива Adobe Acrobat

13 июня 2026 года состоялся версия мультиплатформенного проекта RevPDF 4.5. Это маленький, бесплатный, работающий в автономном режиме редактор PDF-файлов с возможностью редактирования текста, скрытия

Microsoft выпустила версию PowerToys 0.100.0

4 часа назад

Microsoft выпустила версию PowerToys 0.100.0

Организация Microsoft выпустила PowerToys версии 0.100.0. Выпуск содержит исправления и улучшения для нескольких модулей, а наиболее важные изменения касаются повышения производительности, уменьшения

Апдейт Telegram: форматирование ботов и Markdown-файлы

5 часов назад

Апдейт Telegram: форматирование ботов и Markdown-файлы

Telegram опубликовал крупное обновление с десятками новых функций, в том числе с поддержкой мессенджера на смарт-часах, в том числе с Wear OS, а также опциями для ботов, групп и встроенного браузера.