免费资源网 – https://freexyz.cn/
前言
linux以及嵌入式一些代码,我们看到core_initcall、device_initcall等等需要链接器分配各个section,并且在启动该模块时候执行。下面我们详细追溯一下执行过程。
作者:良知犹存
转载授权以及围观:欢迎关注微信公众号:羽林君
或者添加作者个人微信:become_me
正文
fs_initcall函数介绍:
Linux内核中的fs_initcall函数:用于在引导过程中进行文件系统等初始化。
初始化注册:
当文件系统模块被加载时,它使用fs_initcall宏注册其初始化函数。
该宏将初始化函数添加到__initcall_fs部分。
内核引导过程:
在引导过程中,在基本硬件初始化和内存设置之后,内核开始执行初始化函数。
执行fs_initcall函数:
fs_initcall函数按照其注册顺序依次执行。
这些函数初始化各种文件系统并执行必要的设置任务。
文件系统初始化:
每个fs_initcall函数负责设置和初始化特定的内容。
这可能涉及初始化数据结构、注册文件系统类型、准备缓存和其他相关任务。
完成和交接:
一旦所有fs_initcall函数都执行完毕,内核会继续完成引导过程,包括启动用户空间和初始化设备。
下面是一个简单的示例代码,展示了fs_initcall函数的使用和文件系统初始化的过程:
#include
© 版权声明
THE END
★喜欢这篇文章吗?喜欢的话,麻烦动动手指支持一下!★
相关推荐
暂无评论内容