Microsoft Arm64EC runs Arm and x64 together

xda-developers.com9 min read

Unlike Apple Silicon, which enforces a strict separation between native Arm and emulated x64 processes, Microsoft's Windows on Arm allows a single process to execute both native Arm code and emulated x64 code simultaneously. This capability is enabled by Arm64EC, a Microsoft-specific application binary interface that uses x64-compatible data structures and register mappings while running native Arm instructions. While it introduces performance overhead due to necessary thunks and call checkers, Arm64EC enables complex legacy software and third-party plugins to function seamlessly without requiring a complete rewrite. Open article →