В крупнейшее обновление Linux впервые добавили поддержку российского процессора

В крупнейшее обновление Linux впервые добавили поддержку российского процессора
19.08.2020
8047

Релиз ядра Linux 5.8 представлен официально. Разработка крупнейшего обновления в истории заняла у команды Линуса Торвальдса более двух месяцев. Впервые в ядро ОС добавили поддержку российского процессора – Baikal-T1.

Масштабы обновления

По количеству изменений Linux 5.8 установило абсолютный рекорд среди всех обновлений в истории операционной системы. 2081 разработчик внес в ядро 17 606 изменений. Они затронули более 20% всех файлов в репозитории (16180): разработчики добавили 1043240 строк кода и удалили 489854, размер патча составил 65 Мб.

Более трети изменений (37%) касаются драйверов устройств. 16% затрагивают код для аппаратных архитектур, 11% – сетевой стек. 4% изменений связаны с внутренними подсистемами ядра, 3% – с файловыми системами.

Поддержка «Байкала»

Ядро Linux 5.8 полноценно поддерживает процессор Baikal-T1 российского производителя «Байкал Электроникс», а также чипсет (SoC) BE-T1000 на основе этого чипа.

Напомним, Baikal-T1 – это 28-нм двухядерный процессор. Оба суперскалярных ядра работают на частоте 1,2 ГГц. Также чип включает:

  • 1 МБ кэша второго уровня;
  • контроллер памяти DDR3-1600 ECC;
  • один быстрый порт 10-гигабитный Ethernet и два более медленных гигабитных Ethernet-порта, другие вспомогательные компоненты.

Чип создавался на базе блока процессорного ядра MIPS32 P5600 Warrior, лицензированного российской компанией Imagination Technologies. Он поддерживает инструкции SIMD и аппаратную поддержку виртуализации. А также включает аппаратный ускоритель криптографических операций, который соответствует ГОСТ 28147-89.

Новый детектор состояний гонки

В обновлении Linux 5.8 появился новый отладочный инструмент KCSAN (Kernel Concurrency Sanitizer). Он позволяет определять состояния гонки потоков внутри ядра – когда несколько потоков соперничают за доступ к одному и тому же ресурсу, например, переменной.

Инструментом можно воспользоваться при сборке в GCC и Clang. На этапе компиляции в код добавляют специальные модификации, к примеру, точки останова, которые сработают при чтении или записи, и отслеживать доступ к памяти.

В разработке KCSAN упор сделали на простоте использования и масштабируемости. Число ложных срабатываний удалось свести к минимуму, чтобы эффективно отлаживать код.

Универсальный механизм доставки уведомлений

Доставить уведомления из ядра Linux в пространство пользователя теперь можно с помощью универсального механизма. В его основе – стандартный драйвер pipe.

Разработчики рассказали, что реализовали точки приема уведомлений как отдельные пайпы (трубы или каналы данных), которые открыты в особом режиме. Сообщения от ядра накапливаются в кольцевом буфере каждого пайпа.

Владелец канала может указать, какие источники уведомлений из ядра нужно отслеживать. Сообщения можно фильтровать – принимать только уведомления определенного типа или же игнорировать конкретные события.

Механизмы защиты для ARM64

Для платформы ARM64 в ядре появилась поддержка механизмов Shadow Call Stack и BTI. Первый механизм предоставляет компилятор Clang. Если буфер в стеке переполнится, этот механизм защитит от перезаписи адреса возврата из функции. Адрес сохраняется в отдельном теневом стеке и извлекается перед тем, как выйти из функции.

Поддержка инструкций ARMv8.5-BTI (Branch Target Indicator) защищает наборы команд, на которые нельзя переходить при ветвлении. За счет блокировки переходов нельзя будет проникнуть в ядро с помощью популярных эксплоитов. Такие эксплоиты не размещают новый код, а используют готовые куски машинных инструкций с функциями возврата управления. Таким образом, Linux стал надежнее и устойчивее ко взломам.

Также в ядро добавили поддержку оборудования для inline-шифрования. Такие устройства физически встроены в накопитель, но логически они находятся между накопителем и системной памятью. Устройства нужны, чтобы шифровать и расшифровывать информацию из потоков ввода/вывода на основе заданного алгоритма и ключей.

Закрепление терминологии

Рекомендации по использованию новой терминологии официально приняты в документ по оформлению кода. Теперь не стоит использовать пары master/slave и blacklist/whitelist, а также слово slave отдельно.

Разработчики подчеркнули, что рекомендации касаются только новых случаев использования. Те упоминания, что уже есть в ядре, трогать не будут. Но есть и исключения: в новом коде упоминать термины можно, если этого требуют API (прикладной интерфейс приложений) и ABI (двоичный интерфейс приложений), или же для поддержки существующего оборудования и протоколов, которые предписывают использовать именно эти слова.

Где загрузить обновление

Стабильная версия традиционно доступна на kernel.org.

Также Фонд свободного программного обеспечения сформировал вариант полностью свободного ядра 5.8 – Linux-libre 5.8-gnu. В нем нет фрагментов «несвободных» драйверов и прошивок – кода, использование которого ограничено разработчиками.
Автор:
Обозреватель

См. также

Минцифры подготовило проект постановления по запуску платформы, на которой ИТ-специалисты могут пройти добровольное тестирование и подтвердить свою квалификацию.

11.12.2024    1005    user1915669    3       

2

Федеральная налоговая служба запустила интерактивный сервис, позволяющий формировать в машиночитаемом виде договоры, контракты, соглашения и спецификации. Чтобы создать документ и скачать получившийся файл, регистрация не требуется.

03.12.2024    807    user2114475    0       

2

Российский Альянс по искусственному интеллекту обновил требования к специалистам по ИИ: вышла новая модель с основными профессиями и навыками. Теперь базовых профессий в сфере ИИ осталось только четыре.

01.11.2024    964    user1915669    0       

3

Система платежей «Волна» по планам сделает возможной бесконтактную оплату для владельцев IPhone в России, а BRICS Pay позволит совершать безналичные расчеты иностранцам по картам Visa и Mastercard.

23.10.2024    1273    AnastasiaKl    0       

4

Конструктор сайтов Wix уходит из России с 12 сентября 2024 года – перестанут работать все российский аккаунты. Сайты, привязанные к аккаунтам, также перестанут работать.

11.09.2024    1247    user1915669    2       

2

ИИ научат разработке цифровых интегральных микросхем – несколько российских научных институтов заявили об участии в проекте. Проект рассчитан на 3 года – с 2024 по 2026.

23.07.2024    883    user1915669    0       

2

Развитие искусственного интеллекта и цифровых сервисов в России стало причиной роста потребности в мощных центрах обработки данных. Эксперты прогнозируют, что дефицит ЦОД, который уже наблюдается сегодня, в ближайшие годы будет только усиливаться.

18.07.2024    994    AnastasiaKl    0       

1

В сентябре 2024 года видеоигры в России начнут маркировать – пока на добровольной основе. Геймерам будут сообщать о семи видах чувствительного (неприятного) контента в игре.

17.07.2024    1076    user1915669    0       

1

Комментарии

Инфостарт бот
1. XAKEP 12.09.20 21:13 Сейчас в теме
5.8.7-arch1-1

archlinux the best linux

Оставьте свое сообщение