Дата публикации:Fri, 01 Mar 2024 16:23:38 +0300
После 10 месяцев разработки представлен релиз стандартной Си-библиотеки Musl 1.2.5, предоставляющей реализацию libc, которая подходит для применения как на стационарных ПК и серверах, так и на мобильных системах, сочетая полноценную поддержку стандартов (как в Glibc) с небольшим размером, низким потреблением ресурсов и высокой производительностью (как в uClibc, dietlibc и Android Bionic). Имеется поддержка всех обязательных интерфейсов C99 и POSIX 2008, а также частично C11 и набор расширений для многопоточного программирования (POSIX threads), управления памятью и работы с локалями. Код Musl поставляется под свободной лицензией MIT.
Основные изменения:
- Добавлена функция statx(), которая отличается от fstatat64 наличием дополнительного флагового аргумента. В случае, если ядро не поддерживает системный вызов statx, возвращающего расширенную информацию о файле, включая время создания файла и специфичные для файловых систем флаги, осуществляется откат на использованием системного вызова fstatat.
Добавлены функции preadv2() и pwritev2(), предоставляющие обвязки над одноимёнными системными вызовами ядра Linux. От preadv() и pwritev() новые функции отличаются наличием ещё одного аргумента для передачи ядру дополнительных флагов, таких как RWF_SYNC (сброс данных и метаданных из кэша на носитель после выполнения операции) и RWF_DSYNC (принудительный сброс на носитель только данных).
Добавлена поддержка архитектур Loongarch64 и Riscv32.
Реализация функции clone() доведена до состояния, пригодного к использованию.
В функции statvfs() обеспечено возвращение результата с типом f_type.
Для систем Riscv64 добавлена поддержка механизма TLSDESC (Thread-Local Storage Descriptor).
В DNS-резолвере реализована обработка ответов с длинными последовательностями CNAME. Решена проблема, из-за которой отбрасывались некоторые большие ответы, передаваемые через TCP.
В интерфейсах mntent появилась поддержка экранирования пробелов в файловых путях и опциях.
В snprintf и swprintf обеспечена корректная обработка ситуации в случае обработки чисел, размером больше INT_MAX. Улучшено соответствие стандарту функций семейства printf.
Новость позаимствована с opennet.ru
Ссылка на оригинал: https://www.opennet.ru/opennews/art.shtml?num=60702