![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Linux 内核启动流程
weixin_38725917
这个作者很懒,什么都没留下…
展开
-
Kernel启动流程源码解析 1 head.S
bootloader在跳转到kernel前,需要确保如下设置: MMU = off, D-cache = off, I-cache = on or off x0 = physical address to the FDT blob kernel的入口在arch\arm64\kernel\head.S中。 b stext // 跳转到stext stext。 ENTRY(stext...转载 2019-01-21 11:08:55 · 480 阅读 · 0 评论 -
Kernel启动流程源码解析 2 head.S
__cpu_setup。定义kernel\arch\arm64\mm\proc.S中。 #define MAIR(attr, mt) ((attr) << ((mt) * 8)) /* * __cpu_setup * * Initialise the processor for turning the MMU on. Return in x0 the * ...转载 2019-01-21 11:10:02 · 346 阅读 · 0 评论 -
Kernel启动流程源码解析 4 start_kernel 上
一 start_kernel start_kernel函数是kernel启动过程执行的第一个c语言函数,其通过调用一系列初始化函数完成的内核的初始化工作,上篇分析local_irq_enable之前的代码。 1.0 start_kernel 定义在init/main.c中 asmlinkage void __init start_kernel(void) { char * comman...转载 2019-01-21 11:14:31 · 480 阅读 · 2 评论