• win2003支持4G以上内存


    1.32位的OS最多只能support到4GB。
    2.如果你的主板和BIOS支持,64位的OS可以支持4GB以上。
    3.4GB的内存只能认到3.5G是因为最高的512MB分给了PCI,PCIE
      等其他设备。这部分内存不能被使用。 

    /PAE /3GB

    详细见

    Win2003不支持3G以上时可以看看此文


    服务器刚刚购回来时就发觉这个问题,为什么好好的4G内存主板剧只识别成3G呢,三返四次修改BIOS也只能让主板识别成3.3G及3.5G左右,真烦人。。。
    原来是有的服务器都有内存空洞,所以3.3G-3.8G都是正常的,这部分空洞的内存作为硬件的消耗了,差的太多就要升级主板的BIOS和阵列卡的firmware就可以了。
    如果是XP或2003系列的话还要在BOOS.INI里加上/PAE参数才能正常访问扩展内存。超过1G的话还要加上/USERVA=3030参数才能最优化配置虚似内存。

    由win2003 SP1中一个重要的安全功能-“数据执行保护功能(简称:DEP)”产生的。
    你可以在“控制面板→系统→高级→设置→数据执行保护”中找到它。
    当你在这两项中进行切换时,“/NoExecute=OptIn”也会变成“/NoExecute=Optout”。
    注意:此功能需要硬件支持:包括AMD Athlon 64、AMD Opteron、Intel的安腾和安腾2,据说nVIDIA、VIA、全美达等公司也计划在其芯片中加入该技术。建议普通用户不要去修改它,否则会引起系统运行不稳定。

    /NoExecute=alwaysoff 就是关闭数据执行保护功能
    /NoExecute=OptIn 表示选择的是第一项,就是“只为……”那项
    /NoExecute=Optout 表示选择的是第二项


    /noexecute=AlwaysOff时,相当于关闭了DEP和EVP功能,凡是被其阻止的程序都能正常运行

    /NoExecute=OptOut --DEP被打开,且一切服务都使用dep


    v如果你的服务器内存大于3G以上,系统是Win2003不支持3G以上时可以看看此文

    概要
    本文介绍物理地址扩展 (PAE) 和地址窗口化扩展 (AWE) 并解释它们如何协同工作。本文还将讨论超出 32 位操作系统所固有的 4 GB 范围的内存使用限制。
    更多信息
    PAE 提高了 IA32 处理器处理大于 4 GB 的物理内存的能力。Microsoft Windows 2000 Advanced Server、Microsoft Windows 2000 Datacenter Server、Microsoft Windows Server 2003 Enterprise Edition 和 Microsoft Windows Server 2003 Datacenter Edition 可以使用 PAE 来利用超出 4GB 的物理内存。若要启用 PAE,需要在 Boot.ini 文件中使用 /PAE 参数。

    注意:只有在服务器使用热添加内存设备时,Windows Server 2003 Enterprise Edition 和 Windows Server 2003 Datacenter Edition 才自动启用 PAE。在这种情况下,不需要在配置为使用热添加内存设备的系统上使用 /PAE 开关。在其他情况下,必须在 Boot.ini 文件中使用 /PAE 开关来利用大于 4GB 的内存。

    典型情况是,在 Windows 2000 或 Windows Server 2003 下运行的进程最多可以访问 2 GB 的内存地址空间(假设未使用 /3GB 参数),其中一些内存是物理内存,另一些是虚拟内存。运行的程序越多(因而进程也越多),占用的内存地址空间也就越接近 2 GB 这一最大值。

    当出现这种情况时,分页进程将显著增加并且会对性能产生负面影响。Windows 2000 和 Windows Server 2003 内存管理器使用 PAE 向程序提供更多的物理内存。这会降低对交换页面文件内存的需要,从而提高了性能。程序本身并不知道实际的内存大小。所有的内存管理和 PAE 内存分配都由内存管理器处理,与运行的程序无关。

    当使用 /3GB 参数时,上述信息对于运行的程序有效。要求 3 GB 内存的程序更有可能让其所需的内存有更多部分在物理内存中,而不是在分页的虚拟内存中。这将增强那些能够使用 /3GB 参数的程序的性能。但例外情况是当 /3GB 参数与 /PAE 参数一起使用时。在这种情况下,操作系统将不使用任何超过 16 GB 的内存。此行为是由内核虚拟内存空间考虑导致的。因此,如果系统使用 Boot.ini 文件中的 /3GB 项重新启动,并且系统的物理内存超过 16 GB,则操作系统不使用额外的物理随机存取内存 (RAM)。重新启动计算机时如果不使用 /3GB 开关,将能够使用所有的物理内存。

    AWE 是内存管理器功能的一套应用程序编程接口 (API),它使程序能够寻址更多内存 — 超过标准 32 位寻址的 4 GB 内存空间。AWE 使程序能够将物理内存保留为非分页内存,然后将非分页内存部分动态映射到程序的内存工作集。此过程使内存密集型程序(如大型数据库系统)能够为数据保留大量的物理内存,而不必交换分页文件以供使用。相反,数据在工作集中进行交换,并且保留的内存超过 4 GB 范围。此外,超出 4 GB 的内存范围对内存管理器是公开的,并且 AWE 通过 PAE 发挥作用。没有 PAE,AWE 就无法保留超出 4 GB 的内存。

    以下是一个 Boot.ini 文件的示例,其中已添加了 PAE 开关:
    [boot loader]
    timeout=30
    default=multi(0)disk(0)rdisk(0)partition(2)\WINDOWS
    [operating systems]
    multi(0)disk(0)rdisk(0)partition(2)\WINDOWS="Windows Server 2003, Enterprise" /fastdetect /PAE


    警告:Boot.ini 文件的内容根据您的配置而异。 有关更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
    317526 (http://support.microsoft.com/kb/317526/) 如何在 Windows Server 2003 中编辑 Boot.ini 文件
    总之,PAE 是 Windows 2000 和 Windows Server 2003 内存管理器的一项功能,它为请求内存的程序提供了更多物理内存。程序并不知道它正使用的内存中有些在大于 4 GB 的范围内,正如程序不知道它请求的内存实际上是在页面文件中一样。

    AWE 是一个 API 集,它使程序能够保留大内存块。保留的内存是非分页的,并且只可以由该程序来使用。 有关 AWE 和 PAE 的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
    268363 (http://support.microsoft.com/kb/268363/) Windows 2000 中的 Intel 物理地址扩展 (PAE)
    有关更多信息,请访问下面的 Microsoft 网站:
    http://msdn.microsoft.com/library/psdk/sql/ad_1_server_1fnd.htm (http://msdn.microsoft.com/library/psdk/sql/ad_1_server_1fnd.htm)
    http://msdn.microsoft.com/librar ... html/awewindata.asp (http://msdn.microsoft.com/librar ... tml/awewindata.asp)

    如果向系统添加更多内存,BIOS 可能会认出安装在服务器中的全部物理 RAM,而 Windows 将只能认出部分 RAM。如果服务器具有启用的冗余内存功能或内存镜像功能,则全部剩余内存可能对 Windows 都不可见。冗余内存在某个内存块故障时为系统提供一个故障转移的内存块。内存镜像将内存块拆分为一个镜像集。两种功能都在 BIOS 中启用或禁用,而无法通过 Windows 访问。要修改这些功能的设置,您可能必须参考系统用户手册或 OEM 网站。另外,您可能必须联系硬件供应商。

    例如,如果正在运行的系统安装了 4GB 的 RAM,随后又添加了另外 4GB 的 RAM,Windows 可能只识别出 4GB 或 6GB 的物理内存,而不是全部的 8GB。冗余内存功能或内存镜像功能可能在您未知的情况下就在新内存块上启用。这些症状类似于未将 /PAE 开关添加到 Boot.ini 文件时的症状。

  • 相关阅读:
    C++0x standard & features in VC10
    Win32 结构化异常处理(SEH)探秘
    What Every Programmer Should Know About Memory
    Memory leak detector(C++)
    NT's Asynchronous Procedure Call
    服务器应用程序不可用
    不安全代码只会在使用 /unsafe 编译的情况下出现
    关于“因为数据库正在使用,所以无法获得对数据库的独占访问权”的最终解决方案
    让 PowerDesigner 支持 SQLite!
    基于.Net的单点登录(SSO)解决方案
  • 原文地址:https://www.cnblogs.com/cuihongyu3503319/p/2194629.html
Copyright © 2020-2023  润新知