Как стать автором
Обновить
1693.35
МТС
Про жизнь и развитие в IT

Из Linux уберут поддержку десятков ARM-чипов. Что происходит?

Время на прочтение3 мин
Количество просмотров32K

Привет, Хабр! На связи Виктор Сергеев, редактор «МТС Диджитал». Сегодня обсудим «большую чистку» ядра Linux.

Для начала стоит избавиться от поддержки десятков устаревших ARM-процессоров. Многие чипы почти не используются, смысла в их поддержке в ядре Linux все меньше. Но как их убрать, чтобы изменения прошли безболезненно для пользователей? У одного из самых известных контрибьюторов Linux Арндта Бергмана есть план. Подробности — под катом.

Что за план

Бергман предлагает устроить «большую чистку» для ядра Linux и компиляторов из набора GCC (GNU Compiler Collection) — это набор компиляторов для языков программирования в рамках проекта GNU. GCC — открытое ПО. Оно распространяется фондом свободного программного обеспечения на условиях GNU GPL и GNU LGPL.

Если коротко, сначала Бергман хочет убрать поддержку ARMv3 (семейство ARM6) и ARMv4 (ARM 11). Эти чипы появились в конце XX века и давно потеряли актуальность. Некоторые процессоры на базе архитектур ARMv3 и ARMv4 еще изредка применяются, например, в StrongARM и FA526. Но это уже отголоски прошлого.

В случае ARMv4 Бергман считает, что на первом этапе поддержку нужно вырезать из компиляторов и только потом, через несколько лет, — из ядра Linux. Еще от одной архитектуры, ARMv7-M, планируют избавиться в 2027 году. Ее развитие прекращено в 2017-ом.

В 2023 году эксперты проводили анализ ядра и подсчитывали, насколько его можно облегчить, если убрать поддержку устаревших технологий. Выяснилось, что на 154 тыс. строк программного кода. Бергман, к сожалению, аналогичные подсчеты не проводил, но, вероятно, объем «чисток» примерно такой же.

Автор проекта рекомендует не вводить изменения сразу, а избавляться от устаревших технологий планомерно — от совсем не актуальных в настоящее время до иногда используемых.

Какие архитектуры удалят

В плане содержится подробная информация об архитектурах, чипах и расширениях, которые Бергман предлагает удалить:

  • ARMv3 — ее поддержка уже убрана из GCC 9;

  • ARMv4 — от архитектуры отказались в Debian 5.0. По плану поддержку ARMv4 прекратят сначала в GCC, а через несколько лет — в ядре;

  • ARMv4T — сейчас встречается шесть семейств SoC с ядрами ARM720T, ARM920T и ARM922T. Они распространены больше, чем представители вышеупомянутой архитектуры. Бергман предлагает избавиться от поддержки технологии в ядре, но не раньше, чем от ARMv5;

  • ARMv5 — архитектура применяется примерно на трети всех поддерживаемых в ядре платформ. Казалось бы, все хорошо, но нет: почти все они близки к окончанию жизненного цикла. Из-за отсутствия FPU и атомарных операций сохранять поддержку в Debian, например, все сложнее. Так что, возможно, скоро порт Debian для ARMv5 будет переведен в число неофициальных;

  • ARMv6 — планируется избавиться только от начальных поколений чипов этой архитектуры, включая ARM1136r0p (NXP i.MX31) и OMAP24xx (Nokia N8xx);

  • ARMv6K — используется в процессорах ARM1176 (Raspberry Pi 1, AST2500) и ARM1136r1;

  • ARMv7-M — еще используется в микроконтроллерах на базе Cortex-M3/M4/M7. Это последние из могикан, то есть поддерживаются в ядре чипами без MMU. Бергман предлагает удалить поддержку ARMv7-M в 2027 году, спустя 10 лет после остановки разработки чипов с этой архитектурой;

  • iWMMXt — в ядре Linux уже нет некоторых чипов на базе этой архитектуры, включая CPU ARMv7 PJ4 (MMP2, Berlin). Поддержка iWMMXt прекращена в Clang, ее предлагают удалить и из GCC;

  • BE32 (big endian ARMv5) — редкая архитектура, на базе которой построен только SoC Intel IXP4xx. Автор предлагает убрать поддержку технологии как из GCC, так и из ядра;

  • BE8 (big-endian ARMv7) — во многих драйверах есть проблемы, поэтому ее тоже предлагают вырезать. Тестирование не ведется, да и информации об устройствах, которые работают на базе чипов, нет.

План пока обсуждается, финального решения нет. Автор предлагает не затягивать с ним, а начать работу по очистке ядра Linux уже с версии 6.12. Стабильный дистрибутив запланирован на декабрь 2024 года.

Не только ARM

Разработчики Linux избавляются от наследия прошлого не только в виде прекращения поддержки старых чипов на базе ARM. То же самое они делают и в отношении устаревших x86-процессоров. В самом конце прошлого года из Linux 6.7 удалили код, отвечавший за поддержку микросхем Intel Itanium на базе архитектуры IA-64. Инициатором той чистки был сам Линус Торвальдс. Еще в 2021 году он назвал эти чипы «мертвыми».

А в 2022 году он же предложил удалить и процессоры Intel семейства i486. По словам Торвальдса, технология безнадежно устарела, поэтому из ядра Linux нужно убрать весь связанный с ними код. Ну а поддержку i386 убрали еще в конце 2012, так что i486 продержались достаточно долго.

А что вы думаете о «большой чистке Бергмана» и ее возможных последствиях?

Еще можно почитать:

Теги:
Хабы:
Всего голосов 42: ↑36 и ↓6+51
Комментарии58

Полезные ссылки

SMS-автоответчик с обновлением статуса: еще один канал связи для клиентов, которым мало интернета и звонков

Время на прочтение6 мин
Количество просмотров1.4K
Всего голосов 12: ↑10 и ↓2+19
Комментарии6

Спасти робомышь от киберминотавра: как мы сделали челлендж для программистов, где нужно управлять роботом

Время на прочтение6 мин
Количество просмотров1.7K
Всего голосов 9: ↑9 и ↓0+17
Комментарии8

Свой кинозал для каждого сегмента сети: уменьшаем медиатрафик в десятки раз с помощью кэширующих серверов

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров6.8K
Всего голосов 14: ↑14 и ↓0+22
Комментарии13

Одна платформа, чтобы мониторить всех: как мы осуществляем трассировку, работаем с логами и метриками во всей экосистеме

Уровень сложностиСредний
Время на прочтение6 мин
Количество просмотров6.1K
Всего голосов 13: ↑13 и ↓0+19
Комментарии7

Поиск данных, прокачанная тренировка и судейская оценка. Как с минимальными ресурсами улучшить качество дообучения LLM

Время на прочтение11 мин
Количество просмотров1.9K
Всего голосов 10: ↑9 и ↓1+13
Комментарии5

Информация

Сайт
www.mts.ru
Дата регистрации
Дата основания
Численность
свыше 10 000 человек
Местоположение
Россия