Linux-kernen er rygraden i Linux-operativsystemer (OS), og er den grundlæggende grænseflade mellem en computers hardware og dens processer.
nylig Linus Torvalds afslørede frigivelsen af den nye Linux-kerneversion 6.7, som præsenteres efter to måneders udvikling og blandt de mest bemærkelsesværdige ændringer er integrationen af Bcachefs-filsystemet, afbrydelsen af understøttelse af Itanium-arkitekturen, Nouveaus evne til at arbejde med GSP-R-firmware, understøttelse af TLS-kryptering i NVMe-TCP, muligheden for at bruge undtagelser i BPF, blandt andet.
Den nye version af Linux-kernen 6.7 Den består af 15291 rettelser og ca. 45 % af alle indførte ændringer er relateret til enhedsdrivere, 14 % af ændringerne er relateret til opdatering af specifik kode til hardwarearkitekturer, 13 % er relateret til netværksstakken, 5 % er relateret til filsystemer og 3 % er relateret til interne kerneundersystemer.
Patchstørrelsen er 72 MB (ændringerne påvirkede 13.467 filer, 906.147 linjer kode blev tilføjet, og 341.048 linjer blev fjernet).
Vigtigste nyheder i Linux-kernen 6.7
Bcachefs filsystem integration
Linux 6.7 anvender Bcachefs filsystemkode, som forsøger at opnå ydeevne, pålidelighed og skalerbarhed af XFS, kombineret med elementer af den avancerede funktionalitet, der findes i Btrfs og ZFS.
Bcachefs understøtter funktioner såsom inklusion af flere enheder på én partition, flerlags drevdesign (det nederste lag med ofte brugte data baseret på hurtige SSD'er og det øverste lag med data fra mindre brugte harddiske), replikering (RAID 1/10), caching, transparent datakomprimering (LZ4, gzip og ZSTD-tilstande), tilstandsnedskæringer, integritetsverifikation ved hjælp af kontrolsummer, mulighed for at gemme Reed-Solomon fejlkorrektionskoder (RAID 5/6), informationslagring i krypteret form (ChaCha20 og Poly1305 bruges) . Med hensyn til ydeevne er Bcachefs foran Btrfs og andre filsystemer baseret på copy-on-write-mekanismen og demonstrerer en driftshastighed tæt på Ext4 og XFS.
Forbedringer i Btrfs
På Linux 6.7 En forenklet kvotetilstand er blevet implementeret for Btrfs hvilket giver mulighed for bedre ydeevne ved kun at spore udvidelser i den underpartition, hvor de er oprettet, hvilket i høj grad forenkler beregninger og forbedrer ydeevnen, men det tillader ikke udvidelser at blive delt mellem flere underpartitioner. Derudover er der tilføjet en ny stribetræ-datastruktur til Btrfs, velegnet til logisk udvidelseskortlægning i situationer, hvor den fysiske kortlægning ikke stemmer overens mellem enheder. Stoffet bruges i øjeblikket i RAID0- og RAID1-implementeringer til zoneinddelte blokenheder.
Afbrydelse af støtte til Itanium-arkitektur (ia64)
Det understøttelse af ia64-arkitekturen, der bruges i Intel Itanium-processorer, hvad er detos fuldstændig suspenderet i 2021. Intel introducerede Itanium-processorer i 2001, men ia64-arkitekturen var ude af stand til at konkurrere med AMD64, primært på grund af den højere ydeevne af AMD64 og den glattere overgang fra 86-bit x32-processorer. Linus Torvalds udtrykte sin vilje til at give tilbage støtte ia64 til kernen, men jakun hvis der er en vedligeholder, der kan demonstrere høj kvalitet af support for denne platform ud af hovedkernen i mindst et år.
Kontinuerlig migrering af ændringer fra Rust-for-Linux-grenen
Den nye version går over til at bruge Rust 1.73-versionen og tilbyder et sæt kroge til at arbejde med arbejdskøer.
Forbedringer i implementeringen af FIFO-køer
I denne nye version af Linux 6.7 implementering af en letvægts FIFO-mekanisme enkeltforbindelser, der kun kræver en spinlock for at fjerne køen i en processammenhæng og undværer det for atomare tilføjelser til køen i enhver sammenhæng. Derudover blev en objpool cirkulær buffer tilføjet med en skalerbar implementering af en højtydende kø til at allokere og returnere objekter.
TLS-krypteringsunderstøttelse til NVMe-TCP
På Linux 6.7 NVMe-TCP-driveren (som giver dig adgang til NVMe-drev over netværket), Tilføjet understøttelse af kryptering af datatransmissionskanalen ved hjælp af TLS (ved at bruge KTLS og en baggrundsproces) i tlshd-brugerområdet til forbindelsesforhandling.
Forbedret pakkeplanlægningsydelse
Optimeret fq-pakkeplanlægningsydelse, hvilket gjorde det muligt at øge ydeevnen med 5 % under tunge belastninger i tcp_rr (TCP Request/Response) testen og med 13 % med et ubegrænset flow af UDP-pakker.
Vedtagelse af TCP-godkendelsesmuligheden
Understøttelse er blevet tilføjet til TCP-stakken for TCP-AO-udvidelsen, der gør det muligt at kontrollere TCP-headere ved hjælp af MAC-koder, ved at bruge mere moderne HMAC-SHA1 og CMAC-AES-128 algoritmer i stedet for den tidligere tilgængelige TCP-MD5-mulighed baseret på Legacy MD5-algoritme .
Af andre ændringer der skiller sig ud:
- Nye indstillinger er tilføjet «cpuset.cpus.exclusive" og "cpuset.cpus.exclusive. Effektiv» til cpuset for CPU eksklusiv binding.
- BPF-undersystemet implementerer understøttelse af undtagelser, som behandles som en nødudgang fra et BPF-program med mulighed for sikkert at rulle stackrammer ud. Derudover tillader BPF-programmer brugen af kptr-pointere i forbindelse med CPU'en.
- For ARM32- og S390x-arkitekturer er understøttelse af det aktuelle sæt (cpuv4) af BPF-instruktioner blevet tilføjet.
- Til RISC-V-arkitektur er det muligt at bruge Shadow-Call Stack-kontroltilstanden tilgængelig i Clang 17, designet til at beskytte mod overskrivning af en funktions returadresse i tilfælde af et bufferoverløb på stakken.
- En ny intelligent hukommelsessidescanningstilstand er blevet tilføjet til mekanismen til at flette identiske hukommelsessider (
- AppArmor har tilføjet muligheden for at kontrollere adgangen til io_uring-mekanismen og oprette brugernavneområder, hvilket giver dig mulighed for selektivt at tillade adgang til disse funktioner kun til bestemte processer.
- Tilføjet VM Certification API for at verificere integriteten af VM-startprocessen.
- LoongArch-systemer understøtter virtualisering ved hjælp af KVM-hypervisoren.
- Tilføjet initial understøttelse af GSP-RM-firmware til Nouveau-kernemodulet, som bruges i NVIDIA RTX 20+ GPU'en til at flytte initialiserings- og kontroloperationer fra GPU'en til siden af en GSP-mikrocontroller
endelig hvis du er det interesseret i at vide mere om det, du kan kontrollere detaljerne I det følgende link.