arm linux 启动之一:汇编启动到start_kernel
时间:11-09
来源:互联网
点击:
cache等,最后将r13出栈,取出arch/arm/kernel/head-common.S的__switch_data的第一个内容__mmap_switched函数,并赋给PC:
__switch_data:
.long __mmap_switched
.long__data_loc @ r4
.long_data @ r5
.long __bss_start @r6
.long_end @ r7
.long processor_id @ r4
.long __machine_arch_type @ r5
.long __atags_pointer @r6
.long cr_alignment @ r7
.long init_thread_union + THREAD_START_SP @ sp
9)__mmap_switched初始化data,bss等相关段,保存相关的数据结构地址到相关变量。设置以后系统启动init进程的栈空间。
10)b start_kernel 跳转到linux启动的第二部分,为C语言编写。
armlinux启 相关文章:
- ARM Linux 更新启动画面(11-21)
- ARM Linux启动分析headarmv.S内幕(11-09)
- ARM linux的启动部分源代码简略分析(11-09)
- arm linux 启动流程(11-09)
- ARM Linux 的启动过程(11-09)
- arm linux 启动流程之 进入内核(11-09)