Tvrtka Oracle prva stabilna verzija (UEK R6), unaprijeđena verzija Linux kernela, namijenjena korištenju u Oracle Linux distribuciji kao alternativa standardnom paketu s kernelom iz Red Hat Enterprise Linux. Kernel je dostupan samo za arhitekture x86_64 i ARM64 (aarch64). Izvori kernela, uključujući odvojene zakrpe, u javnom Git repozitoriju Oraclea.
Paket Unbreakable Enterprise Kernel 6 temelji se na kernelu (UEK R5 temeljio se na kernelu 4.14), koji je obogaćen novim mogućnostima, optimizacijama i ispravkama, te je provjeren na kompatibilnost s većinom aplikacija koje rade na RHEL-u, a posebno je optimiziran za industrijski softver i opremu Oraclea. Instalacijski i src paketi kernela UEK R6 pripremljeni su za Oracle Linux i . Podrška za granu 6.x prestaje, za primjenu UEK R6 potrebno je ažurirati sustav na Oracle Linux 7 (nema prepreka za korištenje ovog kernela na sličnim verzijama RHEL, CentOS i Scientific Linux).
Ključne Unbreakable Enterprise Kernel 6:
- Proširena podrška za sustave bazirane na 64-bitnoj arhitekturi ARM (aarch64).
- Implementirana podrška za sve mogućnosti Cgroup v2.
- Implementiran je okvir ktask za paralelno izvršavanje zadataka u kernelu koji troše značajne resurse CPU-a. Na primjer, korištenjem ktask-a može se organizirati paralelno izvršavanje operacija čišćenja raspona stranica u memoriji ili obrade popisa inode-a;
- Uključena je paralelna verzija kswapd za obradu operacija zamjene stranica u memoriji na asinkroni način, omogućujući smanjenje broja izravnih (sinkronih) operacija zamjene. Kada se smanji broj slobodnih stranica u memoriji, kswapd izvodi skeniranje kako bi otkrio neiskorištene stranice koje se mogu osloboditi.
- Podrška za verifikaciju cjelovitosti slike kernela i firmvera putem digitalnog potpisa prilikom pokretanja kernela koristeći mehanizam Kexec (pokretanje kernela iz već učitanog sustava).
- Optimizirana je izvedba sustava za upravljanje virtualnom memorijom, poboljšana je učinkovitost čišćenja stranica memorije i predmemorije, te je poboljšana obrada zahtjeva za nealokiranim stranicama memorije (page faults).
- Proširena podrška za NVDIMM, naznačena trajna memorija sada se može koristiti kao tradicionalna RAM.
- Završena je migracija na sustav dinamičkog ispravljanja pogrešaka DTrace 2.0, koji na korištenje pod sustava jezgre eBPF. DTrace sada radi iznad eBPF, slično načinima na koje postojeći alati za praćenje rade iznad eBPF u Linuxu.
- Unaprijeđena je datotečna sustava OCFS2 (Oracle Cluster File System).
- Poboljšana je podrška za datotečnu sustavu Btrfs. Dodana je mogućnost korištenja Btrfs na korijenskim particijama. U installer je dodana opcija za odabir Btrfs prilikom formatiranja uređaja. Dodana je mogućnost izrade swap datoteka na particijama s Btrfs. U Btrfs je dodana podrška za kompresiju koristeći algoritam ZStandard.
- Dodana je podrška za sučelje za asinhrono ulaz/izlaz — io_uring, koje se ističe podrškom za polling ulaz/izlaz i mogućnošću rada s međuspremanjem kao i bez međuspremanja. U pogledu performansi, io_uring je vrlo blizak SPDK-u i značajno nadmašuje libaio prilikom korištenja polinga. Za korištenje io_uring-a u krajnjim aplikacijama koje rade u korisničkom prostoru, pripremljena je biblioteka liburing, koja pruža visoko-nivo vezu iznad sučelja jezgre;
- Dodana je podrška za način za brzo šifriranje uređaja.
- Dodana je podrška za kompresiju koristeći algoritam (zstd).
- U datotečnom sustavu ext4 koriste se 64-bitne oznake vremena u poljima superbloka.
- U XFS-u su uključena sredstva za obavještavanje o stanju cjelovitosti FS tijekom rada i dobivanje statusa o izvršavanju fsck-a u hodu.
- TCP stog je po defaultu prebačen na model „“ umjesto „As Fast As Possible“ prilikom slanja paketa. Za UDP je uključena podrška za GRO (Generic Receive Offload). Dodana je podrška za prijem i slanje TCP paketa u načinu zero-copy.
- Aktivirana je implementacija protokola TLS na razini jezgre (KTLS), koja se sada može primjenjivati ne samo za slane nego i za prihvaćene podatke.
- Kao backend za vatrozid po defaultu je korišten
nftables. Opcionalno je dodana podrška . - Dodana je podrška za pod sustav XDP (eXpress Data Path), koji omogućava pokretanje BPF programa na razini mrežnog drajvera s mogućnošću izravnog pristupa DMA međuspremniku paketa i u fazi prije dodijeljivanja međuspremnika skbuff mrežnom stogu.
- Poboljšan je i uključen kada se koristi UEFI Secure Boot način , koji ograničava pristup korisnika root jezgru i blokira putanje za zaobilaženje UEFI Secure Boot. Na primjer, u lockdown režimu ograničava se pristup \/dev\mem, \/dev\kmem, \/dev\port, \/proc\kcore, debugfs, režimu ispitivanja kprobes, mmiotrace, tracefs, BPF, PCMCIA CIS (Struktura informacija o kartici), nekim ACPI sučeljima i MSR registrima CPU-a, blokiraju se pozivi kexec_file i kexec_load, zabranjuje se prelazak u stanje spavanja, ograničava se korištenje DMA za PCI uređaje, zabranjuje se uvoz ACPI koda iz EFI varijabli, ne dozvoljavaju se manipulacije s ulazno/izlaznim portovima, uključujući promjenu broja prekida i ulazno/izlaznog porta za serijski port.
- Dodana je podrška za proširene instrukcije IBRS (Poboljšana restrikcija spekulativnog grananja), koje omogućuju prilagodljivo odobravanje i zabranjivanje spekulativnog izvršavanja instrukcija tokom obrade prekida, sistemskih poziva i kontekstualnog prebacivanja. U prisustvu podrške za Enhanced IBRS, ova metoda se koristi za zaštitu od napada klase Spectre V2 umjesto Retpoline, jer omogućava postizanje boljih performansi.
- Poboljšana je zaštita u direktorijima dostupnim svima za pisanje. U takvim direktorijima zabranjeno je kreiranje FIFO datoteka i datoteka koje pripadaju korisnicima koji se ne podudaraju sa vlasnikom direktorija sa sticky oznakom.
- Zadano je na ARM sistemima uključena randomizacija adresnog prostora jezgra (KASLR). Za Aarch64 uključena je autentifikacija pokazivača.
- Dodana je podrška za „NVMe over Fabrics TCP”.
- Dodavanjem virtio-pmem drajvera omogućava se pristup uređajima za pohranu reflektiranim u fizički adresni prostor, poput NVDIMM.
Izvor: opennet.ru
