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
Mode | Description |
---|---|
Supervisor (SVC) | Entered on reset and when a supervisor call instruction (SVC) is executed |
FIQ | Entered when a high priority (fast) interrupt is raised |
IRQ | Entered when a normal priority interrupt is raised |
Abort | Used to handle memory access violations |
Undef | Used to handle undefined instructions |
System | Privileged mode using the same registers as user mode |
User | Mode under which most applications / OS tasks run |
- user is unprivileged mode
- the rest are all privileged modes
- The first 5 are exception modes