Linux kernel je okosnica Linux operativnih sistema (OS) i osnovni je interfejs između hardvera računara i njegovih procesa.
Nedavno Linus Torvalds predstavio je izlazak nove verzije Linux kernela 6.7, koji je predstavljen nakon dva mjeseca razvoja i među najznačajnijim promjenama je integracija Bcachefs sistema datoteka, ukidanje podrške za Itanium arhitekturu, mogućnost rada Nouveaua sa GSP-R firmverom, podrška za TLS enkripciju u NVMe-TCP, mogućnost korištenja izuzetaka u BPF-u, između ostalog.
Nova verzija Linux kernela 6.7 Sastoji se od 15291 ispravke a otprilike 45% svih uvedenih promjena odnosi se na drajvere uređaja, 14% promjena se odnosi na ažuriranje specifičnog koda za hardverske arhitekture, 13% se odnosi na mrežni stog, 5% se odnosi na sistem datoteka i 3% se odnosi na interni podsistemi kernela.
Veličina zakrpe je 72 MB (promjene su uticale na 13.467 datoteka, dodano je 906.147 linija koda, a uklonjeno je 341.048 linija).
Glavne novine Linux kernela 6.7
Integracija sistema datoteka Bcachefs
Linux 6.7 usvaja kod sistema datoteka Bcachefs, koji pokušava da postigne performanse, pouzdanost i skalabilnost XFS-a, u kombinaciji sa elementima napredne funkcionalnosti koje se nalaze u Btrfs i ZFS.
Bcachefs podržava funkcije kao što je uključivanje više uređaja na jednoj particiji, višeslojni dizajn diskova (donji sloj sa često korišćenim podacima zasnovanim na brzim SSD-ovima i gornji sloj sa podacima sa manje korišćenih čvrstih diskova), replikacija (RAID 1/10), keširanje, transparentna kompresija podataka (LZ4, gzip i ZSTD načini), rezovi stanja, provjera integriteta pomoću kontrolnih suma, mogućnost pohranjivanja Reed-Solomon kodova za ispravljanje grešaka (RAID 5/6), pohrana informacija u šifriranom obliku (koriste se ChaCha20 i Poly1305) . U pogledu performansi, Bcachefs je ispred Btrfs-a i drugih sistema datoteka baziran na mehanizmu kopiranja na upisivanje i pokazuje radnu brzinu blisku Ext4 i XFS.
Poboljšanja u Btrfs
Na Linuxu 6.7 Pojednostavljeni režim kvote je implementiran za Btrfs što omogućava bolje performanse praćenjem ekstenzija samo u podparticiji u kojoj su kreirane, koja uvelike pojednostavljuje proračune i poboljšava performanse, ali ne dozvoljava da se ekstenzije dijele između više podparticija. Dodatno, nova struktura podataka trakastog stabla je dodana u Btrfs, pogodna za mapiranje logičkog proširenja u situacijama kada se fizičko mapiranje ne poklapa između uređaja. Tkanina se trenutno koristi u RAID0 i RAID1 implementacijama za zonirane blok uređaje.
Prekid podrške za Itanium arhitekturu (ia64)
The podrška za ia64 arhitekturu koja se koristi u Intel Itanium procesorima, šta jepotpuno smo suspendovani 2021. Intel je predstavio Itanium procesore 2001. godine, ali ia64 arhitektura nije bila u stanju da se takmiči sa AMD64, uglavnom zbog viših performansi AMD64 i lakšeg prelaska sa 86-bitnih x32 procesora. Linus Torvalds je izrazio spremnost da uzvrati podršku ia64 u kernel, ali dasamo ako postoji održavalac koji može pokazati visok kvalitet podrške za ovu platformu van glavnog kernela najmanje godinu dana.
Kontinuirana migracija promjena iz grane Rust-for-Linux
Nova verzija prelazi na korištenje verzije Rust 1.73 i nudi skup kukica za rad s radnim redovima.
Poboljšanja u implementaciji FIFO redova
U ovoj novoj verziji Linuxa 6.7 implementacija laganog FIFO mehanizma jednostruke veze koje zahtijevaju spinlock samo za dequeue u kontekstu procesa i odbacuju ga za atomske dodatke u red u bilo kojem kontekstu. Dodatno, dodan je kružni bafer objpool sa skalabilnom implementacijom reda visokih performansi za dodjelu i vraćanje objekata.
Podrška za TLS enkripciju za NVMe-TCP
Na Linuxu 6.7 NVMe-TCP drajver (što vam omogućava pristup NVMe diskovima preko mreže), Dodata podrška za šifriranje kanala za prijenos podataka pomoću TLS-a (koristeći KTLS i pozadinski proces) u tlshd korisničkom prostoru za pregovaranje o vezi.
Poboljšane performanse planera paketa
Optimizirane performanse planera fq paketa, što je omogućilo povećanje performansi za 5% pod velikim opterećenjem u testu tcp_rr (TCP Request/Response) i za 13% uz neograničen protok UDP paketa.
Usvajanje opcije TCP autentikacije
Dodata je podrška TCP stogu za TCP-AO ekstenziju koja omogućava provjeru TCP zaglavlja koristeći MAC kodove, koristeći modernije HMAC-SHA1 i CMAC-AES-128 algoritame umjesto ranije dostupne TCP-MD5 opcije zasnovane na Legacy MD5 algoritmu .
Of the druge promjene koji se ističu:
- Dodane su nove postavke «cpuset.cpus.exclusive" i "cpuset.cpus.exclusive. Efektivno» na cpuset za CPU ekskluzivno povezivanje.
- BPF podsistem implementira podršku za izuzetke, koji se obrađuju kao izlaz u nuždi iz BPF programa sa mogućnošću bezbednog odmotavanja stek okvira. Dodatno, BPF programi dozvoljavaju upotrebu kptr pokazivača u vezi sa CPU-om.
- Za ARM32 i S390x arhitekture, dodata je podrška za trenutni skup (cpuv4) BPF instrukcija.
- Za RISC-V arhitekturu, moguće je koristiti režim provjere Shadow-Call Stack-a dostupan u Clang 17, dizajniran da zaštiti od prepisivanja povratne adrese funkcije u slučaju prekoračenja bafera na steku.
- Mehanizmu za spajanje identičnih memorijskih stranica dodat je novi način inteligentnog skeniranja memorijskih stranica (
- AppArmor je dodao mogućnost kontrole pristupa mehanizmu io_uring i kreiranja korisničkih imenskih prostora, omogućavajući vam da selektivno dozvolite pristup ovim mogućnostima samo određenim procesima.
- Dodan VM Certification API za provjeru integriteta procesa pokretanja VM-a.
- LoongArch sistemi podržavaju virtuelizaciju pomoću KVM hipervizora.
- Dodata je početna podrška za GSP-RM firmver modulu jezgre Nouveau, koji se koristi u NVIDIA RTX 20+ GPU-u za premještanje inicijalizacije i kontrolne operacije s GPU-a na stranu GSP mikrokontrolera
konačno ako jesi zainteresovani da saznaju više o tome, možete provjeriti detalje Na sledećem linku.