Musl
# Musl

musl es una biblioteca estándar de C destinada a sistemas operativos basados en el núcleo Linux, publicada bajo la licencia MIT. Fue desarrollado por Rich Felker con el objetivo de escribir una implementación libc limpia, eficiente y conforme a los estándares.

## 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. 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. También implementa la mayoría de las funciones no estándar Linux, BSD y glibc ampliamente utilizadas.

La versión 1.2.0 tiene soporte para Unicode 12.1.0 (aunque aún tiene soporte completo para UTF-8, 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.

## 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 se puede utilizar para ejecutarlos en distribuciones basadas en musl.

