Linux ядро поддержка процессоров

Содержание
  1. Вышло ядро Linux 5.9 с поддержкой несуществующих процессоров Intel и AMD
  2. Выход ядра Linux 5.9
  3. Поддержка нового «железа»
  4. Память и системные процессы
  5. Диски и файловые системы
  6. Вышел Linux 5.8 — один из величайших. Более подробный обзор
  7. Графика
  8. Поддержка GPU драйверов Adreno 405 / 640 / 650
  9. Многочисленные улучшения драйверов amdgpu
  10. Файловые системы
  11. Разнообразные усовершенствования Btrfs
  12. Сжатие с использованием алгоритма LZO-RLE в F2FS
  13. Поддержка верификации загрузочной области exFAT
  14. Повышение I/O производительности SMB v3 / CIFS
  15. Улучшение упреждающей загрузки элементов в FAT
  16. Поддержка DAX для Ext4 и XFS
  17. Сетевая подсистема
  18. Обновления Wi-Fi
  19. Обновления Ipv6
  20. Безопасность
  21. Исправления по устранению уязвимости Spectre
  22. Чипы и чипсеты
  23. Начальная поддержка загрузки процессоров Power 10
  24. Поддержка новых ARM SoC
  25. Новый AMD Energy драйвер
  26. Интерфейс Thunderbolt/USB4 на процессорах Intel Tiger Lake
  27. Стабильный релиз Linux 5.8.1
  28. Который кернел наиболее полезен?

Вышло ядро Linux 5.9 с поддержкой несуществующих процессоров Intel и AMD

Выход ядра Linux 5.9

Глава команды разработчиков Linux Линус Торвальдс (Linus Torvalds) объявил о выпуске стабильной версии ядра Linux 5.9.

Релиз включает массу изменений, в том числе начальную поддержку будущих графических процессоров Intel и AMD, инструкции FSGBASE для ускоренного переключения контекста на x86-совместимых платформах, команд для зонирования твердотельных накопителей стандарта NVMe, а также алгоритма zstd для сжатия образа ядра, что обеспечивает его более быструю загрузку.

В новую версию Linux было принято 16074 исправления от 2011 разработчиков. Причем 45% всех изменений имеют отношение к драйверам устройств, 15% – к обновлению кода, специфичного для аппаратных архитектур, 13% – к сетевому стеку, по 3% – к файловым системам и внутренним подсистемам ядра. В процессе разработки ядра Linux 5.9, который занял два месяца, было выпущено восемь релиз-кандидатов (Release Candidates, RC).

Исходный код Linux 5.9 с 11 октября 2020 г. доступен для загрузки с сайта kernel.org.

Предыдущая версия Linux, напомним, вышла в начале августа 2020 г. Работа над ней также длилась два месяца, и за это время разработчики внесли в ядро свыше 17,6 тыс. изменений, включая 1,04 млн новых строчек кода. Это было самое крупное обновление за все 29 лет существования Linux, и в него впервые в истории добавили поддержку российского процессора – Baikal T1.

Поддержка нового «железа»

В DRM-драйвере i915 для видеокарт Intel включена поддержка графических чипов (GPU) на основе микроархитектуры Rocket Lake. Ожидается, что процессоры данного семейства выйдут на рынок в I квартале 2021 г. Также в драйвер добавлена начальная поддержка дискретных графических карт Intel Xe DG1. Впервые дискретные видеокарты на архитектуре Xe Intel продемонстрировала в апреле 2019 г.

Графический драйвер AMD (amdgpu) в Linux получил начальную поддержку GPU AMD Navi 21 (Navy Flounder) и Navi 22 (Sienna Cichlid), которые должны быть представлены 28 октября 2020 г.

В свободный драйвер Nouveau для GPU Nvidia добавлена поддержка покадровой проверки целостности при помощи CRC (Cyclic Redundancy Checks).

Примечательно, что кодовая база вышеупомянутого драйвера amdgpu, по подсчетам издания Phoronix, составляет порядка 10,5% (2,71 млн строк) от исходного кода всего ядра (27,81 млн строк). Для сравнения: разработчики i915 ограничились 209 тыс. строк, а Nouveau – 149 тыс. Стоит отметить, что львиная доля (1,79 млн строк) кода amdgpu приходится на автоматически сгенерированные заголовочные файлы C.

Наконец, в новое ядро добавлена поддержка ряда смартфонов, планшетов и других устройств. Так, в списке изменений Linux 5.9 заявлена работа на смартфоне Pinephone ревизии 1.2 (выпускается Pine Microsystems на SoC Allwinner sunxi); хромбука Lenovo Ideapad Duet 10.1 на базе чипа Mediatek Helio P60t; планшетов Asus Google Nexus 7 и Acer Iconia Tab A500 на чипах Nvidia Tegra 3 и 2 соответственно; смартфонов Xiaomi Libra (Mi 4C) и Microsoft Lumia 950 под управлением однокристальных систем Snapdragon 808; смартфона Sony Experia Z5 (Snapdragon 810).

Кроме того, Linux 5.9 поддерживаются роутер Mikrotik Routerboard 3011, построенный на 32-битном чипе Qualcomm IPQ8064, и телевизионная приставка Wetek Core2 (чип Amlogic S912).

Читайте также:  Предустановленная версия windows 10

Память и системные процессы

С выходом версии 5.9 в Linux появилась поддержка инструкции FSGSBASE для x86-совместимых процессоров. Она позволяет запущенным приложениям обращаться к регистрам процессора FS/GS напрямую из пользовательского пространства, минуя посредничество ядра. Поддержка FSGSBASE может повысить производительность процессоров Intel и AMD, особенно в таких областях как переключение контекста.

Также разработчиками добавлена поддержка сжатия образа ядра с применением алгоритма Zstandard (zstd) Яна Колле (Yann Collet). В сравнении с lzma2, используемом для этих целей по умолчанию, zstd обеспечивает более быструю распаковку образа ядра, тем самым сокращая общее время его загрузки.

Диски и файловые системы

Для SSD стандарта NVMe в ядро добавлена поддержка команд зонирования накопителя (ZNS). Применение ZNS позволяет программным способом управлять размещением данных на накопителе. Данная технология, как отмечает Phoronix, позволяет добиться более низкой задержки при считывании/записи данных, повышенной пропускной способности, а также увеличить срок службы накопителя. При ее использовании ПО, а не исключительно контроллер накопителя могут определять, в какой именно диапазон блоков устройства попадут записываемые данные.

В Linux 5.9 реализована поддержка расширенных атрибутов файлов (xattr) на уровне сервера и клиента NFSv4. Оптимизированы файловые системы Btrfs, XFS и Ext4. В частности, улучшена скорость монтирования крупных разделов Ext4 за счет упреждающей загрузки битовых карт распределения блоков.

Источник

Вышел Linux 5.8 — один из величайших. Более подробный обзор

В начале августа Линус Торвальдс представил новую версии ядра Linux. Согласно давней традиции сам релиз крупнейшего проекта с открытым исходным кодом происходит вполне буднично, создатель пишет электронное письмо в рассылку коллегам по цеху с кратким резюме по новой стабильной версии кернела.

Особенностью ядра 5.8 стало рекордное количество изменений за все время существование проекта. Был лишь один более крупный релиз ядра Linux 4.9, но тот был искусственно раздут из-за новой подсистемы greybus в то время, как 5.8 действительно вобрал в себя больше изменений по самым разным направлениям. Посмотрим, что есть такого полезного и интересного в Linux 5.8, а заодно и 5.8.1 главным образом для обычных пользователей и рабочих станций.

Патч размером 64 MiB содержит труд 1991 разработчиков, в т. ч. 304 новых. Усилиями сообщества добавлено 904 тыс. и удалено 553 тыс. строк кода. Если смотреть в разрезе компаний, то среди самых активных есть знакомые имена.

Графика

Львиную долю кодовой базы ядра Linux занимают драйвера, поэтому совсем неудивительно, что им посвящена значительная часть изменений и обновлений релиза.

Поддержка GPU драйверов Adreno 405 / 640 / 650

Благодаря обновлению открытых драйверов MSM (Freedreno), добавлена поддержка графических процессоров Qualcomm Adreno 405, 640 и 650. Эти мобильные GPU можно увидеть на некоторых из последних SoC (system on a chip), таких, как Snapdragon 855+ и Snapdragon 865. Эти чипы можно встретить в смартфонах Samsung Galaxy S10 / S20, OnePlus и многих других гаджетах.

В то же время в рамках открытых API OpenGL и Vulkan продолжают развиваться драйвера Adreno, соответственно с Freedreno Gallium3D и TURNIP. Новые изменения войдут в Mesa 20.2-devel.

Многочисленные улучшения драйверов amdgpu

AMD из кожи вон лезла, чтобы улучшить качество графических драйверов в Linux 5.8. Наряду с повышением производительности, реализована возможность использования шифрованных буферов видеопамяти (Trusted Memory Zone).

AMD Radeon Trusted Memory Zone предназначена для защиты избранных страниц от чтения со стороны центрального процессора, а также иных отличных от GPU клиентов и предотвращения записи на защищенные TMZ страницы.

Кроме того в драйвер добавлена поддержка пиксельного формата FP16 и завершена обширная работа по предоставлению однорангового совместного использования DMA буферов между устройствами (p2p DMA-BUF) без поддержки страниц системной памяти.

Файловые системы

Ожидаемые обновления вызывающей противоречивые чувства Btrfs, FAT, exFAT и других.

Разнообразные усовершенствования Btrfs

OpenSUSE и SUSE Linux одни из немногих, использующих Btrfs в качестве основной файловой системы. Неудивительно, что SUSE представила ряд патчей для этой ФС. В результате для Btrfs была улучшена обработка операций чтения в режиме I/O.

  • код прямого ввода-вывода был перенесен на интерфейсы iomap;
  • теперь при сбое при удалении вложенного тома из-за нехватки места, файловая система не переходит в режим «только для чтения»;
  • устранение различных дефектов и чистка кода.
Читайте также:  Linux mount dev directory

Сжатие с использованием алгоритма LZO-RLE в F2FS

Заметным новым дополнением для Flash Friendly File System в новой версии ядра Linux является формат сжатия LZO-RLE. LZO Run-Length Encoding нацелена на те же степени сжатия, что и у стандартного алгоритма LZO, но с более высокой производительностью. Это стало возможным после того, как реализация LZO-RLE была внесена в ядро в прошлом году ARM.

Поддержка верификации загрузочной области exFAT

Компания Samsung представила улучшения exFAT для ядра Linux 5.8, в новой версии драйвера есть ряд исправления и оптимизаций. В частности проведена очистка кода, улучшено журналирование и оптимизирована функция кеширования записей. Также инженеры компании добавили новую функциональность — проверку области загрузки для exFAT.

Повышение I/O производительности SMB v3 / CIFS

Определен новый параметр nodelete, с которым клиенту можно запускать штатные проверки на сервере, но запрещено удалять файлы и папки. Патчи SMB v3 содержат значительное улучшение производительности для больших операций ввода-вывода при использовании многоканальности, а также исправления DFS.

Улучшение упреждающей загрузки элементов в FAT

Опережающее чтение для записей FAT в предыдущей версии было очень простым, но имело некоторые недостатки, из-за чего в некоторых средах оно работало неэффективно.
Благодаря механизму обновления окна опережающего чтения до полного исчерпания и настраиваемому bdi->ra_pages удалось добиться значительного повышения производительности. На медленном 2TB USB-накопителе провели тест, результат — сокращение времени прохождение теста с 383 до 51 с.

Поддержка DAX для Ext4 и XFS

DAX, или Direct Access предназначен для прямого доступа к файловой системе в обход страничного кеша. Минуя кеширования страниц в режиме DAX означает отказ от дополнительной копии для чтения / записи на устройство хранения. В свою очередь это позволяет напрямую и более эффективно отображать устройство хранения в пользовательское пространство.

Данные усовершенствования DAX кода со стороны компании Intel позволяют активировать режим прямого доступа для каждого inode, а не просто включать, или выключать для всей файловой системы. Также с помощью системного вызова statx() можно из пользовательского пространства запрашивать состояние прямого доступа к конкретному файлу.

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

TCP/IP стек ядра Linux занимает особое место в общей картине, в виду существенной сложности архитектуры и огромным возможностям по использованию в самых разнообразных устройствах. Сетевая инфраструктура больше других обеспечивает доминирование Linux ОС на серверах и продолжает развиваться семимильными шагами.

  • Netfilter, в модуле nftables обеспечено динамическое обновление устройств для таблиц потоков;
  • *MRP, добавлена поддержка Media Redundancy Protocol — сетевого стандарта IEC 62439-2. Протокол позволяет обеспечить устойчивость к сбоям в сети, объединив в кольцо несколько Ethernet коммутаторов, при этом работает быстрее, чем STP.
  • bluetooth, новые драйвера для Realtek RTL8761B, Intel Typhoon Peak и Qualcomm QCA6390;
  • lx5/mlx5e, сетевые карты Mellanox обычно используются в критически важных установках, где требуются скорости 10, 40 и 100 гигабит. Обширный список изменений для драйверов mlx5 и mlx5e касается улучшений в TLS, IPsec, MPLS и пр;
  • rnbd, новое сетевое блочное устройство RNBD позволяет организовать удаленный доступ к блочному при помощи RDMA транспорта RTRS. Последний поддерживает работу с несколькими путями, обеспечивает переключение ввода-вывода и балансировку нагрузки.

Обновления Wi-Fi

Обновления Ipv6

Безопасность

Сюда вошли исправления связанные с интеловскими дырами безопасности типа Spectre, SELinux, блокировкой модулей ядра с битами исполнения и записи, генератором случайных чисел и пр.

Исправления по устранению уязвимости Spectre

Очевидно, что Intel в ближайшее время не перевыполнит план по устранению всех последствий уязвимости класса Spectre в своих чипсетах.

Речь идёт о нескольких срочных исправлениях для ядра Linux по обработке спекулятивного выполнения x86 / x86_64 инструкций. Это случилось после того, как инженер безопасности из Google обнаружил данную уязвимость, и тот факт, что одно из предыдущих исправлений, в качестве побочного эффекта затронула процессоры AMD.

Читайте также:  Как восстановить windows sistem32

Indirect Branch Prediction Barrier (IBPB) – защита от атак целевого буфера ветвлений для второго варианта Spectre, будет принудительно выключена в Linux. Условием являются сценарии, когда STIBP недоступен или доступны косвенные ограниченные спекуляции ветвлений (IBRS).

Чипы и чипсеты

В Linux 5.8 было много изменений для архитектуры ARM.

Начальная поддержка загрузки процессоров Power 10

Power 10 — это будущий процессор от компании IBM и фонда OpenPOWER, который, как ожидается, поступит в продажу в 2021 году и будет производиться по 7-нм техпроцессу. По предварительным данным новый чип предлагает значительные улучшения по сравнению с существующей микроархитектурой Power 9.

Помимо базовой поддержки загрузки для архитектуры Power 10, ядро Linux 5.8 также поддерживает набор инструкций с префиксом Power 10.

Поддержка новых ARM SoC

В соответствии с прогрессом подсистемы Linux ядра для Android к списку поддерживаемых устройств добавились:

  • Realtek RTD1195 в качестве решения на базе Arm Cortex A7;
  • Realtek RTD1395;
  • Realtek RTD1619;
  • Платформа Renesas RZ/G1H;
  • Бюджетный 64-битный Rockchips RK 3326 SoC вместе с игровой консолью Odroid-GO Advance;
  • TV-приставка Smartlabs SML-5442TW на базе AMLogic S905D;
  • ODROID-C4 на базе AMLogic S905X3;
  • TV-приставка Beelink GT-King Pro на базе AMLogic S922XH;
  • Baseboard Management Contrioller на базе Aspeed ast 2500 в Facebook x86 Yosemite V2 и YADRO OpenPower P9 Nicole;
  • Olimex A20-OLinuXino-LIME-eMMC SBC;
  • Маршрутизатор Check Point L-50;
  • Хромбуки Elm/Hana на базе Mediatek MT8173;
  • Смартфон Samsung Galaxy S2 на базе Samsung Exynos 4210;
  • Платформа Qualcomm SDM660/SDM630 и смартфон Xiaomi Redmi Note 7;
  • TV-приставка Xnano X5 на базе Realtek RTD1295;

Новый AMD Energy драйвер

Новый и долгожданный драйвер AMD Energy для мониторинга датчиков энергии на процессорах Zen/Zen 2. Это позволяет получать отчеты об энергопотреблении по каждому сокету/ядру на процессорах AMD Zen/Zen2.

Интерфейс Thunderbolt/USB4 на процессорах Intel Tiger Lake

Всего лишь 28 строк кода в этом патче обеспечили поддержку Thunderbolt/USB4 для чипов Tiger Lake, в значительной степени благодаря повторному использованию наработок для Ice Lake.

Интерфейс Thunderbolt также может работать на архитектуре ARM, используя карту расширения Thunderbolt PCIe. На данный момент ARM SoC устройства пока что отсутствуют.

Стабильный релиз Linux 5.8.1

Минорный релиз Linux 5.8.1 представляет собой небольшое обновление, которое изменяет в общей сложности 40 файлов с 548 вставками и 186 удалениями. Он в основном содержит исправления ошибок для различных драйверов:

  • GPIO, max77620;
  • LEDs;
  • SCSI;
  • MTD;
  • PCI, tegra;
  • USB;
  • звук;
  • видео;
  • Обновления для архитектуры ARM64;
  • Обновления для архитектуры PowerPC.

Который кернел наиболее полезен?

Всегда по выходу новой стабильной версии Linux ядра с множеством полезных обновлений, может возникнуть зуд незамедлительно скачать архив с kernel.org, подкрутить настройки из menuconfig, или xconfig, скомпилировать и загрузиться с новоиспеченного образа. Все же не стоит торопиться и вот почему.

Мейнтейнер стабильной ветки Грег Кроа-Хартман составил небольшой рейтинг стабильных веток. Вот как он выглядит.

  1. Стабильное и актуальное ядро вашего дистрибутива Linux.
  2. Последний стабильный релиз.
  3. Последний LTS (Long Term Support) релиз;
  4. Более ранний LTS релиз, который все еще поддерживается.

На первом месте по критерию целесообразности находится ядро Linux, скомпонованное специально для вашего дистрибутива. Оно содержит все необходимые патчи и специальные настройки. Кроме того разработчики дистрибутива проделывают массу работы по обратному переносу исправлений ошибок, а иногда и новых функции в код ядра, и все это в донкихотском стремлении не изменять мажорный номер версии, несмотря на наличие многих тысяч изменений.

Учитывая эти соображения, имеет смысл дождаться пока новое ядро станет доступно для вашего дистрибутива. Для Debian Linux и RHEL, а также устройств Android возможно пройдут годы, прежде, чем новое ядро будет в боевой эксплуатации. Однако есть масса дистрибутивов для рабочих станций и обычных пользователей, для которых новое ядро становится доступным в течение нескольких недель.

Из новых дистрибутивов Ubuntu Linux 20.10 (Groovy Gorilla) выйдет с ядром Linux 5.8 в октябре 2020 г.

Источник

Оцените статью