Keith Packard, faol dasturchi Debian, X.Org loyihasi rahbari va XRender, XComposite va XRandR kabi ko'plab X kengaytmalarining yaratuvchisi. standart C kutubxonasining chiqarilishi , cheklangan xotira va operativ xotiraga ega o'rnatilgan qurilmalarda foydalanish uchun ishlab chiqilgan. Ishlab chiqish jarayonida ba'zi kodlar kutubxonadan qarzga olingan Cygwin loyihasidan va , Atmel AVR mikrokontrollerlari uchun ishlab chiqilgan. PicoLibc kodi BSD litsenziyasi bo'yicha litsenziyalangan. Kutubxona binosi ARM (32-bit), i386, RISC-V, x86_64 va PowerPC arxitekturalari uchun qo'llab-quvvatlanadi.
Loyiha dastlab "newlib-nano" nomi ostida ishlab chiqilgan va cheklangan operativ xotiraga ega o'rnatilgan qurilmalarda foydalanish uchun muammoli bo'lgan ba'zi resurslarni ko'p talab qiladigan Newlib funktsiyalarini qayta ishlashga qaratilgan edi. Masalan, stdio funktsiyalari avrlibc kutubxonasidan ixcham versiya bilan almashtirildi. Kod shuningdek, o'rnatilgan qurilma tuzilishida ishlatilmagan va BSD litsenziyasi ostida chiqarilmagan komponentlardan tozalandi. Boshlash kodining soddalashtirilgan versiyasi (crt0) qo'shildi va mahalliy oqimlarni amalga oshirish 'struct _reent' dan TLS mexanizmiga o'tkazildi (). Yig'ish uchun mezon asboblari ishlatilgan.
Yangi nashrda:
- Foydalanib qurish imkoniyati qo'shildi kompilyator .
- Clang kompilyatori uchun qo'llab-quvvatlash qo'shildi.
- "Gamma" funksiyasining xatti-harakati Glibc funksiyasiga moslashtirildi.
- Nano-malloc implementatsiyasi qaytarilgan xotirani majburiy tozalashni ta'minlaydi.
- Nano-realloc ishlashi yaxshilandi, ayniqsa bo'sh bloklarni birlashtirish va uyum hajmini kengaytirishda.
- Mallocning to'g'ri ishlashini tekshirish uchun bir qator testlar qo'shildi.
- Yaxshilangan platforma qo'llab-quvvatlashi Windows va mingw vositalaridan foydalanib qurish imkoniyatini qo'shdi.
- ARM tizimlarida, agar mavjud bo'lsa, TLS (Thread-Local Storage) apparat registri yoqilgan bo'ladi.
Manba: opennet.ru
