近期,RISC-V SIG 在欧拉嵌入式操作系统上成功实现了 musl libc 的适配,完成了使用 musl libc 库替换 glibc 库构建镜像的工作。目前,以 musl libc 为基础库编译的镜像已在 Raspberry Pi4 开发板上可用,这一成果推动了 openEuler Embedded 的多态发展。
编译镜像步骤说明:
https://openeuler.gitee.io/yocto-meta-openeuler/master/features/muslc.html
Musl libc 库对比 glibc 库的部分优点
- 它是一个专门为嵌入式系统开发的轻量级 libc 库,以简单、轻量和高效为特色;
- musl libc 要小得多,因为 musl libc 专注于尽可能减少代码大小和函数调用开销,以提高性能;
- musl libc 库的源码相对简单,封装性不强,不像 glibc 的代码一样臃肿,复杂;
- musl libc 是 C 语言的一种标准函数库,代码干净且高效,针对静态连接(static linking)设计,适合被用来制作可携的程序,且也很容易进行交叉编译(cross compile),编译出运行在不同系统环境的程序。
Musl libc 库对比 glibc 库的部分缺点
- POSIX 标准:musl libc 更加严格地遵循 POSIX 标准,而 glibc 则添加了一些扩展,以提供更多的功能和兼容性。
- 错误处理:musl libc 实现的错误处理更严格和更规范,而 glibc 则有更多的错误处理选项,并且支持不同的语言环境。
综上所述,如果你需要一个小巧且速度较快的 C 标准库在 Linux 系统上使用,则可以考虑使用 musl libc;如果你要开发的某个功能的可执行程序需要在不同系统环境下运行,则 musl libc 可满足你的需求;如果你想一次编译出

RISC-VSIG成功在欧拉嵌入式操作系统上适配musllibc,以替代glibc,减少了镜像大小并提高了性能。musllibc因其轻量级、高效和易于交叉编译的特点,特别适合嵌入式系统。测试显示,基于musllibc的RaspberryPi4系统在内存占用和性能上有显著优势,但仍有优化空间,如malloc性能和字符集支持等。
最低0.47元/天 解锁文章
235

被折叠的 条评论
为什么被折叠?



