345

Увидело свет ядро Linux 5.0

Увеличение цифры мажорной версии до 5 не означает каких-то грандиозных изменений или поломок совместимости. Оно просто помогает дорогому нашему Линусу Торвальдсу сохранить душевный покой. Ниже - список некоторых изменений и новшеств.


Сердцевина ядра:


Планировщик процессов CFS на асимметричных процессорах вроде ARM работает иначе - первым делом нагружает маломощные и энергоэффективные ядра.

Через API отслеживания файловых событий fanotify можно получать уведомления об открытии файла на исполнение.

Интегрирован контроллер cpuset, которым можно ограничивать группы процессов по использованию CPU и узлов NUMA.

Включена поддержка следующих ARM-устройств: Qualcomm QCS404, Allwinner T3, NXP/Freescale i.MX7ULP, NXP LS1028A, i.MX8, RDA Micro RDA8810PL, Rockchip Gru Scarlet, Allwinner Emlid Neutis N5, и многих других.

Улучшения в подсистеме ARM: горячее подключение памяти, защита от Meltdown и Spectre, 52-битная адресация памяти, и др.

Поддержка инструкции WBNOINVD для x86-64.


Подсистема памяти:


Для инструмента KASAN на ARM64-платформах доступна подстановка проверочных тегов с малым потреблением памяти.

Фрагментация памяти кардинально снижена (до 90%), в результате механизм Transparent HugePage работает лучше.

Скорость работы mremap(2) на больших областях памяти увеличена до 20 раз.

В механизме KSM jhash2 заменена xxhash, благодаря чему на 64-битных системах скорость работы KSM выросла в 5 раз.

Улучшения в ZRam и OOM.


Блочные устройства и файловые системы:


Механизм blk-mq с многоуровневой системой очередей запросов стал основным для блочных устройств. Весь не-mq код удалён.

Улучшения поддержки NVMe, особенно в плане работы устройств через сеть.

Для Btrfs реализована полноценная поддержка swap-файлов, а также изменение FSID без перезаписи метаданных.

В F2FS добавлен ioctl-вызов для отложенной проверки ФС через fsck.

Интегрирована BinderFS - псевдо-ФС для межпроцессного взаимодействия. Позволяет запустить несколько экземпляров Android в одной среде.

Ряд улучшений в CIFS: кэш DFS, расширенные атрибуты, протокол smb3.1.1.

ZRam оптимальнее работает с неиспользующимися swap-устройствами, экономя память.


Безопасность и виртуализация:


Добавлена хэш-функция Streebog (ГОСТ 34.11-2012), разработанная ФСБ РФ.

Поддержка алгоритма шифрования Adiantum, разработанного Google для маломощных устройств.

Включены алгоритмы XChaCha12, XChaCha20 и NHPoly1305.

Обработку вызовов seccomp теперь можно вынести в пространство пользователя.

Для гостевых систем KVM реализована поддержка расширений Intel Processor Trace с минимальной просадкой производительности.

Улучшения в подсистеме KVM/Hyper-V.

Драйвер virtio-gpu получил поддержку симуляции EDID для виртуальных мониторов.

В драйвере virtio_blk реализован вызов discard.

Реализованы функции безопасности для NV-памяти, основанных на спецификациях Intel DSM 1.8.


Драйверы устройств:


Изменения в DRM API для полноценной поддержки адаптивной синхронизации (часть стандарта DisplayPort) и изменчивых частот обновления (часть стандарта HDMI).

Включен стандарт Display Stream Compression для сжатия без потерь видеопотоков, адресованных экранам с высоким разрешением.

Драйвер AMDGPU теперь поддерживает FreeSync 2 HDR и сброс графического процессора для CI, VI, SOC15.

Видеодрайвер Intel получил поддержку чипов Amber Lake, форматов YCBCR 4:2:0 и YCBCR 4:4:4.

В драйвер Nouveau включена работа с видеорежимами для видокарт семейства Turing TU104/TU106.

Интегрированы драйверы тачскрина Raspberry Pi, панелей CDTech, Banana Pi, DLC1010GIG и др.

В драйвере HDA доступна поддержка кнопки «jack», LED-индикаторов, устройств Tegra186 и Tegra194.

Подсистема ввода научилась работать с высокоточной прокруткой на некоторых мышах Microsoft и Logitech.

Масса изменений в драйверах вебкамер, ТВ-тюнеров, USB, IIO, и др.


Сетевая подсистема:


В стеке UDP реализована поддержка механизма zero-copy для передачи данных через сокет без промежуточной буферизации.

Там же добавлен механизм Generic Receive Offload.

Улучшена производительность поиска в политиках xfrm при большом их количестве.

В драйвер VLAN добавлена возможность выгрузки туннелей.

Ряд улучшений в поддержке Infiniband и беспроводных сетей.


Скачать новое ядро можно по адресу kernel.org

GNU/Linux

1.2K постов15.6K подписчиков

Правила сообщества

Все дистрибутивы хороши.

Будьте людьми.

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества