musl - musl
Deweloper(zy) | Rich Felker (dalias) i inni |
---|---|
Pierwsze wydanie | 11 lutego 2011 |
Wersja stabilna | 1.2.2 / 15 stycznia 2021
|
Magazyn | |
System operacyjny | Linux 2.6 lub nowszy |
Platforma | x86 , x86_64 , ARM , MIPS , Microblaze , PowerPC , powerpc64 , x32 , riscv64 , OpenRISC , s390x , SuperH |
Rodzaj | |
Licencja | Licencja MIT |
Strona internetowa | musl.libc.org |
musl to standardowa biblioteka C przeznaczona dla systemów operacyjnych opartych na jądrze Linux , wydana na licencji MIT . Został opracowany przez Richa Felkera w celu napisania czystej, wydajnej i zgodnej ze standardami implementacji libc.
Przegląd
musl został zaprojektowany od podstaw, aby umożliwić wydajne łączenie statyczne i zapewnić niezawodność w czasie rzeczywistym poprzez unikanie wyścigów , wewnętrznych awarii w przypadku wyczerpania zasobów i różnych innych najgorszych zachowań występujących w istniejących implementacjach. Dynamiczne środowisko wykonawcze to pojedynczy plik ze stabilnym ABI umożliwiającym aktualizacje bez wyścigu, a obsługa łączenia statycznego umożliwia wdrożenie aplikacji jako pojedynczego przenośnego pliku binarnego bez znacznego obciążenia.
Twierdzi, że jest zgodny ze specyfikacją POSIX 2008 i standardem C11 . Implementuje również większość powszechnie używanych niestandardowych funkcji Linuksa , BSD i glibc . Istnieje częściowa zgodność ABI z częścią glibc wymaganą przez Linux Standard Base .
Wersja 1.2.0 obsługuje (już nieaktualna ) Unicode 12.1.0 (mimo że nadal ma pełną obsługę UTF-8 , bardziej zgodną/ścisłą niż glibc ), a wersja 1.2.1 "zawiera nową implementację malloc 'mallocng' , zastępując oryginalny alokator musl podobny do dlmalloc , który cierpiał z powodu podstawowych problemów projektowych."
Posługiwać się
Niektóre dystrybucje Linuksa, które mogą używać musl jako standardowej biblioteki C, obejmują Alpine Linux , Dragora 3 , Gentoo Linux , OpenWrt , Sabotage , Morpheus Linux i Void Linux . W SEL4 statki mikrojądro z MUSL. W przypadku binariów, które zostały połączone z glibc, gcompat może być użyty do ich uruchomienia na dystrybucjach opartych na musl.
Zobacz też
Bibliografia
Zewnętrzne linki
- Oficjalna strona internetowa
- Porównanie implementacji standardowych bibliotek C/POSIX dla systemu Linux
- Macierz standardowych bibliotek C/POSIX według architektury
- Projekt:Hardened musl na Gentoo wiki
- Rich Felker wygłosił prelekcję na konferencji Embedded Linux Conference (ELC) 2015: ELC 2015 – Przejście z uclibc do musl na rzecz Embedded Development – Rich Felker, Openwall