Glibc 2.36 saabub Linuxi jaoks mõeldud uute funktsioonide, täiustuste ja muuga

Pärast kuuekuulist arendustööd kuulutati välja glibc 2.36 uus versioon, mis vastab täielikult ISO C11 ja POSIX.1-2017 standardite nõuetele ning milles uus versioon sisaldab parandusi 59 arendajalt.

Neile, kes ei tunne Glibci, peaksid nad teadma, mis see on GNU C raamatukogu, üldtuntud kui glibc on standardne GNU C käitusaegne teek. Süsteemides, kus seda kasutatakse, see C raamatukogu pakub ja määratleb süsteemikõnesid ja muid põhifunktsioone, seda kasutavad peaaegu kõik programmid. 

Glibc 2.36 peamised uued funktsioonid

Selles esitletavas uues versioonis on rõhutatud, et lisatud tugi uuele suhtelise ümberpaigutamise aadressi vormingule DT_RELR, mis võimaldab vähendada suhteliste ümberpaigutuste suurust jagatud objektides ja lingitud käivitatavates failides PIE (Position Independent Executables) režiimis. Välja DT_RELR kasutamine ELF-failides nõuab linkeris suvandi "-z pack-relative-relocs" tuge, mis on kasutusele võetud versioonis 2.38.

Teine muudatus, mis uues versioonis silma paistab, on see Linuxi jaoks funktsioonid pidfd_open, pidfd_getfd ja pidfd_send_signal rakendati juurdepääsu pakkumiseks pidfd funktsioonidele mis aitab käsitleda PID-i taaskasutusolukordi, et täpsemalt tuvastada jälgitavatele failidele juurde pääsevad protsessid (pidfd on seotud konkreetse protsessiga ja ei muutu, samas kui PID-i saab pärast protsessi lõppu lisada mõnele teisele protsessile). Sellega seotud praegune protsess PID).

Peale selle, ka Linuxis tuleb process_madvise()Et võimaldab protsessil käivitada madvise() süsteemikutset teise protsessi nimel, tuvastades sihtprotsessi pidfd abil. Läbi madvise() saab kerneli teavitada mäluga töötamise omadustest, et optimeerida protsessi mäluhaldust, näiteks saab edastatud info põhjal kernel hakata vabastama täiendavat vaba mälu.

Samuti märgitakse, et funktsioon lisati process_mrelease(), mis võimaldab kiirendada mälu vabastamist protsessi jaoks, mis selle täitmise lõpetab. Tavaolukorras ei toimu ressursi vabastamine ja protsessi lõpetamine silmapilkselt ja võib erinevatel põhjustel edasi lükata, häirides kasutajaruumi varajase hoiatamise süsteeme, nagu oomd (pakkub systemd). Kutsudes protsessi_mrelease, saavad need süsteemid ennustatavamalt alustada sundlõpetatud protsesside mälu otsimist.

Teisest küljest märgitakse, et see on lisatud "no-aaaa" valiku tugi integreeritud rakendamisele DNS-i eraldusvõime, mis võimaldab keelata AAAA-kirjete DNS-päringute saatmise (IPv6-aadressi määramine hostinime järgi), isegi kui käitate NSS-i funktsioone, nagu getaddrinfo(), et lihtsustada tõrkeotsingut. See suvand ei mõjuta failis /etc/hosts määratletud IPv6-aadresside ja getaddrinfo()-kutsete käsitlemist lipuga AI_PASSIVE.

Linuxi jaoks lisati funktsioonid fsopen, fsmount, move_mount, fsconfig, fspick, open_tree ja mount_setattr para pakkuda juurdepääsu uuele kerneli API-le, et juhtida failisüsteemide ühendamist mounti nimeruumide põhjal. Pakutud funktsioonid võimaldavad eraldi töödelda erinevaid paigaldusetappe (superploki töötlemine, failisüsteemi kohta info hankimine, monteerimine, kinnituspunkti külge kinnitamine), mida varem teostati ühisfunktsiooni mount() abil.

Lisati funktsioone arc4random, arc4random_buf ja arc4random_uniform süsteemikutsele sidumiste pakkumiseks juhuslikult ja liides / Dev / urandom, tagastab kvaliteetseid pseudojuhuslikke numbreid.

Linuxis töötades pakutakse arhitektuuri tuge. käsukomplektist LoongArch kasutatakse Loongson 3 5000 protsessorites ja rakendatakse uus RISC ISA, mis sarnaneb MIPS-i ja RISC-V-ga. Praegusel kujul on saadaval ainult ühilduvus 64-bitise variandiga LoongArchist (LA64). Selle käitamiseks on vaja vähemalt binutils 2.38, GCC 12 ja Linuxi kernel 5.19.

Muudest silmapaistvatest muudatustest:

  • Eellinkimise mehhanism, samuti seotud LD_TRACE_PRELINKING ja LD_USE_LOAD_BIAS keskkonnamuutujad ja linkeri funktsioonid on aegunud ja eemaldatakse tulevases versioonis.
  • Eemaldatud kood Linuxi kerneli versiooni kontrollimiseks ja keskkonnamuutuja LD_ASSUME_KERNEL käsitlemiseks. Glibc kompileerimisel toetatud minimaalne kerneli versioon määratakse ELF-i väljaga NT_GNU_ABI_TAG.
  • Keskkonnamuutuja LD_LIBRARY_VERSION tugi on Linuxi platvormil aegunud.

Lõpuks, kui olete huvitatud sellest rohkem teada saama, saate üksikasju vaadata Järgmisel lingil.


Jäta oma kommentaar

Sinu e-postiaadressi ei avaldata. Kohustuslikud väljad on tähistatud *

*

*

  1. Andmete eest vastutab: Miguel Ángel Gatón
  2. Andmete eesmärk: Rämpsposti kontrollimine, kommentaaride haldamine.
  3. Seadustamine: teie nõusolek
  4. Andmete edastamine: andmeid ei edastata kolmandatele isikutele, välja arvatud juriidilise kohustuse alusel.
  5. Andmete salvestamine: andmebaas, mida haldab Occentus Networks (EL)
  6. Õigused: igal ajal saate oma teavet piirata, taastada ja kustutada.