„Glibc 2.36“ pateikiama su naujomis „Linux“ funkcijomis, patobulinimais ir kt

Po šešių mėnesių kūrimo buvo paskelbta apie naujos glibc 2.36 versijos pristatymą, kuri visiškai atitinka ISO C11 ir POSIX.1-2017 standartų reikalavimus ir kurioje naujoje versijoje yra pataisymų iš 59 kūrėjų.

Tiems, kurie nepažįsta „Glibc“, jie turėtų žinoti, kas tai yra GNU C biblioteka, paprastai žinoma kaip „glibc“ yra standartinė GNU C vykdymo laiko biblioteka. Sistemose, kuriose jis naudojamas, ši C biblioteka teikia ir apibrėžia sistemos iškvietimus ir kitas pagrindines funkcijas, ja naudojasi beveik visos programos. 

Pagrindinės naujos „Glibc 2.36“ funkcijos

Šioje pateiktoje naujoje versijoje pabrėžiama, kad Pridėtas naujo santykinio perkėlimo adreso formato palaikymas DT_RELR, leidžianti sumažinti santykinių perkėlimų dydį bendrinamuose objektuose ir susietuose vykdomuosiuose failuose PIE (nuo pozicijos nepriklausomų vykdomųjų failų) režimu. Norint naudoti lauką DT_RELR ELF failuose, reikia palaikyti parinktį "-z pack-relative-relocs" linkeryje, įdiegtą binutils 2.38.

Kitas naujojoje versijoje išsiskiriantis pakeitimas yra tas „Linux“ funkcijos pidfd_open, pidfd_getfd ir pidfd_send_signal buvo įdiegtos siekiant suteikti prieigą prie pidfd funkcijų kuri padeda tvarkyti PID pakartotinio naudojimo situacijas, kad būtų galima tiksliau nustatyti procesus, pasiekiančius stebimus failus (pidfd yra susietas su konkrečiu procesu ir nesikeičia, o PID gali būti prijungtas prie kito proceso, kai procesas baigia dabartinį su šiuo PID susietą procesą).

Neskaitant to, process_madvise () taip pat ateina į LinuxKad leidžia procesui vykdyti madvise() sistemos iškvietimą kito proceso vardu, identifikuojant tikslinį procesą naudojant pidfd. Per madvise() galite informuoti branduolį apie darbo su atmintimi ypatybes, kad optimizuotumėte proceso atminties valdymą, pavyzdžiui, remdamasis perduota informacija, branduolys gali inicijuoti papildomos laisvos atminties išleidimą.

Taip pat pažymima, kad funkcija buvo pridėta process_mrelease(), kuri leidžia pagreitinti proceso, kuris užbaigia jo vykdymą, atlaisvinimą. Įprastomis aplinkybėmis išteklių atleidimas ir proceso nutraukimas nėra akimirksniu ir gali būti atidėtas dėl įvairių priežasčių, trukdančių vartotojo erdvės išankstinio įspėjimo sistemoms, tokioms kaip oomd (pateikiama Systemd). Iškviečiant procesą_mrelease, šios sistemos gali labiau nuspėjamai inicijuoti atminties atkūrimą iš priverstinai nutrauktų procesų.

Kita vertus, pabrėžiama, kad jis buvo pridėtas „no-yyyy“ parinkties palaikymas integruotam įgyvendinimui DNS raiška, leidžianti išjungti AAAA įrašų DNS užklausų siuntimą (IPv6 adreso nustatymas pagal pagrindinio kompiuterio pavadinimą), net kai vykdomos NSS funkcijos, pvz., getaddrinfo(), kad būtų supaprastintas trikčių šalinimas. Ši parinktis neturi įtakos IPv6 adresų susiejimo, apibrėžto /etc/hosts, ir getaddrinfo() iškvietimų su AI_PASSIVE vėliava tvarkymui.

„Linux“ funkcijos buvo pridėtos fsopen, fsmount, move_mount, fsconfig, fspick, open_tree ir mount_setattr punktas suteikti prieigą prie naujos branduolio API, kad būtų galima valdyti failų sistemų prijungimą remiantis surinkimo vardų erdvėmis. Siūlomos funkcijos leidžia atskirai apdoroti skirtingus montavimo etapus (apdoroti superbloką, gauti failų sistemos informaciją, prijungti, prijungti prie prijungimo taško), kurie anksčiau buvo atliekami naudojant bendrą mount() funkciją.

Buvo pridėta funkcijos arc4random, arc4random_buf ir arc4random_uniform pateikti nuorodas sistemos skambutyje atsitiktinai ir sąsaja /dev/urandom, pateikia aukštos kokybės pseudoatsitiktinius skaičius.

Kai veikia Linux sistemoje, teikiamas architektūros palaikymas iš instrukcijų rinkinio LoongArch naudojamas Loongson 3 5000 procesoriuose ir įdiegia naują RISC ISA, panašų į MIPS ir RISC-V. Dabartinėje formoje galimas tik suderinamumas su 64 bitų variantu pateikė LoongArch (LA64). Kad veiktų, reikalingas bent binutils 2.38, GCC 12 ir Linux branduolys 5.19.

Iš kitų išsiskiriančių pakeitimų:

  • Išankstinio susiejimo mechanizmas, taip pat susiję LD_TRACE_PRELINKING ir LD_USE_LOAD_BIAS aplinkos kintamieji ir susiejimo priemonės yra nebenaudojami ir bus pašalinti būsimame leidime.
  • Pašalintas kodas, skirtas patikrinti Linux branduolio versiją ir tvarkyti aplinkos kintamąjį LD_ASSUME_KERNEL. Minimali branduolio versija, palaikoma kompiliuojant Glibc, nustatoma ELF NT_GNU_ABI_TAG lauku.
  • Aplinkos kintamasis LD_LIBRARY_VERSION nebenaudojamas Linux platformoje.

Galiausiai, jei jus domina daugiau apie tai sužinoti, galite susipažinti su išsamia informacija Šioje nuorodoje.


Palikite komentarą

Jūsų elektroninio pašto adresas nebus skelbiamas. Privalomi laukai yra pažymėti *

*

*

  1. Atsakingas už duomenis: Miguel Ángel Gatón
  2. Duomenų paskirtis: kontroliuoti šlamštą, komentarų valdymą.
  3. Įteisinimas: jūsų sutikimas
  4. Duomenų perdavimas: Duomenys nebus perduoti trečiosioms šalims, išskyrus teisinius įsipareigojimus.
  5. Duomenų saugojimas: „Occentus Networks“ (ES) talpinama duomenų bazė
  6. Teisės: bet kuriuo metu galite apriboti, atkurti ir ištrinti savo informaciją.