После двух месяцев разработки Линус Торвальдс объявил о выпуске ядра Linux 6.12, версия, в которой Выделяется возможность активации режима реального времени., добавление sched_ext, позволяющее создавать планировщики ЦП с использованием eBPF, и механизм, генерирующий QR-коды в критических ситуациях.
Linux 6.12 включает в общей сложности 14,607 XNUMX исправлений, Они были добавлены более 507,913 XNUMX строк кода и ликвидировать 234,083 XNUMX человека. Хотя патч меньше по размеру по сравнению с предыдущими версиями, он представляет собой беспрецедентную оптимизацию.
Основные новые возможности Linux 6.12
Ядро Linux сейчас может быть построен с опцией PREEMPT_RT iинтегрирован, что устраняет необходимость во внешних исправлениях для работы в режиме реального времени. Это было достигнуто за счет включения поддержки в функцию printk. PREEMPT_RT и есть доступно на таких архитектурах, как x86, x86_64, ARM64 и RISC-V.
В компиляции Поддержка компилятора Clang была расширена до стандартной библиотеки nolibc. возможность оптимизации, такой как оптимизация времени соединения (LTO). Это также добавлена система отслеживания звонков, который сохраняет отладочную информацию в памяти после перезагрузки, облегчая анализ после сбоя.
Со стороны Rust для Linux, он продолжает развиваться с появлением новых модулей, таких как list и rbtree. для связанных списков и красно-черного дерева. Кроме того, была расширена поддержка в таких ключевых областях, как инициализация, синхронизация и обработка ошибок. Можно скомпилировать ядро с помощью Rust, сохраняя при этом расширенные средства защиты, такие как Spectre, и отладку с помощью KASAN или kCFI. Кроме того, был интегрирован драйвер Ethernet PHY, написанный на Rust.
Еще одна новинка Что выделяется в этой новой версии ядра Linux 6.12, так это введение механизм sched_ext (SCX), который позволяет вам использовать eBPF для создания пользовательских планировщиков ЦП. С помощью SCX разработчики могут создавать динамические планировщики, которые оптимизируют выполнение задач в зависимости от состояния системы и конкретных потребностей приложений, что упрощает экспериментирование и реализацию стратегий в производственных средах.
также Интеграция сервера SCHED_DEADLINE завершена, более эффективное решение чтобы избежать монополизации процессора высокоприоритетными задачами, улучшение распределения ресурсов для задач с низким приоритетом. Кроме того, планировщик CFS был заменен новым EEVDF (Earliest Eligible Virtual Deadline First), который более справедливо распределяет ресурсы процессора и устраняет необходимость ручной настройки, сокращая задержки при выполнении критически важных задач.
Контроллер DRM-паника, отвечающий за обработку чрезвычайных ситуаций в ядре, теперь вы можете отображать визуальный отчет с логотипами и QR-кодами включая сжатые диагностические данные. Эти QR-коды облегчают анализ сбоев, позволяя пользователям перенаправляться на страницы, настроенные дистрибутивами, для сообщения о проблемах.
О ARM, добавлена поддержка расширения POE. (Расширение наложения разрешений), которое включает такие механизмы, как ключи защиты памяти ограничить доступ к определенным областям памяти без необходимости изменения таблиц страниц. Кроме того, оптимизация системного вызова getrandom() с использованием vDSO увеличила скорость генерации случайных чисел почти в 15 раз на архитектурах Loongarch, ARM64, PowerPC и s390.
Un новый драйвер USB позволяет использовать протокол 9pfs для передачи данных между USB-устройствами путем монтирования файловых систем 9p. Это особенно полезно на встроенных устройствах, обеспечивая эффективную альтернативу NFS для загрузки корневых разделов.
Подсистема io_uring добавлена поддержка абсолютных таймаутов, активируется в определенное время в зависимости от системных часов. Это улучшает контроль над асинхронными операциями, обеспечивая большую точность их выполнения.
для библиотеки libcpupower, включены файлы генерации ссылок с использованием SWIG., что позволяет использовать такие языки, как Python, для расширения его функциональности. Кроме того, утилита cpuidle была улучшена и теперь может измерять минимальное время простоя, необходимое для обоснования затрат на энергию перехода.
В области сетей, один Наиболее заметными улучшениями являются механизм TCP. для памяти устройства, которая позволяет прямую передачу данных между памятью периферийных устройств и сетью, минуя ЦП, достигая заметной эффективности. Кроме того, возможности многочисленных контроллеров Ethernet и Wi-Fi, таких как iwlwifi от Intel и rtw89 от RealTek, были расширены за счет дополнительной поддержки чипов WiFi 6 и усовершенствованных стандартов IEEE. Для IPv6 были представлены новые функции для оптимизации распределения адресов с помощью DHCPv6-PD, а в MPTCP были улучшены функции маршрутизации и обнаружения потери трафика.
В аппаратной поддержке, Добавлена постоянная поддержка AMD RDNA4 в драйвере AMDGPU. и улучшения драйвера Xe DRM для графических процессоров Intel Xe. Также было добавлено Поддержка процессоров Xeon Granite Rapids и новые платформы ARM, включая SoC Snapdragon X Elite.
Наконец, если вы хотите узнать больше об этом, вы можете ознакомиться с подробностями в по следующей ссылке.