Long mode
From Wikipedia, the free encyclopedia
x86 processor modes | |
Mode | First supported |
Intel 8086 | |
Intel 80286 | |
Intel 80386 | |
Intel 80386 | |
Intel 386SL | |
|
AMD Opteron |
In the x86-64 computer architecture, long mode is the mode where a 64-bit application (or operating system) can access the 64-bit instructions and registers, while 32-bit and 16-bit programs are executed in a compatibility sub-mode.
Contents |
[edit] Overview
An x86-64 processor acts identically as an IA-32 processor when running in real mode or protected mode, which are supported sub-modes when the processor is not in long mode.
A bit in the CPUID extended attributes field informs programs in real or protected modes if the processor can go to long mode, which allows a program to detect an x86-64 processor. This is similar to the CPUID attributes bit that Intel IA-64 processors use for allowing programs to detect they are running under IA-32 emulation.
[edit] Memory Limitations
- See also: x86-64 (Virtual address space section)
While register sizes are increased to 64-bits from the previous x86 architecture, memory addressing has not. Current implementations of the x86-64 architecture, for cheaper manufacturing prices, typically support only 40-bits for addressing, such as the AMD Opteron. For future expansion, the architecture supports expanding memory addressing to 56-bits (limited by the page table entry format), which would allow for the processor to access 256 bytes, or 64 pebibytes.