Linux 6.7 brengt bcachefs | Haze online
De nieuwe Linux-kernel 6.7 werd van zondag op maandag uitgebracht. Hij zag het daglicht als de eerste kern van het nieuwe jaar en niet – zoals eerder gespeculeerd – als de laatste kern van het oude jaar. De nieuwe kerneluitgave brengt een nieuw bestandssysteem, optionele 32-bit emulatie en verbeteringen aan het geheugenbeheer en de netwerkdoorvoer met zich mee.
advertentie
Op 21 december eindigde het raden: besloot Linus Torvalds Maar de nieuwe kernel werd niet op oudejaarsavond uitgebracht. In plaats daarvan volgde een achtste release candidate (6.7-rc8), waardoor de nieuwe kernel een extra week kreeg om te testen. Allereerst begon het integratievenster voor de volgende kernel 6.8 pas op 8 januari. Deze periode van twee weken om patches in te dienen en deze te selecteren voor de volgende kernelrelease zou uitgerekend op nieuwjaarsdag beginnen. Veel ontwikkelaars zijn mogelijk nog afwezig.
bchefs zijn erbij betrokken
Het bcachefs-bestandssysteem, waarvan de integratie meerdere keren is gepland, heeft eindelijk een kernelrelease bereikt. bcachefs is ontworpen met het oog op duurzaamheid en betrouwbaarheid, en is een “feature-complete” bestandssysteem. Het bevat enkele extra's zoals controlesommen en ondersteuning voor meerdere schijven voor het bestandssysteem, aangezien andere bestandssystemen afhankelijk zijn van andere systeemservices.
Het moderne bestandssysteem is gebaseerd op copy-on-write (COW). In plaats van de gegevens bij het vernieuwen te overschrijven, schrijft het deze naar nieuwe locaties op de schijf en worden de betrokken metagegevens en procesblokken aangepast. Op basis hiervan biedt bcachefs enkele moderne “externe” functies, zoals snapshots, caching of gedeelde bestandssystemen voor virtuele machines.
Voor de gegevensintegriteit introduceert het nieuwe bestandssysteem controlesommen voor gegevens en metagegevens. Bovendien zijn datacompressie en encryptie al ingebouwd in bcachefs. Meerdelige bestandssystemen die door bcachefs worden ondersteund, omvatten RAID1- en RAID10-replicatie en ingebouwde Reed-Solomon-wiscodering voor foutcorrectie, zoals gebruikt in de meeste RAID5- en RAID6-implementaties. Voor al deze functies heeft bcachefs geen volumemanager zoals ext4 of XFS nodig.
Het ambitieuze project concurreert rechtstreeks met andere COW-bestandssystemen zoals btrfs en ZFS. Het is ook bijna beter dan de klassieke ext4- en XFS-bestandssystemen in termen van snelheid en prestaties. Het bestandssysteem is momenteel geclassificeerd als “experimenteel” in de kernel. Het is echter volledig geïmplementeerd en nodigt u uit om het te proberen.
Vind duplicaten efficiënter
Sinds Linux 2.6.32 beschikt de kernel over Kernel Same Page Merging (KSM). KSM zoekt in het geheugen naar pagina's met identieke inhoud. Als het ze vindt, voegt het ze samen tot een pagina en wijst de verwijzingen naar deze geheugengebieden toe aan deze enkele kopie. Hij markeert het ook in Al-Baqarah (kopie op schrift). Zodra de verwijzer de pagina wijzigt, krijgt hij zijn eigen exemplaar.
Deze functie was oorspronkelijk bedoeld voor Kernel-gebaseerde virtuele machines (KVM). Dit betekent dat meer virtuele machines in het bestaande fysieke geheugen kunnen worden ingepakt. Veel onderdelen van virtuele machines die uitgaan van dezelfde afbeeldingen zijn hetzelfde en blijven lange tijd hetzelfde. Tegenwoordig wordt deze functie ook in andere toepassingsscenario's gebruikt. Denk aan applicaties die meerdere instances starten met dezelfde data, of lichtgewicht containers.
Idealiter onthult KSM vrij geheugen. Het verspilt echter CPU-tijd als het samenvoegen van pagina's niet mogelijk is. Dit gebeurt ook vaak als hij aan een nieuwe ronde begint, maar de situatie is niet veel veranderd. Linux 6.7 voegt nu een slimme scanmodus toe aan KSM die pagina's bijhoudt die niet kunnen worden samengevoegd. Bij volgende runs worden deze pagina's minder vaak gecontroleerd. Dit is bedoeld om Khalid Sheikh Mohammed efficiënter te maken.
In de basisconfiguratie wordt Smart Scan automatisch geactiveerd. Via het onderstaande SYS-bestandssysteem /sys/kernel/mm/ksm/smart_scan
U kunt controleren of Smart Scan actief is of niet en deze in- en uitschakelen.
32-bits is uitgeschakeld
Linux 6.7 maakt het voor het eerst mogelijk om 32-bit emulatie op x86_64-systemen uit te schakelen. Voor dit doel wordt een nieuwe kernelopdrachtregelparameter gebruikt ia32_emulation
. 32-bits emulatie wordt tijdens het opstarten uitgeschakeld en kan tijdens het opstarten niet meer worden ingeschakeld zonder opnieuw op te starten. Wanneer uitgeschakeld kunnen 64-bits programma's voor x86_64 zonder beperkingen worden uitgevoerd, maar 32-bits code voor x86 kan niet worden uitgevoerd.
Voorheen was het uitschakelen van 32-bits emulatie alleen mogelijk door de kernel dienovereenkomstig te configureren vóór het compileren. Dus de kernel heeft 32-bit emulatie of niet. Nu kan de simulatie tijdens het hardlopen privé worden in- of uitgeschakeld.
In theorie zou dit het aanvalsoppervlak van een puur 64-bit systeem moeten verkleinen. 32-bits compatibiliteitsinterfaces worden over het algemeen minder intensief getest dan andere interfaces. Dit kan leiden tot verminderde veiligheid. Bovendien wordt het aanvalsoppervlak van het systeem verkleind als er minder interfaces zijn die kunnen worden uitgebuit.
Bovendien kun je komkommer gebruiken IA32_EMULATION_DEFAULT_DISABLED
Geef bij het configureren van de kernel op of 32-bit emulatie standaard moet worden uitgeschakeld of ingeschakeld. Dit betekent dat u deze toestand ook kunt controleren ia32_emulation
Het werkt echt: zet het aan of uit.
“Coffee fanatic. Gamer. Award-winning zombie aficionado. College student. Hardcore internet proponent. Twitter guru. Subtly charming bacon nerd. Thinker.”