Intel adopted the 64-bit computing bit architecture in 2004 with the later versions of the Prescott Pentium 4. The different versions are backward-compatible, meaning that a 32-bit x86 CPU can run a 32-bit or 16-bit operating system, and a 64-bit x86 CPU can run a 16, 32, or 64-bit operating system. All x86 CPUs (with the rare exception of some Intel CPUs used in embedded systems) start in 16-bit real mode. A modern operating system (or sometimes the bootloader) switches the CPU into 32-bit protected mode or 64-bit long mode before booting the kernel.