Ядро 5.19 надходить із покращеннями процесів, апаратної підтримки, безпеки тощо

Нова версія ядра 5.19 вже вийшла і в цій новій версії, серед найбільш помітних змін, наприклад, підтримка процесорної архітектури LoongArch, інтеграція патча "BIG TCP", режим "на вимогу" у fscache, видалення коду для підтримки формату a.out, можливість використання ZSTD для стиснення прошивки, інтерфейс для керування зсувом пам’яті з простору користувача, покращена надійність і продуктивність генератора псевдовипадкових чисел, підтримка Intel IFS (In-Field Scan), AMD SEV-SNP (Secure Nested Paging), Intel TDX (Trusted Domain Extensions) і розширення ARM SME (Scalable Matrix Extension).

Нова версія прийняла 16401 виправлення від 2190 розробників (в останній версії було 16206 виправлень від 2127 розробників), розмір патча: 90 Мб (зміни торкнулися 13847 файлів, додано 1149456 рядків коду, видалено 349177 рядків).

Основні новини ядра 5.19

З найпомітніших змін цієї нової версії ми можемо згадати, що виявлено, що при компіляції з Clang 15 підтримується механізм рандомізації структури ядра.

Механізм вихід до моря, що дозволяє обмежити взаємодію групи процесів із зовнішнім середовищем, надано підтримку правил що дозволяють контролювати виконання операцій перейменування файлів.

Підсистема IMA (Integrity Measurement Architecture), призначений для перевірки цілісності компонентів операційної системи за допомогою цифрових підписів і хешів, змінено на використання модуля fs-verity для перевірки файлів.

Змінено логіку дій при відключенні непривілейованого доступу до підсистеми eBPF; раніше всі команди, пов’язані з системним викликом bpf(), були вимкнені, а з версії 5.19 доступ до команд, які не призводять до створення об’єкта, було збережено. За такої поведінки для завантаження програми BPF потрібен привілейований процес, але непривілейовані процеси можуть взаємодіяти з програмою.

Додано підтримка резервних підключень MPTCP (MultiPath TCP) до простого TCP, у ситуаціях, коли певні функції MPTCP не можуть бути використані. MPTCP є розширенням протоколу TCP для організації роботи TCP-з'єднання з доставкою пакетів одночасно по декількох шляхах через різні мережеві інтерфейси, прив'язані до різних IP-адрес. Додано API для керування потоками MPTCP із простору користувача.

Також підкреслюється, що додано понад 420 000 рядків коду пов'язані з контролером amdgpu, з яких близько 400 000 рядків автоматично створені файли заголовків з даними для регістрів ASIC у драйвері GPU AMD, а інші 22,5 тис. рядків забезпечують початкову реалізацію підтримки AMD SoC000. Загальний розмір драйвера для графічних процесорів AMD перевищив 21 мільйони рядків коду. Окрім SoC4, драйвер AMD включає підтримку SMU 21.x (системного блоку керування), оновлену підтримку USB-C і GPUVM, а також готовий підтримувати наступне покоління RDNA13 (RX 3) і CDNA (AMD instinct). .

Драйвер i915 (розумний) має розширені можливості керування живленням, Додано ідентифікатори графічних процесорів Intel DG2 (Arc Alchemist), що використовуються в ноутбуках, надано початкову підтримку платформи Intel Raptor Lake-P (RPL-P), додано інформацію про відеокарти Arctic Sound-M, реалізовано ABI для обчислювальних механізмів, додано для карт DG2 підтримку формату Tile4, підтримку DisplayPort HDR для систем на мікроархітектурі Haswell.

Контролер Nouveau перейшов на використання драйвера drm_gem_plane_helper_prepare_fb, деякі структури та змінні були призначені статично. Що стосується використання NVIDIA модулів ядра Nouveau з відкритим вихідним кодом, то робота поки що зводилася до виявлення та усунення помилок. Надалі планується використовувати випущену прошивку для підвищення продуктивності контролера.

можливості були розроблені пов'язані з відповідь на виявлення розділеного блокування («розділене блокування»), які виникають під час доступу до неправильно вирівняних даних у пам’яті, тому що під час виконання атомарної інструкції дані перетинають два рядки розширеного кешу ЦП. Такі збої призводять до значного падіння продуктивності. Якщо раніше за замовчуванням ядро ​​видавало попередження з інформацією про процес, який спричинив збій, то тепер проблемний процес буде додатково сповільнюватися для збереження продуктивності решти системи.

Додано підтримка механізму IFS (In-Field Scan), реалізований у процесорах Intel, який дозволяє запускати низькорівневі діагностичні тести ЦП які можуть виявляти проблеми, які не виявляються звичайними засобами на основі кодів виправлення помилок (ECC) або бітів парності.

З інших змін що виділяються з цієї нової версії:

  • Додано драйвер для контролера NVMe, який використовується в комп’ютерах Apple на основі чіпа M1.
  • додано початкову підтримку для архітектури набору інструкцій LoongArch, яка використовується в процесорах Loongson 3 5000, яка реалізує новий RISC ISA, подібний до MIPS і RISC-V.
  • Архітектура LoongArch доступна в трьох версіях: 32-бітна спрощена (LA32R), 32-бітна звичайна (LA32S) і 64-бітна (LA64).
  • Додано можливість вбудувати файл bootconfig в ядро.
  • 'CONFIG_BOOT_CONFIG_EMBED_FILE=”/PATH/TO/BOOTCONFIG/FILE”'.
  • Видалено підтримку параметрів завантаження x86: nosp, nosmap, nosmep, noexec і noclflush).
  • Припинено підтримку застарілої архітектури CPU h8300 (Renesas H8/300), яка тривалий час не підтримувалася.

В кінці кінців якщо вам цікаво дізнатись більше про це про цю нову версію, ви можете перевірити деталі У наступному посиланні.


Залиште свій коментар

Ваша електронна адреса не буде опублікований. Обов'язкові для заповнення поля позначені *

*

*

  1. Відповідальний за дані: Мігель Анхель Гатон
  2. Призначення даних: Контроль спаму, управління коментарями.
  3. Легітимація: Ваша згода
  4. Передача даних: Дані не передаватимуться третім особам, за винятком юридичних зобов’язань.
  5. Зберігання даних: База даних, розміщена в мережі Occentus Networks (ЄС)
  6. Права: Ви можете будь-коли обмежити, відновити та видалити свою інформацію.