PicoLibc standart C kutubxonasining chiqarilishi 1.4.7

Keyt Packard, faol Debian dasturchisi, X.Org loyihasi rahbari va XRender, XComposite va XRandR kabi koʻplab X kengaytmalarini yaratuvchisi, chop standart C kutubxonasining chiqarilishi PicoLibc 1.4.7, cheklangan doimiy saqlash va RAMga ega bo'lgan o'rnatilgan qurilmalarda foydalanish uchun ishlab chiqilgan. Rivojlanish jarayonida kodning bir qismi kutubxonadan olingan newlib Cygwin loyihasidan va AVR Libc, Atmel AVR mikrokontrollerlari uchun ishlab chiqilgan. PicoLibc kodi tarqaladi BSD litsenziyasi ostida. Kutubxona yig'ilishi ARM (32-bit), i386, RISC-V, x86_64 va PowerPC arxitekturalari uchun qo'llab-quvvatlanadi.

Dastlab, loyiha "newlib-nano" nomi ostida ishlab chiqilgan va kam RAMga ega bo'lgan o'rnatilgan qurilmalarda foydalanish muammoli bo'lgan Newlib-ning ba'zi resurs talab qiluvchi funktsiyalarini qayta ishlashga qaratilgan edi. Masalan, stdio funksiyalari avrlibc kutubxonasidan ixcham versiya bilan almashtirildi. Kod, shuningdek, o'rnatilgan tuzilishda ishlatilmaydigan BSD litsenziyasi bo'lmagan komponentlardan tozalangan. Initsializatsiya kodining soddalashtirilgan versiyasi (crt0) qo'shildi va mahalliy oqimlarni amalga oshirish "struct _reent" dan TLS mexanizmiga ko'chirildi (ip-mahalliy saqlash). Meson asboblar to'plami yig'ish uchun ishlatiladi.

Yangi nashrda:

  • Foydalanishda qurish qobiliyati qo'shildi matematik jihatdan tasdiqlangan kompilyator CompCert.
  • Clang kompilyatori uchun qo'shimcha yordam.
  • "Gamma" funktsiyasining xatti-harakati Glibc harakati bilan moslashtirildi.
  • Nano-malloc ilovasi qaytarilgan xotira tozalanishini ta'minlaydi.
  • Nano-realloc-ning yaxshilangan ishlashi, ayniqsa bepul bloklarni birlashtirish va yig'ish hajmini kengaytirishda.
  • Mallocning to'g'ri ishlashini tekshirish uchun testlar to'plami qo'shildi.
  • Windows platformasini qo'llab-quvvatlash yaxshilandi va mingw asboblar to'plamidan foydalanib qurish qobiliyati qo'shildi.
  • ARM tizimlarida, agar mavjud bo'lsa, TLS (Thread-Local Storage) apparat registri yoqilgan.

Manba: opennet.ru