title: how does the bootloader pass the kernel command line to the kernel?
body: <p>We can see the kernel command line like this :</p>
  <pre><code>ckim@chan-ubuntu:~/$ cat /proc/cmdline  
  BOOT_IMAGE=/boot/vmlinuz-4.15.0-122-generic root=UUID=99c66a0a-39c1-451c-9f72-ad1576aafb41 ro quiet splash
  </code></pre>
  <p>This command line seems to be what grub has passed to the kernel for booting. How is this command line actually passed to the kernel program? I guess maybe the command line is loaded in memory as a string and a register of the processor (like x1, if arm64 processor) is set to that string address? I'm interested in arm64 case especially.</p>