Utgivning av standard C-bibliotek Musl 1.2.3 och PicoLibc 1.7.6

Utgivningen av standard C-biblioteket Musl 1.2.3 presenteras, som tillhandahåller en implementering av libc, som är lämplig för användning på både stationära datorer och servrar, och på mobila system, som kombinerar fullt stöd för standarder (som i Glibc) med en liten storlek, låg resursförbrukning och hög prestanda (som i uClibc, dietlibc och Android Bionic). Det finns stöd för alla nödvändiga C99- och POSIX 2008-gränssnitt, såväl som delvis C11 och en uppsättning tillägg för flertrådsprogrammering (POSIX-trådar), minneshantering och arbete med lokaler. Musl-koden tillhandahålls under den kostnadsfria MIT-licensen.

Den nya versionen lägger till funktionen qsort_r, som är planerad att ingå i en framtida POSIX-standard och används för att sortera arrayer med hjälp av godtyckliga elementjämförelsefunktioner. För vissa PowerPC CPU-modeller har stöd för alternativa SPE FPU:er (Signal Processing Engine) lagts till. Ändringar har gjorts för att förbättra kompatibiliteten, som att lagra errno, acceptera nollpekare i gettext och hantera miljövariabeln TZ. Regressiva förändringar i wcwidth- och duplocale-funktionerna har åtgärdats, liksom flera fel i matematiska funktioner som under vissa omständigheter ledde till beräkningen av ett felaktigt resultat (till exempel på system utan FPU, avrundade fmaf resultatet felaktigt) .

Dessutom kan vi notera releasen av standard C-biblioteket PicoLibc 1.7.6, släppt för några dagar sedan, utvecklat av Keith Packard (X.Org-projektledare) för användning på inbäddade enheter med en begränsad mängd permanent lagring och RAM. Under utvecklingen lånades en del av koden från newlib-biblioteket från Cygwin och AVR Libc-projektet, utvecklat för Atmel AVR-mikrokontroller. PicoLibc-koden distribueras under BSD-licensen. Bibliotekssammansättning stöds för ARM (32-bitars), Aarch64, i386, RISC-V, x86_64, m68k och PowerPC-arkitekturer. Den nya versionen implementerar användningen av matematiska inline-funktioner för aarch64-arkitekturen och möjligheten att använda matematiska inline-funktioner i applikationer på arm- och risc-v-arkitekturer.

Källa: opennet.ru

Lägg en kommentar