musl — реализация стандартной библиотеки для языка Си (libc), предназначенная для операционных систем на основе ядра Linux, распространяемая под лицензией MIT. Библиотека разработана в начале 2010-х Ричем Фелкером в качестве чистой и эффективной реализации, соответствующей стандартам.

Обзор Библиотека Musl была написана с нуля, без переиспользования существующего кода. При её написании уделялось внимание эффективному статическому связыванию, качеству для систем, близких к реальному времени. Автор старался избегать сложных внутренних сбоев при исчерпании ресурсов, проблем с синхронизацией и примеров некачественного поведения, присутствующих в ряде существовавших на тот момент реализаций. Скомпилированная библиотека представляет собой единственный динамический объектный файл со стабильным интерфейсом (ABI), что упрощает обновления. Также имеется версия для статического связывания, что позволяет создавать портативные приложения в виде одного исполняемого файла без внешних зависимостей.

Заявлена совместимость со спецификацией POSIX 2008 и стандартом языка C11. Также в musl реализованы многие нестандартные наборы библиотечных функций, используемые в Linux, BSD и реализованные в glibc.

Использование Среди дистрибутивов Linux, которые могут использовать musl в качестве стандартной библиотеки libc: Alpine Linux, Dragora 3, OpenWrt, Sabotage, Morpheus Linux, Gentoo и Void Linux.

См. также Bionic libc dietlibc EGLIBC glibc klibc Newlib uClibc

Примечания

Ссылки

Comparison of C/POSIX standard library implementations for Linux Matrix of C/POSIX standard libraries by architecture Project:Hardened musl on Gentoo wiki Выступление Rich Felker на Embedded Linux Conference (ELC) 2015: ELC 2015 - Transitioning From uclibc to musl for Embedded Development - Rich Felker, Openwall (видео), слайды Choosing System C library, Khem Raj (Comcast) / Embedded Linux Conference Europe 2014 Düsseldorf Germany

Категория:Стандартная библиотека Си Категория:Незавершённые статьи о программировании Категория:Свободные библиотеки программ Категория:Свободное программное обеспечение, написанное на Си Категория:Программное обеспечение с лицензией MIT