Sortie des bibliothèques C standards Musl 1.2.3 et PicoLibc 1.7.6

La version de la bibliothèque C standard Musl 1.2.3 est présentée, fournissant une implémentation de libc, adaptée à une utilisation sur les ordinateurs de bureau et les serveurs, ainsi que sur les systèmes mobiles, combinant une prise en charge complète des standards (comme dans Glibc) avec un petit taille, faible consommation de ressources et hautes performances (comme dans uClibc, dietlibc et Android Bionic). Toutes les interfaces requises C99 et POSIX 2008 sont prises en charge, ainsi que partiellement C11 et un ensemble d'extensions pour la programmation multithread (threads POSIX), la gestion de la mémoire et l'utilisation des paramètres régionaux. Le code Musl est fourni sous la licence gratuite MIT.

La nouvelle version ajoute la fonction qsort_r, qui devrait être incluse dans une future norme POSIX et est utilisée pour trier des tableaux à l'aide de fonctions de comparaison d'éléments arbitraires. Pour certains modèles de processeurs PowerPC, la prise en charge d'autres FPU SPE (Signal Processing Engine) a été ajoutée. Des modifications ont été apportées pour améliorer la compatibilité, telles que le stockage du numéro d'erreur, l'acceptation des pointeurs nuls dans gettext et la gestion de la variable d'environnement TZ. Les changements régressifs dans les fonctions wcwidth et duplocale ont été corrigés, ainsi que plusieurs erreurs dans les fonctions mathématiques qui, dans certaines circonstances, conduisaient au calcul d'un résultat incorrect (par exemple, sur les systèmes sans FPU, fmaf a mal arrondi le résultat) .

De plus, on peut noter la sortie de la bibliothèque standard C PicoLibc 1.7.6, sortie il y a quelques jours, développée par Keith Packard (chef de projet X.Org) pour une utilisation sur des appareils embarqués avec une quantité limitée de stockage permanent et de RAM. Lors du développement, une partie du code a été empruntée à la bibliothèque newlib du projet Cygwin et AVR Libc, développée pour les microcontrôleurs Atmel AVR. Le code PicoLibc est distribué sous licence BSD. L'assemblage de bibliothèques est pris en charge pour les architectures ARM (32 bits), Aarch64, i386, RISC-V, x86_64, m68k et PowerPC. La nouvelle version implémente l'utilisation de fonctions mathématiques en ligne pour l'architecture aarch64 et la possibilité d'utiliser des fonctions mathématiques en ligne dans des applications sur les architectures arm et risc-v.

Source: opennet.ru

Ajouter un commentaire