Linux 内核启动

Linux 内核启动,第1张

kernel_init -->run_init_process -->kernel_execve -->do_execve

这个do_execve 就是类似 execve函数了。

启动时的内核信息都是通过printk输出的,查了下头文件kernel.h,有这样的语句

#ifdef CONFIG_PRINTK

asmlinkage int printk(const char * fmt, ...)

__attribute__ ((format (printf, 1, 2)))

#else

static inline int printk(const char *s, ...)

__attribute__ ((format (printf, 1, 2)))

static inline int printk(const char *s, ...) { return 0}

#endif

在kernel/printk.c中,同样可以看到在没有定义CONFIG_PRINTK的时候其代码都是灰的。

因此,去掉CONFIG_PRINTK的定义即可。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/7414175.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-05
下一篇 2023-04-05

发表评论

登录后才能评论

评论列表(0条)

保存