truncatememory 和 removememory 不可同时使用
truncatememory 和 removememory 不可同时使用
truncatememory 和 removememory 不可同时使用
要验证二者的不同,需要每次都复原后验证,用bcdedit /deletevalue parameter_name复原,例如
bcdedit /deletevalue numproc
bcdedit /deletevalue truncatememory
bcdedit /deletevalue removememory
truncatememory 和 removememory 有个1GB的差异
这里举个大内存机器的例子,安装内存384G,默认状态下:为硬件保留1.3G(1382M),可用内存384-1.3=382.7G。
0x1500000000 是16进制84G
0x100000000 是16进制4G
307200是1024*300,307200MB即300GB
用bcdedit /set {default} truncatememory 0x100000000设置开机4G内存,进入系统后发现真正能被系统用到的物理内存1.7GB
用bcdedit /set {default} truncatememory 0x1500000000设置开机84G内存,进入系统后发现真正能被系统用到的物理内存81.7GB
用bcdedit /set {default} removememory 307200设置开机84G内存,进入系统后发现真正能被系统用到的物理内存82.7GB
有个1GB的差值,怎么回事?
用bcdedit /set {default} truncatememory 0x1500000000设置开机84G内存,发现能被系统用到的物理内存81.7GB
为硬件保留的内存是301GB 1.3GB=302.3GB,所以真正能被系统用到的物理内存是384-302.3=81.7GB
为硬件保留的内存是咋算的?默认为硬件保留的内存是系统自动处理的,这块深究不清楚,但通过truncatememory造成的为硬件保留内存还是可以搞清楚的。
从truncatememory 0x100000000(4G)开始,为硬件保留的整GB的内存有个 1GB的逻辑,即bcdedit /set {default} truncatememory 0x100000000 命令设置开机4G内存,为硬件保留的整GB的内存是【安装内存-设置内存的差值】再加1G,对这台384G内存的机器来说,为硬件保留的整GB内存就是384-4 1=381G,外加默认状态为硬件保留的1.3G,总的为硬件保留的内存就是382.3G,此时真正能被系统用到的物理内存是1.7G。
307200MB即300GB,384-300=84,用bcdedit /set {default} removememory 307200设置开机84G内存,发现能被系统用到的物理内存82.7GB
为硬件保留的内存是300GB 1.3GB=301.3GB,所以真正能被系统用到的物理内存是384-301.3=82.7GB
removememory 减掉的内存是精确的,removememory 307200即为硬件保留整300GB,外加默认状态为硬件保留的1.3G,总的为硬件保留的内存就是301.3G,此时真正能被系统用到的物理内存是82.7GB。