AWE可以在Windows XP 32位SQL Server 2005开发版上使用> 4GB RAM

问题描述:

在Windows XP专业版(32位)上使用SQL Server 2005开发者版我注意到启用AWE(高级窗口扩展)已启用。我有一个Opteron工作站,可以轻松升级到8GB或更高,但在开发环境中迁移32位Windows XP Pro是不现实的。据我所知,以32位模式运行的Opteron的MMU应该支持36位物理地址空间,就像32位Xeon一样。AWE可以在Windows XP 32位SQL Server 2005开发版上使用> 4GB RAM

减少SQL Server的内存占用空间可以让我给Analysis Services更多的空间。

  • 有谁知道 的Windows XP AWE是否有可能被用于SQL 服务器(与 这个MMU支持CPU上)为RAM超过 4GB的支持?

  • 或者,是任何人都知道的 什么数据字典视图可能会告诉 我有关AWE缓冲区的使用,这样我 可以尝试,并得到某种 明确的观点,以它是否使用额外的内存 ?

编辑:对于那些不熟悉它,AWE是一种功能,使您可以控制虚拟物理地址映射和页面任意物理内存和退出进程的4GB的虚拟地址空间。 32位Xeon(以及其他某些处理器)上的MMU实际上将支持超过4GB的物理RAM,但一次只能处理4GB的单个进程地址空间。从我所能告诉的Opteron上的MMU在32位代码上也具有这种能力。

SQL Server支持使用AWE访问超过其进程地址空间允许在32位盒上的2GB或3GB物理RAM。它通过显式管理映射来实现这一点,交换物理内存进出虚拟地址空间。某些版本的Windows,特别是Windows 2003和Windows 2000 Advanced Server,将支持以这种方式使用的超过4GB的内存,并提供用于执行此操作的API。

现在的问题是:在哪里我有一个硬件支持这台机器,Windows XP 32位让我用这种方式超过4GB的内存?

Windows XP(32位)doesn't support PAE(即36位物理地址);它只支持4GB的RAM。您需要Windows 2003(Enterprise或Datacenter)来支持PAE。由于您的操作系统无法使用PAE,因此您的应用程序无法使用AWE。

可能使用/ 3GB开关运行它,给予SQL Server更多空间来呼吸。

就我个人而言,我会升级到64位版本的Windows,可能是Windows 7 x64。

+0

非常感谢。 'Windows XP不支持PAE'正是这个问题的答案。 +1。 – ConcernedOfTunbridgeWells 2009-01-26 11:48:25

除非操作系统支持超过32位内存寻址空间,否则任何应用程序都不会支持它。您需要升级到64位操作系统才能允许SQL Server利用额外的RAM。

你不能在32位操作系统中为用户进程提供超过2Gb的地址空间。实际上,您可以选择使用应用了/ 3Gb切换器的Windows Server 2003在3Gb用户地址空间中运行进程。

WinXP 32位可以使用超过4GB的内存,但需要启用PAE和更高的内存支持。

这里有一个这样的帖子,你可以找到关于这个主题。 http://www.overclock.net/t/596932/guide-make-32-bit-os-support-128gb-of-ram

一旦启用了对> 4GB的操作系统支持,就可以启用AWE并使SQL可以访问额外的内存。

操作系统限制纯粹是由于许可,实际上并非物理限制。 Windows Server变体说明了这一点,因为它们的服务器数据中心版本能够在x86中使用64GB是很常见的。对于32位应用程序,SQL Server是不常见的,因为它实际上可以使用额外的内存,而其他大多数32位进程限制为2GB/3GB。