OK6410A 开发板 (八) 23 linux-5.11 OK6410A start_kernel 功能角度 第二阶段

第二阶段的初始化 : 系统的 各种资源的初始化
第二阶段的初始化 仅由 主cpu 进行 (cpu0)
cpu1 ... 等 cpu 只负责
	1. cpu1 ... 上的 idle 进程的创建 (smp_init -> idle_threads_init -> idle_init 是不是就完成了idle进程的创建)
	2. 进入idle

CPU0
start_kernel
	...
	 
	cpu_startup_entry(CPUHP_ONLINE);
		do_idle
  • 参考 链接 中的 start_kernel -> rest_init
  • 参考 链接 中的 rest_init->cpu_startup_entry
kernel_init 和 kthreadd 的执行 不在 第二阶段内,此时不用分析
  • 初始化了什么系统资源
分析了 atags
初始化了 内存 (内存虚拟化)
建立了 进程 ,初始化了调度 (进程是对的CPU虚拟化)
建立了 文件系统的根 (文件对存储地址空间的抽象)
	vfs_caches_init_early
	vfs_caches_init
初始化了 中断(硬件和软件)
CPU1 …
 secondary_start_kernel
     pr_debug("CPU%u: Booted secondary processor\n", cpu);
     cpu_startup_entry(CPUHP_AP_ONLINE_IDLE);
     	do_idle
  • 初始化了什么系统资源
初始化了 cpu1
	cpu_init
	ipi_setup
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值