在计算机领域，**PSE-36**（英語：，即**36位元页面大小扩展**）是一个x86处理器特性，它可将電腦數據存貯器的寻址能力从32位元扩展到36位元，允许寻址最多64 GB内存。相较于物理地址扩展（PAE）方法，PSE-36是解决4 GB内存瓶颈的更简单方案。它采用页大小扩展（英语：）（PSE）模式和一个修改的页面目录表来映射4 MB的页到一个64 GB物理地址空间。PSE-36的缺点是，不同于PAE，它在4 GB以上的区域没有4 KB的页面粒度。

PSE-36随Pentium II Xeon被引入到x86架构，并且最初被公布为"英特尔扩展服务器内存架构"（有时缩写为ESMA）的一部分，这个品牌也包括稍早一点的PAE（并且因此，只支持PAE的Pentium Pro被宣传为仅具有ESMA的"子集支持"）

PSE-36的鼎盛时期比较短。PSE-36相较PAE的主要优势是，操作系统的内部组件几乎不需要重做，因此PSE-36被认为是一个合适的缓解措施 围绕Windows NT 4.0企业版时间表的。更新的微软操作系统（包括Windows 2000）只支持PAE。例如Linux等部分操作系统完全跳过了PSE-36。尽管如此，AMD和之后的英特尔选择在其64位处理器中提供最多40位的PSE支持（在传统模式（英语：）下运行时）。

运行
--

### 检测

PSE-36的支持在CPUID结果之特性位元中的EDX第17位元（从0开始计数）表示。与纯PSE支持不同，它是由同一寄存器中的位元3指示。

### 激活和使用

就激活PSE-36而言，它没有一个单独的位元来开关PSE。至少处理器（根据CPUID标识）和芯片组支持PSE-36，直接启用PSE（通过设置位元4，即*PSE*， 系统寄存器`CR4（英语：）`的）就能允许大型的4 MB页（在64 GB范围内）以及普通的4 KB页（只能在常规的4 GB范围内）。

如果CPU支持较新的PSE-36，使用CPUID指令检查判定，那么除了在PSE中使用的10位，还有4个位元用于指向大页面的页面目录项。这将允许大页面位于36位地址空间中。

页面目录项（PDE）中的PS位元（位元7）标示此项是一个页表（描述1024个4 KiB页面）还是一个4 MB页面。正常模式与PSE-36模式下的PDE结构如下： 

32位元寻址的页面目录项| 31–22 | 21–17 | 16–13 | 12 | 11–9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
| 非PSE | 页表的基地址 | avail | 0 | PS=0 | ign | A | PCD | PWT | U | W | P |
| PSE | 页面帧地址的31..22位元 | 保留（必须为零） | PAT | avail | 0 | PS=1 | D | A | PCD | PWT | U | W | P |
| PSE-36 | 页面帧地址的31..22位元 | 保留（必须为零） | 页面帧地址的35..32位元 | PAT | avail | 0 | PS=1 | D | A | PCD | PWT | U | W | P |

1. 页面属性表（英语：）；自Pentium III起出现。对更早CPU必须为零。
2. ""脏"位：如果存在对该页的写访问，CPU将其设为1。对于4 KiB页面，该标志存在于相应的页表项（PTE）中。

### 扩展到40位元

凭借在传统模式（英语：）下运行时翻译PDE的位元20..13为页面基地址的位元39..32，AMD在其AMD64处理器中将此方案扩展为40位元寻址。因此它只保留了位元21（必须为零）。但请注意，在长模式下CR4.PSE被忽略，并且该模式下PSE式4 MB页面不可用。在AMD64传统模式下使用PSE 4 MB页面可寻址的物理内存总量因此是1024 GB。汤姆·谢利（Tom Shanley）称此扩展为PSE-40，尽管该名称没有出现在AMD官方文档中。

最新的英特尔手册（2014年2月）也表明在PSE中最多支持40位。英特尔CPU支持的PSE位的确切数目可能较少，并且必须通过CPUID确定处理器支持的最大物理地址宽度，方法是使用function 80000008H调用CPUID，并检查EAX[7:0]中的结果。

使用
--

PSE-36特性的实用性取决于芯片组对超过4 GB内存的支持。奔腾II时代的大多数芯片组并不支持这么多内存，英特尔440BX典型台式机芯片组的最大容量为1 GB，440GX工作站芯片组则为2 GB。只有高端服务器主板Intel 450NX芯片组支持8 GB。对PSE-36（ESMA）的支持通常面向服务器宣传。

作为适配支持PSE-36的操作系统，1998年英特尔宣布了Microsoft Windows NT Server、Enterprise Edition 4.0和据称即将到来的NT 5.0，它们都可以通过一个PSE36device driver来支持，这使得操作系统的大部分组件不能感知PSE-36（只有PSE36驱动程序启用时能暂时感知），并且想要访问超过4 GB内存的应用程序必须调用驱动程序。因此Windows NT 4.0企业版基本将PSE-36特性作为一个内存盘。Windows NT 4.0 Enterprise Edition服务器上的部分应用程序使用PSE36驱动程序，这包括：SAP（英语：） liveCache、Microsoft SQL Server 7.0、Oracle 8.1.5和IBM DB2。后者的调优文档指出，"遗憾的是，在大多数情况下，使用PSE-36驱动程序获得的性能增益并不是很好。在许多情况下，使用PSE-36驱动程序、具有8 GB内存的服务器，运行速度要比使用不使用该驱动程序、具有4 GB内存的服务器更慢。 [...]经过一年多的实验和调整，微软和IBM由于性能不佳而放弃了PSE-36的支持。该驱动程序对英特尔的供应商仍然可用，但对于最终客户使用而言并无价值。"

由于与另一方案PAE相比性能低下，Windows 2000（NT 5.0）最终不支持PSE-36。Windows 2000也用新的地址窗口扩展（AWE）替换了PSE36驱动程序的API，其中采用PAE。（AWE仅适用于Windows 2000的数据中心服务器和高级服务器版本）。Windows应用程序因而迁移到这个新API，例如Oracle 8.1.6和MS SQL Server 2000。

PSE-36从未被Linux支持。

相较于PAE
------

物理地址扩展（PAE）是另一个允许36位元寻址的方案。PSE-36具有不改变页面表层次结构的优点，并且页面条目保持其旧的32位格式而不扩展到64位。PSE-36的显着缺点是只有大页面可以处在64 GB的物理内存中，而小页面仍然只能位于前4 GB的物理内存。

英特尔扩展服务器内存架构
------------

英特尔扩展服务器内存架构被定义为在核心处理器中包括两个36位寻址模式：PAE-36和PSE-36。[來源請求]

参见
--

* 内存限制（英语：）
* 3GB瓶颈（英语：）
* PCI hole（英语：）

参考资料
----

1. ↑   (PDF). Intel Order Number: 243846-001. 1998  [2014-03-01]. （原始内容存档 (PDF)于2012-07-03）.
2. ↑   (PDF). Redbooks.ibm.com: 51–52.  [2014-03-01].
3. ↑  Deni Connor.. Network World. 7 December 1998: 19  [2017-04-10]. ISSN 0887-7661. （原始内容存档于2017-04-11）.
4. ↑  Michael Missbach; Uwe M. Hoffmann.. Prentice Hall Professional. 2000: 62  [2017-04-10]. ISBN 978-0-13-028084-8. （原始内容存档于2017-04-11）.
5. ↑  Daniel P. Bovet; Marco Cesati.. "O'Reilly Media, Inc.". 17 November 2005: 52  [2017-04-10]. ISBN 978-0-596-55491-0. （原始内容存档于2017-04-11）.
6. ↑  Intel Processor Identification and the CPUID Instruction Wikiwix的存檔，存档日期2013-07-24, Intel application note AP-485
7. ↑  Tom Shanley.. Addison Wesley Professional. 2005: 732–736. ISBN 978-0-321-24656-1.
8. ↑  AMD Corporation.  (PDF). AMD64 Architecture Programmer's Manual 3.22. AMD Corporation: 25–26 and 125–126. September 2012  [2014-02-17]. （原始内容存档 (PDF)于2014-02-22）.
9. ↑  Tom Shanley.. MindShare Press. 2009: 578–579. ISBN 9780977087853.
10. ↑   (PDF). Intel.  [2017-04-10]. （原始内容存档 (PDF)于2011-05-16）. If the PSE-36 mechanism is not supported, M is 32, and this row does not apply. If the PSE-36 mechanism is supported, M is the minimum of 40 and MAXPHYADDR (this row does not apply if MAXPHYADDR = 32). See Section 4.1.4 for how to determine MAXPHYADDR and whether the PSE-36 mechanism is supported. [...] CPUID.80000008H:EAX[7:0] reports the physical-address width supported by the processor. (For processors that do not support CPUID function 80000008H, the width is generally 36 if CPUID.01H:EDX.PAE [bit 6] = 1 and 32 otherwise.) This width is referred to as MAXPHYADDR. MAXPHYADDR is at most 52.
11. ↑  Intel's Pentium II Xeon Processor.
12. ↑ . Stechno.net. 2003-04-04  [2014-03-01]. （原始内容存档于2014-03-02）.
13. 1 2 3  Michael R. Ault.  (PDF). ROBO Books White Paper: 10–12. 2003-02-17  [2014-03-01]. （原始内容 (PDF)存档于2022-01-19）.
14. ↑   (PDF) 3rd. IBM SG24-5287-02. June 2002: 97  [2017-04-10]. （原始内容 (PDF)存档于2014-03-03）.
15. 1 2 3  Sajal Dam.. Apress. 2004: 28  [2017-04-10]. ISBN 978-1-4302-0407-7. （原始内容存档于2017-03-15）.
16. ↑ . Msdn.microsoft.com. 2006-07-14  [2014-03-01]. （原始内容存档于2014-03-20）.