Linuxカーネルパラメータはスペース(0x20)またはNUL(0x0)で区切られますか?

Linuxカーネルパラメータはスペース(0x20)またはNUL(0x0)で区切られますか?

私はそれがNULだと思いました。ところで、今日台本を書いて空白があることを発見しました。構成できますか?それとも私の記憶が間違っていますか?

答え1

たぶんこれはあなたの記憶を混乱させるかもしれません。

/proc/cmdline(つまり、カーネル自体のコマンドラインパラメータ)では、パラメータは0x20で区切られます。

存在する/proc/プロセス番号/cmdline(つまり、各ユーザープロセスのコマンドラインパラメータ)、パラメータ間は0x00で区切られます。

答え2

に表示される方法について話していると仮定すると、/proc/cmdlineスペースで区切られます。構成できません。

答え3

ここで解析機能を見ることができます。 https://elixir.bootlin.com/linux/v4.18.13/source/lib/cmdline.c#L199

/*
* Parse a string to get a param value pair.
* You can use " around spaces, but can't escape ".
* Hyphens and underscores equivalent in parameter names.
*/

関連情報