Etter to måneders utvikling, Linus Torvalds annonserte utgivelsen av den nye versjonen av Linux 6.1-kjernen, der blant de mest bemerkelsesverdige endringene: støtte for utvikling av drivere og moduler i Rust-språket, modernisering av mekanismen for å bestemme brukte minnesider, en spesiell minnebehandling for BPF-programmer, diagnosesystemet for problemer med KMSAN-minne, KCFI (Kernel Control -Flow Integrity) beskyttelsesmekanisme, introduksjonen av lønnstrukturtreet.
Den nye versjonen mottok 15115 2139 reparasjoner fra XNUMX utviklere, er oppdateringsstørrelsen 51 MB, som er omtrent 2 ganger mindre enn størrelsen på 6.0 og 5.19 kjernepatchene.
Hovednyheter i Linux 6.1
I denne nye versjonen av kjernen som presenteres, kan vi finne det lagt til muligheten til å bruke Rust som andrespråk å utvikle drivere og kjernemoduler. Hovedårsaken bak å støtte Rust er å gjøre det enklere å skrive sikre enhetsdrivere av høy kvalitet ved å redusere sjansene for minnefeil.
Ruststøtte er deaktivert som standard og fører ikke til at Rust inkluderes som en nødvendig kjernebyggingsavhengighet. Så langt har kjernen tatt i bruk en nedstrippet, minimal patch-versjon, som er redusert fra 40 til 13 XNUMX linjer med kode og gir bare et minimum, nok til å bygge en enkel kjernemodul skrevet i Rust.
I fremtiden, er det planlagt å gradvis øke eksisterende funksjonalitet, porterer andre endringer fra Rust-for-Linux-grenen. Parallelt utvikles prosjekter for å bruke den foreslåtte infrastrukturen til å utvikle NVMe-diskkontrollere, 9p-nettverksprotokollen og Apple M1 GPU på Rust.
En annen bemerkelsesverdig endring er inne AArch64, RISC-V og LoongArch med EFI, hvor muligheten til å laste komprimerte kjernebilder direkte er implementerts, foruten at de la til drivere for å laste, kjøre og laste ned kjernebilder, kalt direkte fra EFI zboot.
Drivere for installasjon og fjerning av protokoller fra EFI-protokolldatabasen er også lagt til. Tidligere ble utpakking gjort av en egen bootloader, men nå kan det gjøres av en driver i selve kjernen: kjernebildet er bygget som en EFI-applikasjon.
en del av lappene ble vedtatt med implementering av en minnestyringsmodell på ulike nivåer som tillater separate minnebanker med forskjellige ytelsesegenskaper. Ofte brukte sider kan for eksempel lagres i det raskeste minnet, mens sjeldnere brukte sider kan lagres i relativt tregt minne. 6.1-kjernen tar i bruk en mekanisme for å avgjøre om mye brukte sider er i sakte minne for å flytte dem til raskt minne, og implementerer det generelle konseptet med minnelag og deres relative ytelse.
I tillegg til dette kan vi også finne det lagt til BPF-delsystemet muligheten til å lage "destruktive" BPF-programmer spesielt utviklet for å utløse et krasj via crash_kexec()-kallet. Slike BPF-programmer kan være nødvendig for feilsøkingsformål for å utløse opprettelsen av en kjernedump på et bestemt tidspunkt. Tilgang til destruktive operasjoner ved lasting av et BPF-program krever at BPF_F_DESTRUCTIVE-flagget spesifiseres, sysctl kernel.destructive_bpf_enabled settes og CAP_SYS_BOOT-rettigheter settes.
har blitt lageto Betydelige ytelsesoptimeringer på Btrfs-filsystemetBlant annet har ytelsen til fiemap- og lseek-operasjoner økt i størrelsesordener (sjekking av delte utvidelser har blitt fremskyndet 2-3 ganger og endring av posisjon i filer har blitt fremskyndet med 1.3-4 ganger). Også, fremskyndet inode-journalføring for kataloger (25 % ytelsesøkning og 21 % latensreduksjon i dbench), bufret I/O ble forbedret og minneforbruket ble redusert.
Ext4 legger til ytelsesoptimaliseringer relatert til journalføring og skrivebeskyttet drift, fjernet støtte for utdaterte noacl- og nouser_xattr-attributter, også i EROFS (Enhanced Read-Only File System), designet for bruk på skrivebeskyttede partisjoner, implementerer muligheten Lagringssett med duplikatdata i forskjellige filer systemer.
Av andre endringer som skiller seg ut:
- Lagt til støtte for lydundersystemer implementert i Apple Silicon-, Intel SkyLake- og Intel KabyLake-prosessorer.
- HDA CS35L41-lydkontrolleren støtter hvilemodus.
- Lagt til støtte for AHCI SATA-kontrollere brukt i Baikal-T1 SoC.
- Lagt til støtte for Bluetooth-brikker MediaTek MT7921, Intel Magnetor (CNVi, integrert tilkobling), Realtek RTL8852C, RTW8852AE og RTL8761BUV (Edimax BT-8500).
- Lagt til drivere for PinePhone Keyboard, InterTouch Touchpads (ThinkPad P1 G3), X-Box Adaptive Controller, PhoenixRC Flight Controller, VRC-2 Car Controller, DualSense Edge Controller, IBM Operation Panels, XBOX One Elite, XP-PEN Deco Pro S Tablets og Intuos Pro liten (PTH-460).
- Lagt til driver for Aspeed HACE (Hash and Crypto Engine) kryptografiske akseleratorer.
- Lagt til støtte for integrerte Intel Meteor Lake Thunderbolt/USB4-kontrollere.
- Lagt til støtte for Sony Xperia 1 IV, Samsung Galaxy E5, E7 og Grand Max, Pine64 Pinephone Pro-smarttelefoner.
- ARM SoC-kompatibel med AMD DaytonaX, Mediatek MT8186, Rockchips RK3399 og RK3566, TI AM62A, NXP i.MX8DXL, Renesas R-Car H3Ne-1.7G, Qualcomm IPQ8064-v2.0, IPQ8062. , MT8062 (Acer Tomato), Radxa ROCK 8C+, NanoPi R8195S Enterprise Edition, JetHome JetHub D4p. Informasjon om SoC Samsung, Mediatek, Renesas, Tegra, Qualcomm, Broadcom og NXP.
Til slutt, hvis du er interessert i å vite mer om det, kan du se detaljene I den følgende lenken.