Oracle lansează Unbreakable Enterprise Kernel 6

Compania Oracle prezentat prima lansare stabilă Nucleos Enterprise Kernel 6 (UEK R6), o versiune extinsă a nucleului Linux, poziționată pentru utilizare în distribuția Oracle Linux ca alternativă la pachetul standard de kernel de la Red Hat Enterprise Linux. Nucleul este disponibil numai pentru arhitecturile x86_64 și ARM64 (aarch64). Sursele kernelului, inclusiv defalcarea în patch-uri individuale, publicat în depozitul public Git Oracle.

Pachetul Unbreakable Enterprise Kernel 6 se bazează pe nucleu Linux 5.4 (UEK R5 s-a bazat pe kernel 4.14), care este actualizat cu noi funcții, optimizări și remedieri și este, de asemenea, testat pentru compatibilitate cu majoritatea aplicațiilor care rulează pe RHEL și este optimizat în mod special pentru a funcționa cu software industrial și hardware Oracle. Pachetele de instalare și src cu nucleul UEK R6 sunt pregătite pentru Oracle Linux 7.x и 8.x. Suportul pentru ramura 6.x a fost întrerupt; pentru a utiliza UEK R6, trebuie să actualizați sistemul la Oracle Linux 7 (nu există obstacole în calea utilizării acestui nucleu în versiuni similare de RHEL, CentOS și Scientific Linux).

Cheie inovații Kernel Enterprise 6, care nu poate fi spart:

  • Suport extins pentru sisteme bazate pe arhitectura ARM pe 64 de biți (aarch64).
  • A fost implementat suport pentru toate caracteristicile Cgroup v2.
  • Cadrul ktask a fost implementat pentru a paraleliza sarcinile din nucleu care consumă resurse semnificative ale procesorului. De exemplu, folosind ktask, se poate organiza paralelizarea operațiunilor pentru a șterge intervale de pagini de memorie sau a procesa o listă de inoduri;
  • O versiune paralelizată a kswapd a fost activată pentru a procesa schimburile de pagini de memorie în mod asincron, reducând numărul de schimburi directe (sincrone). Pe măsură ce numărul de pagini de memorie libere scade, kswapd efectuează o scanare pentru a identifica paginile neutilizate care pot fi eliberate.
  • Suport pentru verificarea integrității imaginii nucleului și a firmware-ului folosind o semnătură digitală la încărcarea nucleului folosind mecanismul Kexec (încărcarea nucleului dintr-un sistem deja încărcat).
  • Performanța sistemului de gestionare a memoriei virtuale a fost optimizată, eficiența ștergerii memoriei și a paginilor cache a fost îmbunătățită, iar procesarea accesului la paginile de memorie nealocate (defecțiuni de pagină) a fost îmbunătățită.
  • Suportul NVDIMM a fost extins, această memorie persistentă poate fi acum folosită ca RAM tradițională.
  • S-a făcut trecerea la sistemul de depanare dinamică DTrace 2.0, care tradus pentru a utiliza subsistemul nucleu eBPF. DTrace rulează acum peste eBPF, similar cu modul în care instrumentele de urmărire Linux existente rulează peste eBPF.
  • Au fost aduse îmbunătățiri sistemului de fișiere OCFS2 (Oracle Cluster File System).
  • Suport îmbunătățit pentru sistemul de fișiere Btrfs. S-a adăugat posibilitatea de a folosi Btrfs pe partițiile rădăcină. La programul de instalare a fost adăugată o opțiune pentru a selecta Btrfs la formatarea dispozitivelor. S-a adăugat posibilitatea de a plasa fișiere de schimb pe partiții cu Btrfs. Btrfs a adăugat suport pentru compresie folosind algoritmul ZStandard.
  • S-a adăugat suport pentru interfața pentru I/O asincron - io_uring, care se remarcă prin suportul pentru sondarea I/O și capacitatea de a lucra cu sau fără buffering. În ceea ce privește performanța, io_uring este foarte aproape de SPDK și este semnificativ înaintea libaio atunci când lucrează cu sondajul activat. Pentru a utiliza io_uring în aplicațiile finale care rulează în spațiul utilizatorului, biblioteca de liburare a fost pregătită, oferind o legare la nivel înalt peste interfața kernelului;
  • Adăugat suport pentru mod adiantum pentru criptarea rapidă a stocării.
  • S-a adăugat suport pentru compresie folosind algoritmul zstandard (zstd).
  • Sistemul de fișiere ext4 utilizează marcaje de timp pe 64 de biți în câmpurile superbloc.
  • XFS include instrumente pentru raportarea stării de integritate a sistemului de fișiere în timpul funcționării și obținerea stării de execuție a fsck din mers.
  • Stiva TCP implicită a fost schimbată la „Ora de plecare devreme" în loc de "Cât mai rapid posibil" atunci când trimiteți pachete. Suportul GRO (Generic Receive Offload) este activat pentru UDP. S-a adăugat suport pentru primirea și trimiterea pachetelor TCP în modul zero-copy.
  • Este implicată implementarea protocolului TLS la nivel de kernel (KTLS), care acum poate fi folosit nu numai pentru datele trimise, ci și pentru datele primite.
  • Activat ca backend pentru firewall în mod implicit
    nftables. S-a adăugat suport opțional bpfilter.

  • S-a adăugat suport pentru subsistemul XDP (eXpress Data Path), care permite rularea programelor BPF pe Linux la nivel de driver de rețea, cu posibilitatea de a accesa direct bufferul de pachete DMA și în etapa înainte ca tamponul skbuff să fie alocat de către stiva de rețea.
  • Îmbunătățit și activat când utilizați modul UEFI Secure Boot autoblocare, care limitează accesul utilizatorului root la kernel și blochează căile de ocolire UEFI Secure Boot. De exemplu, în modul de blocare, acces la /dev/mem, /dev/kmem, /dev/port, /proc/kcore, debugfs, kprobes debug mode, mmiotrace, tracefs, BPF, PCMCIA CIS (Card Information Structure), unele interfețele sunt limitate registrele ACPI și MSR ale procesorului, apelurile către kexec_file și kexec_load sunt blocate, modul sleep este interzis, utilizarea DMA pentru dispozitivele PCI este limitată, importul codului ACPI din variabilele EFI este interzis, manipulările cu porturile I/O nu sunt permis, inclusiv modificarea numărului de întrerupere și a portului I/O pentru portul serial.
  • S-a adăugat suport pentru instrucțiuni îmbunătățite IBRS (Enhanced Indirect Branch Restricted Speculation), care vă permit să activați și să dezactivați în mod adaptiv execuția speculativă a instrucțiunilor în timpul procesării întreruperilor, apelurilor de sistem și comutărilor de context. Cu suport IBRS îmbunătățit, această metodă este utilizată pentru a proteja împotriva atacurilor Spectre V2 în loc de Retpoline, deoarece permite performanțe mai mari.
  • Securitate îmbunătățită în directoarele care pot fi scrise în întreaga lume. În astfel de directoare, este interzisă crearea de fișiere FIFO și fișiere deținute de utilizatori care nu se potrivesc cu proprietarul directorului cu steag-ul lipicios.
  • În mod implicit, pe sistemele ARM, randomizarea spațiului de adrese kernel pe sisteme (KASLR) este activată. Autentificarea pointerului este activată pentru Aarch64.
  • S-a adăugat suport pentru „NVMe over Fabrics TCP”.
  • S-a adăugat driver virtio-pmem pentru a oferi acces la dispozitivele de stocare mapate cu spațiu de adrese fizice, cum ar fi NVDIMM-urile.

Sursa: opennet.ru

Adauga un comentariu