Rilis Pustaka Sistem Glibc 2.36

Sawise nem wulan pembangunan, perpustakaan sistem GNU C Library (glibc) 2.36 wis dirilis, sing tundhuk karo syarat standar ISO C11 lan POSIX.1-2017. Rilis anyar kalebu koreksi saka 59 pangembang.

Sawetara dandan sing ditindakake ing Glibc 2.36 kalebu:

  • Dhukungan ditambahake kanggo format relokasi alamat DT_RELR (relokasi relatif) anyar, sing ngidini sampeyan nyuda ukuran relokasi relatif ing obyek sing dienggo bareng lan file eksekusi sing disambung ing mode PIE (Executable Position-independent). Nggunakake lapangan DT_RELR ing file ELF mbutuhake dhukungan kanggo "-z pack-relative-relocs" pilihan ing linker, ngenalaken ing release saka binutils 2.38.
  • Kanggo platform Linux, fungsi pidfd_open, pidfd_getfd lan pidfd_send_signal dileksanakake, nyedhiyakake akses menyang fungsi pidfd sing mbantu nangani kahanan PID nggunakake maneh supaya luwih akurat ngenali proses ngakses file sing dipantau (pidfd digandhengake karo proses tartamtu lan ora owah, nalika PID bisa ditempelake menyang proses liyane sawise proses saiki sing ana gandhengane karo PID kasebut mandheg).
  • Kanggo platform Linux, wis ditambahakΓ© fungsi process_madvise () kanggo ngidini siji proses kanggo ngetokake madvise () sistem telpon atas jenenge proses liyane, ngenali proses target nggunakake pidfd. Liwat madvise (), sampeyan bisa ngandhani kernel babagan fitur nggarap memori kanggo ngoptimalake manajemen memori proses; Contone, adhedhasar informasi sing ditularakΓ©, kernel bisa miwiti release saka memori free tambahan. A telpon madvise () dening proses liyane bisa uga dibutuhake ing kahanan sing informasi needed kanggo Optimization ora dingerteni kanggo proses saiki, nanging wis tumata dening proses kontrol latar mburi kapisah, kang independen bisa miwiti mbusak memori sing ora digunakake saka pangolahan.
  • Kanggo platform Linux, wis ditambahakΓ© fungsi process_mrelease (), sing ngijini sampeyan kanggo nyepetake release saka memori kanggo proses ngrampungke execution sawijining. Ing kahanan normal, release sumber daya lan mandap proses ora cepet lan bisa telat kanggo macem-macem alasan, ngganggu sistem respon awal memori pangguna-ruang kayata oomd (disedhiyakake dening systemd). Kanthi nelpon process_mrelease, sistem kasebut bisa luwih bisa diprediksi micu mbalekake memori saka proses sing dipeksa.
  • Dhukungan kanggo opsi "ora-aaaa" wis ditambahake ing implementasine DNS resolver sing dibangun, sing ngidini sampeyan mateni kiriman panjalukan DNS kanggo cathetan AAAA (nemtokake alamat IPv6 kanthi jeneng host), kalebu nalika nglakokake NSS. fungsi kaya getaddrinfo (), kanggo menakake diagnosa masalah. Opsi iki ora mengaruhi pangolahan ikatan alamat IPv6 sing ditetepake ing /etc/hosts lan nelpon menyang getaddrinfo () kanthi flag AI_PASSIVE.
  • Kanggo platform Linux, fungsi fsopen, fsmount, move_mount, fsconfig, fspick, open_tree lan mount_setattr wis ditambahake, nyedhiyakake akses menyang API kernel anyar kanggo ngatur pemasangan sistem file adhedhasar spasi jeneng gunung. Fungsi ngajokaken ngijini sampeyan kanggo proses kapisah beda orane tumrap sekolah saka soyo tambah (ngolah superblock a, njupuk informasi bab sistem file, gunung, masang menyang titik gunung), kang sadurunge dileksanakake nggunakake umum gunung () fungsi. Fungsi sing kapisah nyedhiyakake kemampuan kanggo nindakake skenario gunung sing luwih rumit lan nindakake operasi kanthi kapisah kayata konfigurasi ulang superblok, opsi ngaktifake, ngganti titik gunung, lan pindhah menyang ruang jeneng liyane. Kajaba iku, pangolahan kapisah ngidini sampeyan nemtokake kanthi akurat alasan kanggo output kode kesalahan lan nyetel macem-macem sumber kanggo sistem file multi-lapisan, kayata overlayf.
  • localedef nyedhiyakake dhukungan kanggo ngolah file definisi lokal sing diwenehake ing enkoding UTF-8 tinimbang ASCII.
  • Ditambahake fungsi kanggo ngowahi multi-bait mbrtoc8 lan c8rtomb enkoding kanggo ISO C2X N2653 lan C++ 20 P0482R6 specifications.
  • Dhukungan ditambahake kanggo jinis char8_t sing ditetepake ing konsep standar ISO C2X N2653.
  • Added fungsi arc4random, arc4random_buf lan arc4random_uniform, kang nyedhiyani pambungkus liwat telpon sistem getrandom lan / dev / antarmuka urandom sing ngasilake nomer pseudorandom kualitas dhuwur.
  • Nalika mlaku ing platform Linux, ndhukung LoongArch instruction set arsitektur digunakake ing Loongson 3 5000 prosesor lan ngleksanakake RISC ISA anyar, padha MIPS lan RISC-V. Ing wangun saiki, mung dhukungan kanggo versi 64-bit saka LoongArch (LA64) sing kasedhiya. Kanggo bisa, sampeyan butuh paling ora versi binutils 2.38, GCC 12 lan Linux kernel 5.19.
  • Mekanisme prelink, uga variabel lingkungan LD_TRACE_PRELINKING lan LD_USE_LOAD_BIAS sing gegandhengan lan kapabilitas linker, wis ora digunakake lan bakal dibusak ing rilis sabanjure.
  • Kode dibusak kanggo mriksa versi kernel Linux lan nangani variabel lingkungan LD_ASSUME_KERNEL. Versi minimal kernel sing didhukung nalika mbangun Glibc ditemtokake liwat kolom ELF NT_GNU_ABI_TAG.
  • Variabel lingkungan LD_LIBRARY_VERSION wis mandheg ing platform Linux.

Source: opennet.ru

Add a comment