![为什么将 console=ttyS1 传递给 init 而不是内核也可以工作?](https://linux22.com/image/178213/%E4%B8%BA%E4%BB%80%E4%B9%88%E5%B0%86%20console%3DttyS1%20%E4%BC%A0%E9%80%92%E7%BB%99%20init%20%E8%80%8C%E4%B8%8D%E6%98%AF%E5%86%85%E6%A0%B8%E4%B9%9F%E5%8F%AF%E4%BB%A5%E5%B7%A5%E4%BD%9C%EF%BC%9F.png)
我正在研究Linux(Ubuntu Bionic,内核4.20)的串行控制台。
在 grub.cfg 的内核命令行中,简单地添加console=ttyS1
效果很好:
other kernel options ...... console=ttyS1
,但我发现 Ubuntu MAAS 有一个配置,最终生成以下内核命令行:
other kernel options ...... --- console=ttyS1
,不同之处在于它在前面加上一个---
to console=ttyS1
,
它也工作得很好,我可以看到操作系统的内核输出(dmesg),我看不到上述两种方式的效果有任何差异。
然而,根据Linux内核文档,
“-”之后的所有内容都作为参数传递给 init
所以我的问题是,为什么传递console=ttyS1
toinit
也像传递 to 一样工作kernel
?