x86

Intel x86 processors do not ever reorder writes. That is, they do not do out-of-order stores.

x86 Rings

x86 defines four privilege levels, numbered from 0 to 3:

  • Ring 0: Highest privilege (kernel mode)
  • Ring 3: Lowest privileg (user mode)
  • Ring 1 and Ring 2: historically defined for intermediate privilege levels but rarely used in modern operating systems

Most modern operating systems use only Ring 0 and Ring 3 to simplify system design.

The CPU enforces restrictions based on the current privilege level. Code running in a higher-privilege ring (e.g., Ring 0) has unrestricted access to hardware resources, while lower-privilege rings have limited access.

x86 doesn’t have a dedicated ring for virtualization; it relies on extensions (VT-x, AMD-V).

x86 doesn’t have an equivalent to ARM’s EL3 (secure world) for security. x86 uses the Intel SGX (Software Guard Extensions) and AMD SEV (Secure Encrypted Virtualization) features for secure enclaves, but these are not tied to privilege rings.


This site uses Just the Docs, a documentation theme for Jekyll.