momo 发表于 2023-10-17 09:24:38

cmdline是什么?黑群晖引导编译arpl里面的cmdline

1、cmdline是什么? cmdline是uboot引导内核启动时传递给内核的,作用是指导内核启
内核启动阶段会去解析cmdline,并根据cmdline去指导内核启动。
其实就是传参!!!
Kernel启动时会解析cmdline,然后根据这些参数如console root来进行配置运行。

Cmdline是由bootloader传给kernel,如uboot,将需要传给kernel的参数做成一个tags链表放在ram中,将首地址传给kernel,kernel解析tags来获取cmdline等信息。

2、cmdline长啥样?
cmdline的格式由很多个项目用空格隔开依次排列,每个项目中都是项目名=项目值,整个cmdline会被内核启动时解析,解析成一个一个的项目名=项目值的字符串。这些字符串又会被再次解析从而影响启动过程。

Cmdline:
earlyprintk syno_hw_version=DS3617xs console=ttyS0,115200n8 netif_num=1 noefi pid=0x5678 earlycon=uart8250,io,0x3f8,115200n8 mac1=001232a52bc3 sn=1230PDN018422 vid=0xfdf elevator=elevator loglevel=15 HddHotplug=0 skip_vender_mac_interfaces=0,1,2,3,4,5,6,7 syno_hdd_detect=0 panic=5 vender_format_version=2 syno_hdd_powerup_seq=0 log_buf_len=32M root=/dev/md0

在arpl制作的引导里面,cmdline就是这样,记录了机器的型号,mac地址,sn系列号,u盘的vid和pid号等,每个项目都是 名字=参数 然后后面加1个空格隔开。
arple引导制作里面,就可以直接添加和修改这些参数。


来着:
https://blog.csdn.net/weixin_45264425/article/details/128063168
页: [1]
查看完整版本: cmdline是什么?黑群晖引导编译arpl里面的cmdline