Linux-ydin on Linux-käyttöjärjestelmien (OS) selkäranka, ja se on perusrajapinta tietokoneen laitteiston ja sen prosessien välillä.
äskettäin Linus Torvalds julkisti uuden Linux-ytimen version 6.7, joka esitetään kahden kuukauden kehitystyön jälkeen ja merkittävimpiä muutoksia ovat Bcachefs-tiedostojärjestelmän integrointi, Itanium-arkkitehtuurin tuen lopettaminen, Nouveaun kyky työskennellä GSP-R-laiteohjelmiston kanssa, tuki TLS-salaukselle NVMe-TCP, mahdollisuus käyttää poikkeuksia muun muassa BPF:ssä.
Linux-ytimen uusi versio 6.7 Se koostuu 15291 XNUMX korjauksesta ja noin 45 % kaikista tehdyistä muutoksista liittyy laiteajureihin, 14 % muutoksista liittyy tietyn laitteistoarkkitehtuurien koodin päivittämiseen, 13 % liittyy verkkopinoon, 5 % liittyy tiedostojärjestelmiin ja 3 % liittyy sisäiset ytimen alijärjestelmät.
Korjaustiedoston koko on 72 Mt (muutokset vaikuttivat 13.467 906.147 tiedostoon, 341.048 XNUMX koodiriviä lisättiin ja XNUMX XNUMX riviä poistettiin).
Linux-ytimen tärkeimmät uutuudet 6.7
Bcachefs-tiedostojärjestelmän integrointi
Linux 6.7 ottaa käyttöön Bcachefs-tiedostojärjestelmäkoodin, joka pyrkii saavuttamaan XFS:n suorituskyvyn, luotettavuuden ja skaalautuvuuden yhdistettynä Btrfs- ja ZFS:n edistyneisiin toimintoihin.
Bkätköt tukee ominaisuuksia, kuten usean laitteen sisällyttämistä yhdessä osiossa, monikerroksiset asemamallit (alataso, jossa on usein käytettyä dataa nopeiden SSD-levyjen perusteella ja ylin kerros vähemmän käytettyjen kiintolevyjen tietoja), replikointi (RAID 1/10), välimuisti, läpinäkyvä tiedonpakkaus (LZ4-, gzip- ja ZSTD-tilat), tilaleikkaukset, eheyden tarkistus tarkistussummien avulla, kyky tallentaa Reed-Solomon-virheenkorjauskoodeja (RAID 5/6), tiedon tallennus salatussa muodossa (käytetään ChaCha20 ja Poly1305) . Suorituskyvyn suhteen Bcachefs on edellä Btrfs:ää ja muita tiedostojärjestelmiä perustuu kopiointi-kirjoitusmekanismiin ja osoittaa toimintanopeuden lähellä Ext4:ää ja XFS:ää.
Btrfs:n parannuksia
Linuxissa 6.7 Btrfs:lle on otettu käyttöön yksinkertaistettu kiintiötila joka mahdollistaa paremman suorituskyvyn seuraamalla laajennuksia vain siinä aliosiossa, jossa ne on luotu yksinkertaistaa huomattavasti laskelmia ja parantaa suorituskykyä, mutta se ei salli laajennusten jakamista useiden aliosioiden välillä. Lisäksi Btrfs:ään on lisätty uusi raitapuutietorakenne, joka soveltuu loogiseen laajennuskartoituksiin tilanteissa, joissa fyysinen kartoitus ei täsmää laitteiden välillä. Kangasta käytetään tällä hetkellä RAID0- ja RAID1-toteutuksissa kaavoitetuille lohkolaitteille.
Itanium-arkkitehtuurin tuen lopettaminen (ia64)
The tuki ia64-arkkitehtuurille, jota käytetään Intel Itanium -suorittimissa, mikä se ontoimintamme keskeytettiin kokonaan vuonna 2021. Intel esitteli Itanium-prosessorit vuonna 2001, mutta ia64-arkkitehtuuri ei kyennyt kilpailemaan AMD64:n kanssa pääasiassa AMD64:n paremman suorituskyvyn ja sujuvamman siirtymisen vuoksi 86-bittisistä x32-prosessoreista. Linus Torvalds ilmaisi halukkuutensa palauttaa tuki ia64 ytimeen, mutta kyllävain, jos on ylläpitäjä, joka pystyy osoittamaan korkealaatuisen tuen tälle alustalle pois pääytimestä vähintään vuodeksi.
Jatkuva muutosten siirto Rust-for-Linux-haaraasta
Uusi versio siirtyy käyttämään Rust 1.73 -versiota ja tarjoaa joukon koukkuja työjonojen kanssa työskentelemiseen.
Parannuksia FIFO-jonojen käyttöönotossa
Tässä uudessa Linux 6.7 -versiossa kevyen FIFO-mekanismin käyttöönotto Yksittäiset yhteydet, jotka vaativat spinlockin vain jonosta poistamiseen prosessikontekstissa ja luopuvat siitä atomin lisäyksille jonoon missä tahansa kontekstissa. Lisäksi lisättiin pyöreä objpool-puskuri, jossa on skaalattava suorituskykyjonon toteutus objektien allokoimiseksi ja palauttamiseksi.
TLS-salaustuki NVMe-TCP:lle
Linuxissa 6.7 NVMe-TCP-ohjain (jolla voit käyttää NVMe-asemia verkon kautta), Lisätty tuki tiedonsiirtokanavan salaamiseen TLS:n avulla (käyttäen KTLS:ää ja taustaprosessia) tlshd-käyttäjätilassa yhteysneuvottelua varten.
Parannettu pakettien ajoituksen suorituskyky
Optimoitu fq-pakettien ajoituksen suorituskyky, mikä mahdollisti tcp_rr (TCP Request/Response) -testin suorituskyvyn lisäämisen 5 % raskaassa kuormituksessa ja 13 % rajoittamattomalla UDP-pakettivirralla.
TCP-todennusvaihtoehdon käyttöönotto
TCP-pinoon on lisätty tuki TCP-AO-laajennukselle, joka mahdollistaa TCP-otsikoiden tarkistamisen MAC-koodeilla käyttämällä nykyaikaisempia HMAC-SHA1- ja CMAC-AES-128-algoritmeja aiemmin saatavilla olevan Legacy MD5 -algoritmiin perustuvan TCP-MD5-vaihtoehdon sijaan. .
Niistä muut muutokset jotka erottuvat:
- Uusia asetuksia on lisätty «cpuset.cpus.exclusive" ja "cpuset.cpus.exclusive. Tehokas» cpuset CPU yksinoikeudella sitoa.
- BPF-alijärjestelmä toteuttaa tuen poikkeuksille, jotka käsitellään hätäuloskäynninä BPF-ohjelmasta, jolla on mahdollisuus purkaa pinokehykset turvallisesti. Lisäksi BPF-ohjelmat sallivat kptr-osoittimien käytön prosessorin yhteydessä.
- ARM32- ja S390x-arkkitehtuureihin on lisätty tuki nykyiselle BPF-käskyjoukolle (cpuv4).
- RISC-V-arkkitehtuurissa on mahdollista käyttää Clang 17:ssä saatavilla olevaa Shadow-Call-pinon tarkistustilaa, joka on suunniteltu suojaamaan funktion paluuosoitteen ylikirjoitukselta, jos pinossa puskurin ylivuoto.
- Identtisten muistisivujen yhdistämismekanismiin on lisätty uusi älykäs muistisivujen skannaustila (
- AppArmor on lisännyt mahdollisuuden hallita pääsyä io_uring-mekanismiin ja luoda käyttäjänimiavaruuksia, jolloin voit sallia pääsyn näihin ominaisuuksiin vain tietyille prosesseille.
- Lisätty VM Certification API VM:n käynnistysprosessin eheyden varmistamiseksi.
- LoongArch-järjestelmät tukevat virtualisointia KVM-hypervisorilla.
- Lisätty alustava tuki GSP-RM-laiteohjelmistolle Nouveau-ydinmoduuliin, jota käytetään NVIDIA RTX 20+ -grafiikkasuorittimessa siirtämään alustus- ja ohjaustoiminnot GPU:sta GSP-mikroohjaimen puolelle.
vihdoin jos olet kiinnostunut tietämään siitä lisää, voit tarkistaa yksityiskohdat Seuraavassa linkissä.