This guide is the fourth in a collection of related guides:
- Building your first embedded image
- Retargeting output to UART
- Creating an event-driven embedded image
- Changing Exception level and Security state in an embedded image (this guide)
In the previous guides, we built an Executable and Linkable Format (ELF) image to expose some features of the Armv8-A architecture and toolchain for embedded software development. We printed "hello world" to a Telnet console, and enabled interrupts on the system.
In this guide, we discuss the architectural features of Exception level and Security state in more detail. At the end of this guide, you will understand how to use exceptions to move through different exception levels and switch between the Secure and Non-secure worlds.