马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
x
在启动文件中,
有对各个模式的SP进行设置:
InitStack
MOV R0, LR
;Build the SVC stack
;设置管理模式堆栈
MSR CPSR_c, #0xd3
LDR SP, StackSvc
;Build the IRQ stack
;设置中断模式堆栈
MSR CPSR_c, #0xd2
LDR SP, StackIrq
。。。。。。
那么调用函数 __user_initial_stackheap所返回的参数:
r0:heap基地址;
r1:堆栈基地址;
r2:heap长度限制值(需要的话);
r3:堆栈长度限制值。
其中的堆栈基址是干什么用的?与前面的InitStack 中的SP有什么关系?
就以栈为例,前面的InitStack 中的SP有设置了,
那后边的__user_initial_stackheap返回的参数是干什么用的?
请高手再指点!先谢了!! |