PSE36
   HOME

TheInfoList



OR:

In
computing Computing is any goal-oriented activity requiring, benefiting from, or creating computing machinery. It includes the study and experimentation of algorithmic processes, and development of both hardware and software. Computing has scientific, ...
, PSE-36 (36-bit Page Size Extension) refers to a feature of
x86 x86 (also known as 80x86 or the 8086 family) is a family of complex instruction set computer (CISC) instruction set architectures initially developed by Intel based on the Intel 8086 microprocessor and its 8088 variant. The 8086 was intr ...
processors that extends the
physical memory Computer data storage is a technology consisting of computer components and recording media that are used to retain digital data. It is a core function and fundamental component of computers. The central processing unit (CPU) of a compute ...
addressing capabilities from 32 bits to 36 bits, allowing addressing to up to 64 GB of memory. Compared to the
Physical Address Extension In computing, Physical Address Extension (PAE), sometimes referred to as Page Address Extension, is a memory management feature for the x86 architecture. PAE was first introduced by Intel in the Pentium Pro, and later by AMD in the Athlon proces ...
(PAE) method, PSE-36 is a simpler alternative to addressing more than 4 GB of memory. It uses the
Page Size Extension In computing, Page Size Extension (PSE) refers to a feature of x86 processors that allows for pages larger than the traditional 4 KiB size. It was introduced in the original Pentium processor, but it was only publicly documented by Intel with the ...
(PSE) mode and a modified page directory table to map 4 MB pages into a 64 GB physical address space. PSE-36's downside is that, unlike PAE, it doesn't have 4-KB page granularity above the 4 GB mark. PSE-36 was introduced into the x86 architecture with the
Pentium II Xeon Xeon ( ) is a brand of x86 microprocessors designed, manufactured, and marketed by Intel, targeted at the non-consumer workstation, server, and embedded system markets. It was introduced in June 1998. Xeon processors are based on the same arc ...
and was initially advertised as part of the "Intel Extended Server Memory Architecture" (sometimes abbreviated ESMA), a branding which also included the slightly older PAE (and thus the
Pentium Pro The Pentium Pro is a sixth-generation x86 microprocessor developed and manufactured by Intel and introduced on November 1, 1995. It introduced the P6 microarchitecture (sometimes termed i686) and was originally intended to replace the original ...
, which only supported PAE, was advertised as having only "subset support" for ESMA). The heyday of PSE-36 was relatively brief. PSE-36's main advantage was that, unlike PAE, it required little rework of the operating system's internals, and thus PSE-36 proved a suitable stopgap measure around the
Windows NT 4.0 Windows NT 4.0 is a major release of the Windows NT operating system developed by Microsoft and oriented towards businesses. It is the direct successor to Windows NT 3.51, which was released to manufacturing on July 31, 1996, and then to retail ...
Enterprise Edition timeframe. Newer Microsoft operating systems, including
Windows 2000 Windows 2000 is a major release of the Windows NT operating system developed by Microsoft and oriented towards businesses. It was the direct successor to Windows NT 4.0, and was released to manufacturing on December 15, 1999, and was officiall ...
, support only PAE. Some operating systems like
Linux Linux ( or ) is a family of open-source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically packaged as a Linux distribution, w ...
skipped PSE-36 entirely. Despite this, AMD and later Intel chose to provide up to 40 bits PSE support in their 64-bit processors, when operated in legacy mode.


Operation


Detection

Support for PSE-36 is indicated by EDX bit 17 (counting from 0) in the cpuid result for feature bits. (This is a different bit from plain PSE support, which is indicated by bit 3 in the same register).


Activation and use

As far as activating PSE-36, there isn't however a separate bit from the one that turns on PSE. As long the processor (as indicated by cpuid) and chipset support PSE-36, enabling PSE alone (by setting bit 4, ''PSE'', of the system register CR4) allows the use of large 4 MB pages (in the 64 GB range) along with normal 4 KB pages (which are however restricted to the 4 GB range). If newer PSE-36 capability is available on the CPU, as checked using the
CPUID In the x86 architecture, the CPUID instruction (identified by a CPUID opcode) is a processor supplementary instruction (its name derived from CPU IDentification) allowing software to discover details of the processor. It was introduced by Intel ...
instruction, then 4 more bits, in addition to the 10 bits used in PSE, are used inside a page directory entry pointing to a large page. This allows a large page to be located in 36 bit address space. The PS bit (bit 7) in the Page Directory Entry (PDE) denotes whether this entry refers to a page table (that describes 1024 4-KiB pages) or one 4 MB page. PDE structures in normal mode, PSE mode, and PSE-36 mode are as follows:
  1. Page attribute table; since
    Pentium III The Pentium III (marketed as Intel Pentium III Processor, informally PIII or P3) brand refers to Intel's 32-bit x86 desktop and mobile CPUs based on the sixth-generation P6 microarchitecture introduced on February 28, 1999. The brand's initial ...
    , must be zero for older CPUs.
  2. "Dirty" bit: set to 1 by CPU if there was a write access to that page. For 4 KiB pages this flag exists in the according page table entry (PTE).


Extension up to 40 bits

AMD Advanced Micro Devices, Inc. (AMD) is an American multinational semiconductor company based in Santa Clara, California, that develops computer processors and related technologies for business and consumer markets. While it initially manufactur ...
extends this scheme to 40 address bits by interpreting bits 20..13 of a PDE as bit 39..32 of the page base address in their
AMD64 x86-64 (also known as x64, x86_64, AMD64, and Intel 64) is a 64-bit version of the x86 instruction set, first released in 1999. It introduced two new modes of operation, 64-bit mode and compatibility mode, along with a new 4-level paging m ...
processors when operated in legacy mode, so only bit 21 is reserved (must be zero). Note however that CR4.PSE is ignored in long mode and PSE-style 4 MB pages are not available in that mode. The total amount of physical memory addressable in AMD64 legacy mode using PSE 4-MB pages is, thus, 1024 GB. Tom Shanley has called this extension PSE-40, although such a designation does not appear in the official AMD documentation. The latest Intel manuals (February 2014) also indicate support for up to 40 bits in PSE. The exact number of PSE bits supported on Intel CPUs can be less though, and must be determined by using CPUID to query the maximum physical-address width supported by the processor by invoking CPUID with function 80000008H and checking the result in EAX :0


Usage

Practical usefulness of the PSE-36 feature depends on chipset support for more than 4 GB of RAM. Most chipsets from the Pentium II timeframe did not support this much memory, with 1 GB being the maximum for the Intel 440BX typical desktop chipset, and 2 GB for the 440GX workstation chipset. Only the high-end server Intel 450NX chipset supported 8 GB. Support for PSE-36 (ESMA) was thus usually advertised for servers. As suitable operating system supporting PSE-36, in 1998 Intel advertised
Microsoft Windows NT Windows NT is a proprietary graphical operating system produced by Microsoft, the first version of which was released on July 27, 1993. It is a processor-independent, multiprocessing and multi-user operating system. The first version of Win ...
Server, Enterprise Edition 4.0 and supposedly the upcoming NT 5.0, both enabling use via a PSE36 device driver, which kept most of the operating system unaware of PSE-36 (only the PSE36 driver enabled it temporarily), and which driver had to be called by applications that wanted to access more than 4 GB. Windows NT 4.0 Enterprise Edition thus used the PSE-36 feature essentially as a
RAM disk Ram, ram, or RAM may refer to: Animals * A male sheep * Ram cichlid, a freshwater tropical fish People * Ram (given name) * Ram (surname) * Ram (director) (Ramsubramaniam), an Indian Tamil film director * RAM (musician) (born 1974), Dutch * ...
. The PSE36 driver was used by some applications on
Windows NT Windows NT is a proprietary graphical operating system produced by Microsoft, the first version of which was released on July 27, 1993. It is a processor-independent, multiprocessing and multi-user operating system. The first version of Win ...
4.0 Enterprise Edition servers, for example
SAP Sap is a fluid transported in xylem cells (vessel elements or tracheids) or phloem sieve tube elements of a plant. These cells transport water and nutrients throughout the plant. Sap is distinct from latex, resin, or cell sap; it is a separ ...
liveCache,
Microsoft SQL Server Microsoft SQL Server is a relational database management system developed by Microsoft. As a database server, it is a software product with the primary function of storing and retrieving data as requested by other software applications—which ...
7.0, Oracle 8.1.5, and IBM DB2. The tuning documentation for the latter noted however that "Unfortunately in most cases performance gains obtained using the PSE-36 driver are not spectacular. In many cases the server will run slower with 8 GB using the PSE-36 driver than it runs with 4 GB without the driver. ..After more than a year of experimentation and tuning, Microsoft and IBM dropped support for PSE-36 due to insufficient performance gains. The driver is still available for vendors from Intel, but it is not useful for end customer use."
Windows 2000 Windows 2000 is a major release of the Windows NT operating system developed by Microsoft and oriented towards businesses. It was the direct successor to Windows NT 4.0, and was released to manufacturing on December 15, 1999, and was officiall ...
(NT 5.0) ended up not supporting PSE-36, due to low performance when compared with the alternative PAE. Windows 2000 also replaced the API of the PSE36 driver with a new API called
Address Windowing Extensions Address Windowing Extensions (AWE) is a Microsoft Windows application programming interface that allows a 32-bit software application to access more physical memory than it has virtual address space, even in excess of the 4 GB limit. The process of ...
(AWE), which used PAE underneath. (AWE was only available in the Datacenter Server and Advanced Server of Windows 2000.) Windows applications consequently migrated to this new API, e.g. starting with Oracle 8.1.6 or MS SQL Server 2000. PSE-36 was never used by
Linux Linux ( or ) is a family of open-source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically packaged as a Linux distribution, w ...
.


Compared to PAE

Physical Address Extension In computing, Physical Address Extension (PAE), sometimes referred to as Page Address Extension, is a memory management feature for the x86 architecture. PAE was first introduced by Intel in the Pentium Pro, and later by AMD in the Athlon proces ...
(PAE) is an alternative to PSE-36 which also allows 36-bit addressing. PSE-36 has the advantages that the hierarchy of page tables is not changed, and that page entries keep their old 32-bit format and are not extended to 64 bits. The obvious disadvantage of PSE-36 is that only large pages can be located in 64 GB of physical memory, and small pages can still be located only in the first 4 GB of physical memory.


Intel Extended Server Memory Architecture

The Intel Extended Server Memory Architecture is defined to include two 36-bit addressing modes in the core processor: PAE-36 and PSE-36.


See also

*
RAM limit Ram, ram, or RAM may refer to: Animals * A male sheep * Ram cichlid, a freshwater tropical fish People * Ram (given name) * Ram (surname) * Ram (director) (Ramsubramaniam), an Indian Tamil film director * RAM (musician) (born 1974), Dutch * Ra ...
*
3 GB barrier In computing, the term 3 GB barrier refers to a limitation of some 32-bit operating systems running on x86 microprocessors. It prevents the operating systems from using all of 4 GiB () of main memory. The exact barrier varies by motherboar ...
*
PCI hole The PCI hole or PCI memory hole is a limitation of 32-bit hardware and 32-bit operating systems that causes a computer to appear to have less memory available than is physically installed. This memory addressing limitation and the later workarou ...


References

{{Reflist, 30em X86 architecture Virtual memory ru:PSE