Oracle har publicerat stabila versioner av distributionspaketet Oracle Linux 9 och Unbreakable Enterprise Kernel 7 (UEK R7), som Àr avsett att anvÀndas i Oracle Linux som ett alternativ till det standardpaket som innehÄller kÀrnan frÄn Red Hat Enterprise Linux. Oracle Linux 9-distributionen baseras pÄ paketbasen frÄn Red Hat Enterprise Linux 9 och Àr helt binÀrt kompatibel med den.
För nedladdning utan begrÀnsningar finns installations-ISO-avbildningar pÄ 8,6 GB och 840 MB, förberedda för x86_64- och ARM64 (aarch64) arkitekturer. För Oracle Linux 9 finns det obegrÀnsad och kostnadsfri Ätkomst till yum-repositoriet med binÀra paketuppdateringar med korrigeringar (errata) och sÀkerhetsproblem. Separata stödjande repository har Àven förberetts för paketet Application Stream och CodeReady Builder.
Utöver kÀrnpaketet frÄn RHEL (baserat pÄ kÀrna 5.14) erbjuds Oracle Linux sitt eget Unbreakable Enterprise Kernel 7, baserat pÄ Linux-kÀrnan 5.15 och optimerat för arbete med industriell programvara och Oracle-hÄrdvara. KÀllkoden för kÀrnan, inklusive uppdelning i separata patchar, finns tillgÀnglig i den offentliga Git-repositoriet för Oracle. Unbreakable Enterprise Kernel installeras som standard, positionerat som ett alternativ till standardpaketet med RHEL-kÀrnan och erbjuder en rad avancerade funktioner, sÄsom DTrace-integration och förbÀttrat stöd för Btrfs. Förutom det extra kÀrnan, Àr versionerna av Oracle Linux 9 och RHEL 9 helt identiska i funktionalitet (Àndringslistan kan ses i meddelandet om RHEL9).
Nyckelinnovationerna i Unbreakable Enterprise Kernel 7:
- FörbÀttrat stöd för Aarch64-arkitekturen. Storleken pÄ minnessidor pÄ 64-bitars ARM-system har som standard minskats frÄn 64 KB till 4 KB, vilket bÀttre matchar minnesvolymer och lasttyper som Àr typiska för ARM-system.
- Leveransen av det dynamiska felsökningssystemet DTrace 2.0 har fortsatt, och har övergÄtt till att anvÀnda kÀrnans eBPF-subsystem. DTrace 2.0 körs ovanpÄ eBPF, pÄ liknande sÀtt som befintliga spÄrningsverktyg i Linux fungerar.
- FörbÀttrade funktioner för Btrfs-filsystemet. En asynkron implementation av DISCARD-operationen har lagts till i Btrfs för att markera frigjorda block som inte lÀngre behöver lagras fysiskt. Den asynkrona implementeringen gör det möjligt att inte vÀnta pÄ att DISCARD ska slutföras av lagringsenheten och att utföra denna operation i bakgrunden. Nya monteringsalternativ har lagts till för att förenkla ÄterstÀllningen av data frÄn ett skadat filsystem: 'rescue=ignorebadroots' för montering trots skador pÄ vissa rottrÀd (extent, uuid, data reloc, device, csum, free space), 'rescue=ignoredatacsums' för att avaktivera kontrollsumma-verifiering för data och 'rescue=all' för att aktivera 'ignorebadroots', 'ignoredatacsums' och 'nologreplay' samtidigt. Betydande prestandaförbÀttringar har genomförts relaterade till utförandet av fsync()-operationer. Stöd för fs-verity (verifiering av Àkthet och integritet för filer) och koppling av anvÀndar-ID:n har lagts till.
- I XFS har stöd för DAX-operationer implementerats för direkt Ätkomst till filsystemet utan att gÄ genom sidcache för att förhindra dubbelcachning. FörÀndringar har lagts till för att lösa problem med överflöde av 32-bitars data typ time_t Är 2038, inklusive nya monteringsalternativ bigtime och inobtcount.
- FörbÀttringar har genomförts i OCFS2-filsystemet (Oracle Cluster File System).
- ZoneFS-filsystemet har lagts till, vilket förenklar lÄgnivÄarbete med zonerade lagringsenheter. Med zonerade lagringsenheter avses enheter pÄ hÄrda magnetiska diskar eller NVMe SSD, dÀr lagringsutrymmet Àr uppdelat i zoner som bestÄr av grupper av block eller sektorer, dit data endast fÄr lÀggas till sekventiellt med uppdatering av hela blockgruppen. ZoneFS-filsystemet kopplar varje zon i enheten till en separat fil som kan anvÀndas för att lagra data i raw-lÀge utan manipulation pÄ sektornivÄ och blocknivÄ, vilket gör att applikationer kan anvÀnda fil-API istÀllet för direkt Ätkomst till blockenheten via ioctl.
- Stödet för protokollet VPN WireGuard.
- Möjligheterna för eBPF-subsystemet har utökats. En CO-RE-mekanism (Compile Once â Run Everywhere) har implementerats, vilket löser problemet med portabilitet för kompilerade eBPF-program och gör det möjligt att kompilera eBPF-kod endast en gĂ„ng och anvĂ€nda en speciell universell laddare som anpassar det laddade programmet till den aktuella kĂ€rnan och BTF-typer (BPF Type Format). En 'BPF trampoline'-mekanism har lagts till, vilket i praktiken kan minska overhead vid samtal mellan kĂ€rnan och BPF-programmen till nĂ€stan noll. Möjligheter till direkt Ă„tkomst till kĂ€rnans funktionalitet frĂ„n BPF-program och avbrytning av handlare har tillhandahĂ„llits.
- En detektor för split lockdowns har integrerats, som uppstÄr vid Ätkomst till osorterade data i minnet pÄ grund av att data vid utförande av atomÀra instruktioner korsar tvÄ CPU-cachelinjer. KÀrnan kan pÄ flygande fot upptÀcka sÄdana lÄs som leder till betydande prestandaförluster och avge varningar eller skicka ett SIGBUS-signal till den applikation som orsakade lÄsningen.
- Stöd för Multipath TCP (MPTCP) har införts, en utvidgning av TCP-protokollet för att organisera TCP-anslutningar med paketleverans simultant över flera vÀgar genom olika nÀtverksgrÀnssnitt kopplade till olika. IP-adresser.
- I schemalÀggaren för uppgifter har en SCHED_CORE-schemalÀggningslÀge implementerats, vilket möjliggör kontroll över vilka processer som kan köras simultant pÄ samma CPU-kÀrna. Varje process kan tilldelas en cookie-id som definierar förtroendeomrÄdet mellan processerna (till exempel tillhörighet till en och samma anvÀndare eller container). Vid organisation av kodens körning kan schemalÀggaren sÀkerstÀlla delning av en CPU-kÀrna endast för processer relaterade till en och samma Àgare, vilket kan anvÀndas för att blockera vissa attacker av Spectre-typ genom att förhindra körning i en SMT-trÄd (Hyper Threading) av uppgifter som Àr betrodda och icke-betrodda.
- För cgroups har en minnescontroller för slab (slab memory controller) implementerats, som kÀnnetecknas av att flytta redovisningen av slab frÄn nivÄer av minnessidor till objekt i kÀrnan, vilket möjliggör gemensam anvÀndning av slab-sidor i olika cgroup, istÀllet för att avsÀtta separata slab-cachar för varje cgroup. Den föreslagna metoden gör det möjligt att öka effektiviteten vid anvÀndning av slab, minska storleken pÄ den anvÀnda slab-minnen med 30-45%, betydligt minska det totala minnesanvÀndningen av kÀrnan och minska minnesfragmenteringen.
- Det har garanterats att debuginformationen levereras i CTF-format (Compact Type Format), vilket ger en kompakt lagring av information om C-typer, relationer mellan funktioner och debug-symboler.
- Leveransen av DRBD-modulen (Distributed Replicated Block Device) och enheten /dev/raw har upphört (för att fÄ direkt Ätkomst till filer bör flaggan O_DIRECT anvÀndas).
KĂ€lla: opennet.ru
