微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > arm linux 启动之一:汇编启动到start_kernel

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语言编写。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top