Processor modes and A and R profiles

The ARM has 7 basic operating modes

  • Each mode has access to its own stack space and a different subset of registers
  • Some operations can only be carried out in a privileged mode
ModeDescription
Supervisor (SVC)Entered on reset and when a supervisor call instruction (SVC) is executed
FIQEntered when a high priority (fast) interrupt is raised
IRQEntered when a normal priority interrupt is raised
AbortUsed to handle memory access violations
UndefUsed to handle undefined instructions
SystemPrivileged mode using the same registers as user mode
UserMode under which most applications / OS tasks run
  • user is unprivileged mode
  • the rest are all privileged modes
  • The first 5 are exception modes

Processor Modes for M profile