windows32位系统的最高内存使用值是4G,显示使用值不超过3.5G。也就是说,即使物理内存卡的容量累计超过了4G,系统也无法利用超过4G部分。
PAE,物理地址扩展,是基于x86 的服务器的一种功能,它使运行 Windows Server 2003, Enterprise Edition 和 Windows Server 2003,Datacenter Edition 的计算机可以支持4GB 以上物理内存。物理地址扩展 (PAE) 允许将最多64GB 的物理内存用作常规的4 KB 页面,并扩展内核能使用的位数以将物理内存地址从32扩展到36。
Windows 7 下开启PAE\3GB
PAE
由于Windows 7中取消了原来的Boot引导方式,因而我们要在CMD下进行修改。
1.打开CMD:开始→运行→输入CMD,确定。
2. 在cmd中输入: bcdedit /set pae forceenable 这里的bceddit是关于命令行的启动配置编辑器。
使用上面的命令,你能启用物理地址扩展(PAE),让支持的内存大于4GB;
3GB
因为32位windows默认应用程序只能使用2G内存,剩下的都保留给系统内核了,所以还要开启3GB
在cmd中输入: bcdedit /set increaseuserva 3072 来使得windows把2G以上的内存也分配给应用
程序!
Windows 7 下关闭PAE\3GB
进入CMD后输入:
PAE: bcdedit /set pae forcedisable
3GB: bcdedit /deletevalue IncreaseUserVa
注意
· 要执行该过程,您必须是本地计算机上 Administrators 组的成员,或者您必须被委派了适当的权限。如果计算机已加入某个域,则 Domain Admins 组的成员可能会执行该过程。作为安全性最佳操作,请考虑使用“运行方式”执行此过程。
接下来添加系统的启动项:
实现方法:通过windows脚本命令进行。
脚本建立方法和其他类似,新建文本文档,在文本文档中输入如下内容:
@ECHO off
:: This script is come whit "ReadyFor4GB"
:: Function: Add a new entry to BCD, and set it boot from kernel ntkr128g.exe
:: last modified: 2009.04.21
:: Autohr: deepxw
:: //
:_Menu
CLS
ECHO This script is come with "ReadyFor4GB".
ECHO Autohr: deepxw
ECHO Blog: http://deepxw.blogspot.com (English)
ECHO http://deepxw.lingd.net (Chinese)
ECHO.
ECHO #----------------------------------------------------------------------#
ECHO # 添加启动项至开机菜单,并设置该启动项从新内核 ntkr128g.exe 启动。 #
ECHO # 请以右键点本脚本文件,选择以管理员身份运行!! #
ECHO #----------------------------------------------------------------------#
ECHO # Add a new entry to BCD, and set it boot from kernel ntkr128g.exe #
ECHO # Please right click this cmd, and select run as administrator!! #
ECHO #----------------------------------------------------------------------#
ECHO.
set choice=
set /p choice=[Press "Y" to apply, Press "Q" to quit.]?
if not '%choice%'=='' set choice=%choice:~0,1%
if '%choice%'=='y' goto _INSTALL
if '%choice%'=='Y' goto _INSTALL
if '%choice%'=='q' goto _End
if '%choice%'=='Q' goto _End
ECHO "%choice%" is not valid please try again
ECHO.
goto _Menu
:: //
:_Install
:: if not exist %SystemRoot%\ntkr128g.exe goto _NotFoundNewKernel
set OS_NAME=
ver > osinfo.txt
type osinfo.txt | find "Microsoft" > nul && goto _SuccessGetOsName
goto _SetDefaultOsName
:_SetDefaultOsName
set OS_NAME=Windows 32-bit (x86)
goto :SetEntryDesc
:: / Get OS info success, come on ///
:_SuccessGetOsName
set num=0
setlocal enabledelayedexpansion
for,/f,"delims=",%%i, In (osinfo.txt) Do (
set /a num+=1
if !num! equ 1 set OS_NAME=%%i
)
:SetEntryDesc
ECHO.
ECHO OK, OS name is : %OS_NAME%
ECHO.
set MY_ENTRY_DESC="%OS_NAME% [128GB with ntkr128g.exe]"
del osinfo.txt > nul
:: //
bcdedit | find "128GB" > nul && goto _FoundOldEntry
bcdedit | find "ntkr128g.exe" > nul && goto _FoundOldEntry
ECHO.
ECHO Create a new entry from current...
bcdedit -copy {current} /d %MY_ENTRY_DESC% > mybcdguid.txt
type mybcdguid.txt | find "{" > nul && goto _SuccessCreat
goto _FailedCopy
:: / Create new entry success, come on ///
:_SuccessCreat
set ENTRY_GUID=
for,/f,"tokens=2 delims={",%%i,In (mybcdguid.txt) Do (
set ENTRY_GUID_START=%%i
)
for,/f,"tokens=1 delims=}",%%i,In ("%ENTRY_GUID_START%") Do (
set ENTRY_GUID={%%i}
)
ECHO.
ECHO OK, New entry GUID is : %ENTRY_GUID%
ECHO.
bcdedit /set %ENTRY_GUID% testsigning on
bcdedit /set %ENTRY_GUID% pae forceenable
bcdedit /set %ENTRY_GUID% kernel ntkr128g.exe
:: 以下可选
bcdedit -timeout 12
bcdedit -displayorder %ENTRY_GUID% -addfirst
REM bcdedit -default %ENTRY_GUID%
REM del mybcdguid.txt > nul
goto _End
:: //
:_NotFoundNewKernel
ECHO.
ECHO 没有发现新内核文件 ntkr128g.exe 。
ECHO Not found the new kernel file [ntkr128g.exe].
goto _End
:: //
:_FoundOldEntry
ECHO.
ECHO 启动项已经存在,无需再次添加。
ECHO Found old entry in boot menu, no need to do it again.
goto _End
:: //
:_FailedCopy
ECHO.
ECHO 复制、创建新启动菜单失败!,请检查权限,以管理员身份运行本脚本。
ECHO Fail to Create boot menu. Please as this script as administrator!
goto _End
:: //
:_End
ECHO.
pause
保存后----》将文档的扩展名更改为.cmd
在windows下执行该脚本成功后,打开我的电脑的属性----高级系统涉资----高级----启动和故障恢复
发现多出一个启动项,标准说明内存可以达到128G,不用犹豫选择该启动项,确认后,重新启动电脑,发现内存的4G限制没有了。
同时,发现系统的桌面有一个水印标志,不要紧张,在网络上下载“去除水印工具”,只有9k,运行后,系统提示重新启动,完成后就一切ok了。