musl

musl,一种C标准函数库,主要使用于以Linux内核为主的操作系统上,目标为嵌入式系统行动设备,采用MIT许可证发布。作者为瑞奇·费尔克(Rich Felker)。开发此库的目的是写一份干净、高效、符合标准的C标准库。[3]

musl
开发者瑞奇·费尔克 (dalias) 与其他开发者
首次发布2011年2月11日2011-02-11[1]
当前版本
  • 1.2.5 (2024年3月1日;稳定版本)[2]
源代码库
操作系统Linux 2.6或更新
平台x86, x86 64, ARM, MIPS, Microblaze, PowerPC, ppc64, x32, OpenRISC, SuperH
类型
许可协议MIT许可证
网站musl.libc.org

概述

Musl是从零开始设计的。一是希望让静态链接更高效;二是现有的C标准库在一些极端条件下表现很糟糕,竞态条件、资源不足时常常会出问题,而Musl试图避免它们来达到较高的实时强健性[3]Musl的动态运行时只有一个文档,有稳定的ABI,因此可以实现无竞态的版本升级。对静态链接的支持也让可移植单文档应用部署成为可能,而且不会使文档体积膨胀很多。

Musl声称与POSIX 2008标准和C11标准兼容,还实现了多数广泛使用但非标准的LinuxBSDglibc函数。[4]

使用

有些Linux发行版可以使用Musl作为标准C库,例如Alpine LinuxDragora 3Gentoo LinuxOpenWrt、Sabotage[5]、Morpheus Linux[6]Void Linux。对于链接到glibc的二进制进程,gcompat[7]能让它们在基于Musl的发行版上运行。

参见

注释

  1. . musl-libc.org. 2017-10-31 [2018-01-14]. (原始内容存档于2020-01-17).
  2. . 2024年3月1日 [2024年3月1日].
  3. . 2016-04-21 [2016-09-26]. (原始内容存档于2020-11-12).
  4. . wiki.musl-libc.org. [2024-01-21]. (原始内容存档于2021-10-17) (英语).
  5. GitHub上的README.md页面
  6. . [2018-06-15]. (原始内容存档于2020-11-08).
  7. . GitLab. [2019-10-21]. (原始内容存档于2020-10-28) (英语).

外部链接

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.