Linux 6.7 вже випущено, і це його новини

Тукс, талісман ядра Linux

Ядро Linux є основою операційних систем (ОС) Linux і є основним інтерфейсом між апаратним забезпеченням комп’ютера та його процесами.

Останнім часом Лінус Торвальдс представив випуск нового ядра Linux версії 6.7, який представлено після двох місяців розробки, і серед найбільш помітних змін – інтеграція файлової системи Bcachefs, припинення підтримки архітектури Itanium, здатність Nouveau працювати з мікропрограмою GSP-R, підтримка шифрування TLS у NVMe-TCP, можливість використовувати винятки в BPF, серед іншого.

Нова версія ядра Linux 6.7 Він складається з 15291 XNUMX виправлень і приблизно 45% усіх внесених змін пов’язані з драйверами пристроїв, 14% змін пов’язані з оновленням конкретного коду для апаратних архітектур, 13% пов’язані з мережевим стеком, 5% пов’язані з файловими системами і 3% пов’язані з внутрішні підсистеми ядра.

Розмір патча становить 72 Мб (зміни торкнулися 13.467 906.147 файлів, додано 341.048 XNUMX рядків коду, видалено XNUMX XNUMX рядків).

Основні новинки ядра Linux 6.7

Інтеграція файлової системи Bcachefs

У Linux 6.7 використовується код файлової системи Bcachefs, який намагається досягти продуктивності, надійності та масштабованості XFS у поєднанні з елементами розширеної функціональності Btrfs і ZFS.

Bcachefs підтримує такі функції, як підключення кількох пристроїв на одному розділі, багаторівневі конструкції дисків (нижній рівень із часто використовуваними даними на основі швидких SSD і верхній рівень з даними з рідко використовуваних жорстких дисків), реплікація (RAID 1/10), кешування, прозоре стиснення даних (режими LZ4, gzip і ZSTD), зрізи стану, перевірка цілісності за допомогою контрольних сум, можливість зберігання кодів корекції помилок Ріда-Соломона (RAID 5/6), зберігання інформації в зашифрованому вигляді (використовуються ChaCha20 і Poly1305) . За продуктивністю Bcachefs випереджає Btrfs та інші файлові системи заснований на механізмі копіювання при записі і демонструє швидкість роботи, близьку до Ext4 і XFS.

Покращення в Btrfs

У Linux 6.7 Для Btrfs реалізовано спрощений режим квотування що забезпечує кращу продуктивність шляхом відстеження розширень лише в тому підрозділі, у якому вони створені значно спрощує обчислення та покращує продуктивність, але він не дозволяє спільно використовувати розширення між кількома підрозділами. Крім того, до Btrfs додано нову структуру даних смугового дерева, яка підходить для відображення логічного розширення в ситуаціях, коли фізичне відображення не збігається між пристроями. Структура наразі використовується в реалізаціях RAID0 і RAID1 для зонованих блокових пристроїв.

Припинення підтримки архітектури Itanium (ia64)

The підтримка архітектури ia64, що використовується в процесорах Intel Itanium, що цеми повністю призупинили в 2021 році. Intel представила процесори Itanium у 2001 році, але архітектура ia64 не змогла конкурувати з AMD64, в основному через вищу продуктивність AMD64 і більш плавний перехід від 86-розрядних процесорів x32.  Лінус Торвальдс висловив готовність повернути підтримку ia64 до ядра, але тактільки якщо є супроводжувач, який може продемонструвати високу якість підтримки для цієї платформи з основного ядра принаймні на рік.

Безперервна міграція змін із гілки Rust-for-Linux

Нова версія переходить на використання версії Rust 1.73 і пропонує набір хуків для роботи з робочими чергами.

Покращення реалізації черг FIFO 

У цій новій версії Linux 6.7 реалізація полегшеного механізму FIFO одинарні підключення, які вимагають спін-блокування лише для вилучення з черги в контексті процесу та не використовують його для атомарних додань до черги в будь-якому контексті. Крім того, було додано циклічний буфер objpool із масштабованою реалізацією високопродуктивної черги для розподілу та повернення об’єктів.

Підтримка шифрування TLS для NVMe-TCP

У Linux 6.7 драйвер NVMe-TCP (що дає вам доступ до дисків NVMe через мережу), Додана підтримка шифрування каналу передачі даних за допомогою TLS (з використанням KTLS і фонового процесу) у просторі користувача tlshd для узгодження з’єднання.

Покращена продуктивність планувальника пакетів

Оптимізовано роботу планувальника пакетів fq, що дозволило підвищити продуктивність на 5% при великих навантаженнях в тесті tcp_rr (TCP Request/Response) і на 13% при необмеженому потоці UDP-пакетів.

Прийняття опції автентифікації TCP

У стек TCP додано підтримку розширення TCP-AO, яке дозволяє перевіряти заголовки TCP за допомогою MAC-кодів, використовуючи більш сучасні алгоритми HMAC-SHA1 і CMAC-AES-128 замість раніше доступної опції TCP-MD5 на основі застарілого алгоритму MD5 .

З інші зміни що виділяються:

  • Додано нові налаштування «cpuset.cpus.exclusive" і "cpuset.cpus.exclusive. Ефективний» до набору процесорів для монопольного зв’язування ЦП.
  • Підсистема BPF реалізує підтримку винятків, які обробляються як аварійний вихід із програми BPF із можливістю безпечного розгортання кадрів стека. Крім того, програми BPF дозволяють використовувати покажчики kptr у зв’язку з ЦП.
  • Для архітектур ARM32 і S390x додано підтримку поточного набору (cpuv4) інструкцій BPF.
  • Для архітектури RISC-V можна використовувати режим перевірки стека тіньових викликів, доступний у Clang 17, призначений для захисту від перезапису адреси повернення функції у випадку переповнення буфера стека.
  • До механізму об’єднання ідентичних сторінок пам’яті додано новий режим інтелектуального сканування сторінок пам’яті (
  • AppArmor додав можливість контролювати доступ до механізму io_uring і створювати простори імен користувачів, що дозволяє вибірково надавати доступ до цих можливостей лише певним процесам.
  • Додано API сертифікації віртуальної машини для перевірки цілісності процесу запуску віртуальної машини.
  • Системи LoongArch підтримують віртуалізацію за допомогою гіпервізора KVM.
  • Додано початкову підтримку мікропрограми GSP-RM до модуля ядра Nouveau, який використовується в графічному процесорі NVIDIA RTX 20+ для перенесення операцій ініціалізації та керування з графічного процесора на бік мікроконтролера GSP

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