在AArch64 Virtual Memory System Architecture中,有以下几种机制会导致PE在访问memory失败时产生exceptions。
Debug exception: An exception caused by the debug configuration.
Alignment fault: An Alignment fault is generated if the address used for a memory access does not have the required alignment for the operation.
MMU fault: An MMU fault is a fault generated by the fault checking sequence for the current translation regime.
External abort: Any memory system fault other than a Debug exception, an Alignment fault, or an MMU fault.
这些机制统称为aborts。
当1笔access产生abort时,会使用Fault Address Registers (FARs)和Exception Syndrome Registers (ESRs)去记录context information,方便software debug。
以下列出了这些aborts的特点。