musl
musl es una biblioteca estándar de C destinada a sistemas operativos basados en el núcleo Linux, publicada bajo la licencia MIT.[1] Fue desarrollado por Rich Felker con el objetivo de escribir una implementación libc limpia, eficiente y conforme a los estándares.[2]
musl | ||
---|---|---|
Información general | ||
Desarrollador | Rich Felker | |
Lanzamiento inicial | 11 de febrero de 2011 | |
Licencia | Licencia MIT | |
Información técnica | ||
Programado en | C | |
Versiones | ||
Última versión estable | 1.2.41 de mayo de 2023 | |
Enlaces | ||
Visión general
musl fue diseñado desde cero para permitir enlazado estático de bibliotecas eficaz y tener robustez de calidad en tiempo real al evitar condiciones de carrera, fallas internas en el agotamiento de los recursos y varios otros comportamientos del peor de los casos presentes en las implementaciones existentes.[2] El tiempo de ejecución dinámico es un solo archivo con ABI estable que permite actualizaciones sin carreras y el soporte de enlazado estático permite implementar una aplicación como un único binario portátil sin una sobrecarga de tamaño significativa.
Afirma compatibilidad con la especificación POSIX 2008 y el estándar C11.[3] También implementa la mayoría de las funciones no estándar Linux, BSD y glibc ampliamente utilizadas.[cita requerida]
La versión 1.2.0 tiene soporte para Unicode 12.1.0 (aunque aún tiene soporte completo para UTF-8,[4] más conforme/estricto que glibc), y la versión 1.2.1 presenta una nueva implementación de malloc
, mallocng
, reemplazando la implementación original dlmalloc
, el que sufría de problemas de diseño fundamentales.[5]
Distribuciones que usan musl
Algunas distribuciones de Linux que usan o pueden usar musl como biblioteca estándar de C incluyen Alpine, Dragora 3, Gentoo Linux, OpenWrt, Sabotage, Morpheus Linux y Void Linux. Para los binarios que se han vinculado contra glibc, gcompat[6] se puede utilizar para ejecutarlos en distribuciones basadas en musl.
Referencias
- Rich Felker (29 de abril de 2016). «COPYRIGHT». Consultado el 26 de septiembre de 2016.
- «Introduction to musl». 21 de abril de 2016. Consultado el 26 de septiembre de 2016.
- «Compatibility». wiki.musl-libc.org. 27 de mayo de 2014. Consultado el 26 de septiembre de 2016.
- «musl libc - Functional differences from glibc». wiki.musl-libc.org. Consultado el 13 de agosto de 2020.
- «musl libc Release History». musl.libc.org. Consultado el 13 de agosto de 2020.
- «Adélie Linux / gcompat». GitLab (en inglés). Consultado el 21 de octubre de 2019.
Enlaces externos
- Sitio web oficial
- Comparación de las implementaciones de la biblioteca estándar C / POSIX para Linux
- Matriz de bibliotecas estándar C / POSIX por arquitectura
- Proyecto: muslo endurecido en Gentoo wiki
- Rich Felker ofreció una charla en la Embedded Linux Conference (ELC) 2015: ELC 2015 - Transición de uclibc a musl para el desarrollo integrado - Rich Felker, Openwall