
Linux 内核中可使用宏 __setup() 处理内核的启动参数 cmdline 的解析。
文件: include/linux/init.h
定义:
通过宏展开可以看出:宏 __setup() 主要是定义了一个 obs_kernel_param 类型的结构体变量 __setup_fn 。
以 RockPI 4A 单板 Debian 系统 Linux 4.4 内核为例,介绍 init 参数的解析方法。
1、cmdline参数
在 Debian 系统中,通过 extlinux.conf 文件传递启动参数,其中 init=/sbin/init ,如下:
2、__setup()宏定义
在 Linux 内核中,解析 init 参数的 __setup() 实现如下:
3、__setup()宏展开
展开宏 __setup("init=", init_setup) ,即:
内核编译完成后,在内核符号表 System.map 文件中,可以看到 __setup_init_setup :
4、函数调用流程
内核启动后, init_setup() 函数的调用流程如下:
是的,Linux *** 作系统可以运行Java宏。Java宏是一种可以在Java平台上运行的可移植、松耦合、健壮的代码。Linux是一种开放源代码的类Unix *** 作系统,提供了大量的功能,其中包括丰富的应用程序,支持Java宏也不例外。欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)