Key Concepts of Cortex-M3
Thread mode: This mode is active when the processor is reset or exits from an exception. The code in this mode can be either privileged or user code, controlled by CONTROL[0].
Handler mode: This mode is entered when an exception (including interrupts) occurs, and all code in this mode has privileged access.
Privileged access: Complete access rights to processor resources; this access mode is entered after a processor reset; zeroing CONTROL[0] enters user mode.
User access: