noexecute
Noexecute is a hardware-assisted memory protection feature that prevents code from executing in designated regions of memory. It is widely known by the tag NX (No-eXecute) on x86 processors and XN (Execute-Never) on ARM architectures. When memory is marked as non-executable, attempting to fetch and run instructions from that region triggers a fault, typically terminating the offending process. Noexecute is a core component of data execution prevention (DEP) and is used to reduce the risk of exploits that inject code into data areas such as the stack, heap, or memory-mapped regions.
Implementation and usage: The feature is implemented via page-table entries or memory attributes; the OS marks
Platform support and notes: All major architectures support noexecute in some form; Windows implements DEP, Linux