【发布时间】:2015-01-28 02:24:49
【问题描述】:
Linux 内核是否总是为引导时使用init=... 或隐式/sbin/init(/etc/init, /bin/init, @ 传递的PID 1 进程提供文件描述符0、1 和2 987654325@)?他们是指系统控制台/dev/console吗?如果 /dev 没有在 init 上提供,但必须由 init 系统设置,会发生什么?
【问题讨论】:
标签: linux linux-kernel
Linux 内核是否总是为引导时使用init=... 或隐式/sbin/init(/etc/init, /bin/init, @ 传递的PID 1 进程提供文件描述符0、1 和2 987654325@)?他们是指系统控制台/dev/console吗?如果 /dev 没有在 init 上提供,但必须由 init 系统设置,会发生什么?
【问题讨论】:
标签: linux linux-kernel
他们被kernel_init_freeable 连接到控制台。控制台直接打开复制,不用经过/dev。
/* Open the /dev/console on the rootfs, this should never fail */
if (sys_open((const char __user *) "/dev/console", O_RDWR, 0) < 0)
pr_err("Warning: unable to open an initial console.\n");
(void) sys_dup(0);
(void) sys_dup(0);
【讨论】: