Линус Торвальдс не стал продолжать нумерацию
3.x и выпустил первый кандидат в релизы ядра
Linux Kernel 4.0, вместо ожидаемого выпуска
3.20. Смене нумерации способствовали результаты голосования, в котором приняло участие почти 30 тысяч представителей сообщества, из которых
56% посчитали, что настало время выпуска версии
4.0.
Переход к нумерации 4.x является формальным шагом, обусловленным лишь эстетическими соображениями. В 2013 году рассматривалась идея использования смены первого номера в версии как дополнительного стабилизирующего этапа (предлагалось включить в ядро 4.0 только исправления ошибок, без функциональных изменений и новшеств), но данная идея была отвергнута. С точки зрения функциональности выпуск 4.0 не содержит кардинальных изменений или нарушений совместимости и не выделяется среди остальных выпусков, плавно продолжая развитие текущей кодовой базы.
Прошлая смена нумерации была произведена в 2011 году, когда в ветке 2.6.x накопилось 39 релизов. На подготовку 40 выпусков в ветке 2.6.x было потрачено 10 лет, что по мнению Линуса слишком много, поэтому наращивание нумерации ветки 3.x решено прекратить после 20 выпусков. Весомым аргументом в пользу ядра 4.0 также стало желание как можно скорее увидеть выпуск 4.1.15 - это номер версии ядра Linux, показанный в фильме Терминатор, при демонстрации интерфейса киборга T-800.
Из новшеств Linux Kernel 4.0 можно отметить: Интеграция базовой инфраструктуры, предоставляющей универсальный API для горячего наложения патчей на ядро. Код подготовлен в результате сотрудничества разработчиков SUSE и Red Hat, которые согласились задействовать данный API в реализациях систем обновления ядра без перезагрузки - kPatch и kGraft;
В подсистеме управления трафиком добавлена поддержка фильтров, написанных с использованием языка виртуальной машины eBPF;
В сетевом стеке обеспечена поддержка применения для определённых хостов специфичных алгоритмов контроля перегрузки (congestion-control) с привязкой через таблицу маршрутизации;
Реализация блочного сервера pNFS, позволяющего NFS-клиентам подключаться к совместно используемым дискам с применением блочного ввода/вывода вместо операций чтения и записи NFS. Поддержка нового режима пока реализована только для файловой системы XFS;
В OverlayFS добавлена возможность использования более одного слоя, доступного только на чтение;
В реализации сетевого протокола TIPC (Transparent Inter-process Communication), предназначенного для организации межпроцессного взаимодействия в кластере, обеспечена поддержка изолированных пространств имён (namespace);
Ядро теперь может быть собрано для запуска нитей RCU grace-period-handling с использованием системы приоритетов режима реального времени, что может оказаться полезным для выскоконагруженных систем;
Подсистема Open vSwitch теперь генерирует собственные идентификаторы потока ("flow IDs"), которые используются для идентификации сетевых потоков в пространстве пользователя, что может привести к увеличению производительности до 40%;
Удалён ранее объявленный устаревшим системный вызов remap_file_pages(), вместо которого добавлена заглушка, симулирующая его функциональность через использование нескольких виртуальных областей памяти, что позволило сохранить работоспособность приложений, использующих данный системный вызов;
В драйвер Radeon добавлена поддержка передачи аудиоданных через интерфейс DisplayPort и решены проблемы с производительностью GPU AMD семейства Hawaii (R9 290 и R9 290X). В состав также включены патчи для улучшения управления системой охлаждения GPU на основе GCN, которые приводят к ощутимому снижению уровня шума для GPU за счёт снижения частоты вращения вентилаятора;
Расширение возможностей драйверов для видеокарт Intel, включая начальную поддержку оборудования Intel Skylake;
В Nouveau произведено слияние с драйвером для видеоподсистем NVIDIA, используемых в SoC на базе процессоров ARM. Добавлены средства для управления частотой GPU GK20A (Tegra K1);
Добавлена поддержка звуковых карт Studio Evolution SE6X;
Источники:
https://lkml.org/lkml/2015/2/22/203 |
http://www.opennet.ru/