

Physical Address Extension (PAE), sometimes referred to as Page Address Extension, is a memory management feature for the x86 architecture. Physical Address Extensions (support for more than 4GB of RAM). MSR is any of various control registers in the x86 instruction set used for debugging, program execution tracing, computer performance monitoring, and toggling certain CPU features. In x86-64 mode, RDTSC also clears the higher 32 bits of RAX and RDX. The instruction RDTSC returns the TSC in EDX:EAX. It counts the number of cycles since reset. is a 64-bit register present on all x86 processors since the Pentium. It was introduced in the original Pentium processor, but it was only publicly documented by Intel with the release of the Pentium Pro. PSE is a feature of x86 processors that allows for pages larger than the traditional 4 KiB size. CR4 bit 3 controls the DE (Debugging Extension), if set, enables debug register based breaks on I/O space access. CR4 is used in protected mode to control operations such as virtual-8086 support, enabling I/O breakpoints, page size extension and machine check exceptions. Common tasks performed by control registers include interrupt control, switching the addressing mode, paging control, and coprocessor control.

A control register CR is a processor register which changes or controls the general behavior of a CPU or other digital device. It is a hardware virtualization technique that allowed multiple 8086 processors to be emulated by the 386 chip it emerged from the painful experiences with the 80286 protected mode, which by itself was not suitable to run concurrent real mode applications wellĭebugging Extensions (CR4.DE). In the 80386 microprocessor and later, virtual 8086 mode (also called virtual real mode, V86-mode or VM86) allows the execution of real mode applications that are incapable of running directly in protected mode while the processor is running a protected mode operating system. Typical operations are addition, subtraction, multiplication, division, square root, and bitshifting. designed to carry out operations on floating point numbers. In our case the following flags are mentioned: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx rdtscp lm constant_tsc rep_good nopl xtopology nonstop_tsc pni pclmulqdq ssse3 cx16 sse4_1 sse4_2 x2apic movbe popcnt aes xsave avx rdrand hypervisor lahf_lm abm 3dnowprefetch rdseed clflushopt.

Model name : Intel(R) Core(TM) i5-6267U CPU 2.90GHzįlags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx rdtscp lm constant_tsc rep_good nopl xtopology nonstop_tsc pni pclmulqdq ssse3 cx16 sse4_1 sse4_2 x2apic movbe popcnt aes xsave avx rdrand hypervisor lahf_lm abm 3dnowprefetch rdseed clflushoptĪddress sizes : 39 bits physical, 48 bits virtualĪs you can see, a lot of flags are mentioned, those might be interesting to understand the capabilities of your processor in more detail. The first place to look for more information on the CPU is /proc/cpuinfo which might give a wealth of additional information.īelow is an example of the content of my /proc/cpuinfo (running Oracle Linux in a Virtualbox image on a MacBook Pro): However, in some cases, especially when doing lower level development work or doing more advanced Oracle Linux system tuning it is good to have a bit more insight into your physical CPU.

Commonly the only question is, how fast is that CPU handling my code. Most people using Linux take the CPU they have for granted.
