Перейти к содержанию

Musl

Непроверенная
Материал из Мегавики
musl
Логотип программы musl
Тип Стандартная библиотека языка Си, для встраиваемых систем на основе Linux
Разработчик Rich Felker (dalias) и другие
Операционная система Linux 2.6 и более новые
Первый выпуск 2011-02-11[1]
Аппаратная платформа x86, x86 64, ARM, MIPS, Microblaze, PowerPC, powerpc64, x32, OpenRISC, s390x, SuperH, RISC-V
Лицензия MIT License
Ссылки
Сайт musl.libc.org

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

Обзор[править]

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

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

Использование[править]

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

См. также[править]

Примечания[править]

  1. musl - obsolete versions. musl-libc.org (31 октября 2017). Дата обращения: 14 января 2018. Архивировано 17 января 2020 года.>
  2. Rich Felker, et al. COPYRIGHT (29 апреля 2016). Дата обращения: 26 сентября 2016. Архивировано 10 июня 2016 года.
  3. 3,0 3,1 Introduction to musl (21 апреля 2016). Дата обращения: 26 сентября 2016. Архивировано 12 ноября 2020 года.
  4. Compatibility. wiki.musl-libc.org (27 мая 2014). Дата обращения: 26 сентября 2016. Архивировано 26 июля 2017 года.
  5. Fietkau, Felix. OpenWrt switches to musl by default, openwrt-devel (15 июня 2015). Архивировано 30 июня 2015 года. Дата обращения 26 сентября 2016.
  6. Проект Musl на сайте GitHub
  7. morpheus: (недоступная ссылка). Дата обращения: 15 июня 2018. Архивировано 8 ноября 2020 года.

Ссылки[править]

Источник — https://megawiki.ru/wiki/Musl