gpt4 book ai didi

ARM 模式为何有这么多?

转载 作者:行者123 更新时间:2023-12-02 18:13:51 27 4
gpt4 key购买 nike

我目前正在阅读/学习 ARM 架构......我想知道为什么有这么多模式(FIQ、用户、系统、管理员、IRQ,...)。

我的问题是为什么我们需要这么多模式?仅用户和系统还不够吗?

提前致谢。

最佳答案

这只是一个架构决策。多种模式的一大优点是它们有一些存储的寄存器。这些额外的寄存器允许您编写更简单的异常例程。

如果您只选择两个,那么 USR 和 SYS 可能是不错的选择,但是当您发生异常时会发生什么?正常的ARM模型是进入异常模式,设置该异常模式的banked链接寄存器指向解决异常后要返回的指令,将处理器状态保存在异常模式的SPSR寄存器中,然后跳转到异常向量。 USR 和 SYS 共享它们的所有寄存器 - 使用此模型,每次中断时都会清除函数返回地址(以 LR 表示)!

FIQ 模式比其他异常模式拥有更多的分组寄存器。这些额外的寄存器与 FIQ 的“F”部分一致 - 它代表“快速”。不必在软件中保存和恢复更多处理器上下文将加快您的中断处理程序的速度。

关于ARM 模式为何有这么多?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5462555/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com