Efter 10 mÄnader av utveckling har standard C-biblioteket Musl 1.2.5 slÀppts, vilket erbjuder en libc-implementation som Àr lÀmplig för anvÀndning pÄ bÄde stationÀra datorer och servrar samt pÄ mobila system. Det kombinerar fullstÀndig stöd för standarder (som i Glibc) med liten storlek, lÄg resursförbrukning och hög prestanda (som i uClibc, dietlibc och Android Bionic). Det finns stöd för alla obligatoriska grÀnssnitt frÄn C99 och POSIX 2008, samt delvis för C11 och en uppsÀttning utökningar för flertrÄdprogrammering (POSIX-trÄdar), minneshantering och arbete med lokaler. Koden för Musl distribueras under den fria MIT-licensen.
Huvudsakliga förÀndringar:
- Funktionen statx() har lagts till, vilket skiljer sig frÄn fstatat64 genom att den har ett extra flaggargument. Om kÀrnan inte stödjer systemanropet statx, som returnerar utökad information om en fil, inklusive tidpunkten för filens skapande och specifika för filsystemet flaggor, faller det tillbaka pÄ anvÀndningen av systemanropet fstatat.
- Funktionerna preadv2() och pwritev2() har lagts till, vilka ger en inbindning till de med samma namn systemanropen i kÀrnan Linux. Till skillnad frÄn preadv() och pwritev() har de nya funktionerna ett ytterligare argument för att skicka extra flaggor till kÀrnan, sÄsom RWF_SYNC (ÄterstÀllning av data och metadata frÄn cachen till lagringsmediet efter operationen) och RWF_DSYNC (tvungen ÄterstÀllning av endast data till lagringsmediet).
- Stöd för Loongarch64 och Riscv32-arkitekturer har lagts till.
- Implementeringen av funktionen clone() har nÄtt en anvÀndbar status.
- I funktionen statvfs() sÀkerstÀlls att resultatet returneras med typen f_type.
- För Riscv64-system har stöd för TLSDESC (Thread-Local Storage Descriptor) lagts till.
- I DNS-resolvern har hantering av svar med lÄnga CNAME-sekvenser implementerats. Problemet som gjorde att vissa stora svar som skickades via TCP avfÀrdades har ÄtgÀrdats.
- I mntent-grÀnssnitten har stöd för att rymma mellanslag i filvÀgar och alternativ införts.
- I snprintf och swprintf har korrekt hantering av situationer dĂ€r tal överstiger INT_MAX sĂ€kerstĂ€llts. ĂverensstĂ€mmelsen med standarden för printf-familjens funktioner har förbĂ€ttrats.
KĂ€lla: opennet.ru
