Linux 6.7 вече е пуснат и това са неговите новини

Tux, талисманът на ядрото на Linux

Ядрото на Linux е гръбнакът на операционните системи (OS) на Linux и е основният интерфейс между хардуера на компютъра и неговите процеси.

наскоро Linus Torvalds представи освобождаването на новата версия на ядрото на Linux 6.7, който е представен след два месеца на разработка и сред най-забележителните промени е интегрирането на файловата система Bcachefs, прекратяването на поддръжката за архитектурата Itanium, способността на Nouveau да работи с фърмуера GSP-R, поддръжката на TLS криптиране в NVMe-TCP, възможност за използване на изключения в BPF, наред с други неща.

Новата версия на Linux ядрото 6.7 Състои се от 15291 XNUMX корекции и приблизително 45% от всички въведени промени са свързани с драйвери на устройства, 14% от промените са свързани с актуализиране на специфичен код за хардуерни архитектури, 13% са свързани с мрежов стек, 5% са свързани с файлови системи и 3% са свързани с вътрешни подсистеми на ядрото.

Размерът на корекцията е 72 MB (промените засегнаха 13.467 906.147 файла, 341.048 XNUMX реда код бяха добавени и XNUMX XNUMX реда бяха премахнати).

Основни новости на Linux Kernel 6.7

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

Linux 6.7 възприема кода на файловата система Bcachefs, който се опитва да постигне производителността, надеждността и скалируемостта на XFS, комбинирани с елементи от разширената функционалност, открита в Btrfs и ZFS.

Bcachefs поддържа функции като включване на множество устройства на един дял, многослойни дизайни на дискове (долният слой с често използвани данни, базирани на бързи SSD дискове и горният слой с данни от по-малко използвани твърди дискове), репликация (RAID 1/10), кеширане, прозрачно компресиране на данни (режими LZ4, gzip и ZSTD), изрязване на състоянието, проверка на целостта чрез контролни суми, възможност за съхраняване на кодове за коригиране на грешки на Reed-Solomon (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 механизъм единични връзки, които изискват spinlock само за изваждане от опашката в контекст на процес и се отказват от него за атомарни добавки към опашката във всеки контекст. Освен това беше добавен кръгов буфер 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, базирана на Legacy MD5 алгоритъм .

От други промени които се открояват:

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

най-накрая, ако сте се интересувам да научим повече за това, можете да проверите подробностите В следващия линк.