ARM工作模式

ARM工作模式

学习ARM的最好的资料是ARM公司发布的资料:ARM Architecture Reference Manual.pdf

找到章节:Programmers’ Model

由文档可知:ARM处理器支持七种工作模式:


User         usr    用户模式

FIQ          fiq      快速中断模式

IRQ          irq     普通中断模式

Supervisor       svc    保护模式(权限相对较高,操作系统在此模式下运行)

Abort         abt    异常模式,Implements virtual memory and/or memory protection

Undefined     und   未定义指令模式(ARM处理器不支持的指令)

System      sys    Runs privileged operating system tasks (ARMv4 and above)
--------------------------------------------------------------------------
linux内核运行在svc模式下。
linux应用程序运行在usr模式下。
--------------------------------------------------------------------------
程序在不同模式下,能够运行的ARM处理器的指令是不一样的;能够访问的ARM处理器的寄存器是不一样的。
在权限较高的模式下面让操作系统去运行,因为相对信任操作系统。
而应用程序,因为编写应用程序的人员,水平参差不齐,所以在级别较低的模式下运行,即使出现错误
也不会对整个ARM处理器造成破坏性的影响。

原文地址:https://www.cnblogs.com/zhangxuan/p/4847692.html