自己动手从0到1学写RTOS学习指南

  1. 主页
  2. 自己动手从0到1学写RTOS学习指南
  3. 常见问题FAQ汇总
  4. 任务能否使用MSP

任务能否使用MSP

内容纲要

感谢同学 @伟亿 的提问

Q:任务直接使用MSP是不是能省掉两行汇编代码?

A:你指的是任务也使用MSP作为栈指针? 这样会有个问题哈,因为异常发生时也是使用MSP为作栈指针的。那么每个任务的栈空间可能要预留多点,给异常处理中的代码用。这样存储资源的开销就大了。 当然,你可能会想为异常单独配一个栈,在异常发生时,切换到这个栈,返回时再切换回来,这样又太复杂了。

所以,建议将PSP用作任务栈指针,使得任务栈和系统的异常处理栈空间分开。当然了,这样也会让任务运行于用户级模式。

如果你一定要使用MSP的话,也是可以的。

这篇文章对您有用吗?

我们要如何帮助您?

发表评论

电子邮件地址不会被公开。 必填项已用*标注