鸿蒙轻内核M核源码分析:LibC实现之Musl LibC


摘要:本文学习了LiteOS-M内核Musl LibC的实现,特别是文件系统和内存分配释放部分。

本文分享自华为云社区《鸿蒙轻内核M核源码分析系列十九 Musl LibC》,作者:zhushy。

LiteOS-M内核LibC实现有2种,可以根据需求进行二选一,分别是musl libC和newlibc。本文先学习下Musl LibC的实现代码。文中所涉及的源码,均可以在开源站点https://gitee.com/openharmony/kernel_liteos_m 获取。LiteOS-M内核提供了和内核相关的文件系统、内存申请释放接口,其他接口可以直接使用Musl提供的。我们分别来看下内核提供的接口部分。

1、Musl LibC文件系统

在使用Musl LibC并且使能支持POSIX FS API时,可以使用文件kal\libc\musl\fs.c中定义的文件系统操作接口。这些是标准的POSIX接口,如果想了解其用法,可以参考Section 2: system calls。可以在网页上搜索,也可以直接把上述网址和函数名称进行拼接,如对于mount()函数,可以直接访问点击关注,第一时间了解华为云新鲜技术~