了解Cortex-M3双堆栈MSP和PSP
什么是栈?在谈M3堆栈之前我们先回忆一下数据结构中的栈。栈是一种先进后出的数据结构(类似于枪支的弹夹,先放入的子弹最后打出,后放入的子弹先打出)。M3内核的堆栈也不例外,也是先进后出的。栈的作用?局部变量内存的开销,函数的调用都离不开栈。了解了栈的概念和基本作用后我们来看M3的双堆栈cortex-M3内核使用了双堆栈,即MSP和PSP,这极大的方便了OS的设计。MSP的含义是Main_Stack_Pointer,即主栈PSP的含义是 Process_Stack_Pointer,即任务栈SP:
转载
2020-07-29 14:56:28 ·
2530 阅读 ·
0 评论