uboot初始化中,为何要设置CPU为SVC模式而不是设置为其他模式

发布于 2022-10-15 09:20:36 字数 4924 浏览 22 评论 0

uboot初始化中,为何要设置CPUSVC模式而不是设置为其他模式

在看Ubootstart.S文件时候,发现其最开始初始化系统,做的第一件事情,就是将CPU设置为SVC模式,但是S3C2440CPUcoreARM920T,其有7种模式,为何非要设置为SVC模式,而不是设置为其他模式呢?对此,经过一些求证,得出如下原因:

首先,先要了解ARMCPU7种模式是哪些:

http://www.docin.com/p-73665362.html

图表 22 ARMCPU的模式

处理器模式说明备注
用户
(usr)
正常程序工作模式此模式下程序不能够访问一些受操作系统保护的系统资源,应用程序也不能直接进行处理器模式的切换。
系统
(sys)
用于支持操作系统的特权任务等与用户模式类似,但具有可以直接切换到其它模式等特权
快中断
(fiq)
支持高速数据传输及通道处理FIQ异常响应时进入此模式
中断
(irq)
用于通用中断处理IRQ异常响应时进入此模式
管理
(svc)
操作系统保护代码系统复位和软件中断响应时进入此模式
中止
(abt)
用于支持虚拟内存和/或存储器保护ARM7TDMI没有大用处
未定义
(und)
支持硬件协处理器的软件仿真未定义指令异常响应时进入此模式

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

无名指的心愿 2022-10-22 09:20:36

呵呵学习咯

云之铃。 2022-10-22 09:20:36

分析的不错

终止放荡 2022-10-22 09:20:36

回帖是一种美德,谢谢楼主的分享,顶上先

太阳哥哥 2022-10-22 09:20:36

谢谢LZ分享

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文