Vydanie štandardných knižníc C Musl 1.2.3 a PicoLibc 1.7.6

Predstavuje sa vydanie štandardnej knižnice C Musl 1.2.3, ktorá poskytuje implementáciu libc, ktorá je vhodná na použitie na stolných počítačoch a serveroch a na mobilných systémoch, pričom kombinuje plnú podporu štandardov (ako v Glibc) s malým veľkosť, nízka spotreba zdrojov a vysoký výkon (ako v uClibc, dietlibc a Android Bionic). K dispozícii je podpora pre všetky požadované rozhrania C99 a POSIX 2008, čiastočne aj C11 a sadu rozšírení pre viacvláknové programovanie (vlákna POSIX), správu pamäte a prácu s miestnymi nastaveniami. Musl kód je poskytovaný v rámci bezplatnej licencie MIT.

Nová verzia pridáva funkciu qsort_r, ktorá je plánovaná na zahrnutie do budúceho štandardu POSIX a používa sa na triedenie polí pomocou ľubovoľných funkcií porovnávania prvkov. Pre niektoré modely CPU PowerPC bola pridaná podpora pre alternatívne SPE FPU (Signal Processing Engine). Boli vykonané zmeny na zlepšenie kompatibility, ako je ukladanie errno, akceptovanie nulových ukazovateľov v gettexte a spracovanie premennej prostredia TZ. Opravené boli regresívne zmeny vo funkciách wcwidth a duplocale, ako aj niekoľko chýb v matematických funkciách, ktoré za určitých okolností viedli k nesprávnemu výpočtu (napríklad na systémoch bez FPU fmaf nesprávne zaokrúhlil výsledok) .

Okrem toho si môžeme všimnúť vydanie štandardnej knižnice C PicoLibc 1.7.6, vydanej pred niekoľkými dňami, vyvinutej Keithom Packardom (vedúcim projektu X.Org) na použitie na vstavaných zariadeniach s obmedzeným množstvom trvalého úložiska a pamäte RAM. Počas vývoja bola časť kódu požičaná z knižnice newlib z projektu Cygwin a AVR Libc vyvinutého pre mikrokontroléry Atmel AVR. Kód PicoLibc je distribuovaný pod licenciou BSD. Zostavenie knižnice je podporované pre architektúry ARM (32-bit), Aarch64, i386, RISC-V, x86_64, m68k a PowerPC. Nová verzia implementuje použitie matematických inline funkcií pre architektúru aarch64 a možnosť využívať matematické inline funkcie v aplikáciách na architektúrach arm a risc-v.

Zdroj: opennet.ru

Pridať komentár