这个w7系统64位纯净版可以升级w7 64位的吗,因为6g的内存不能充分使用

当前位置:
→ Win 7 64位系统无法完全使用6G内存怎么办?
Win 7 64位系统无法完全使用6G内存怎么办?[多图]
字体大小:【 |
SL410笔记本,原配的海力士DDR3 2G内存,加了京东的一根金士顿 4G内存,结果它是6G内存,4.96G可用!系统是w7旗舰版64位的,每次重装后都显示6G的,驱动和补丁打完,或者不知道哪次重启就变4.96了。
原因很简单,部分内存被系统内核分配和硬件系统了,不再能被应用程序自由调用了,通过系统设置能够释放还原出来部分内存空间的,但是不能全部释放,原因不是很清晰,可以致电微软客服看看什么回复,打800电话是免费的。
下面的截图是我的系统通过释放还原回来大部分内存的情况,同样是6GB的内存,再下面是释放还原被硬件占用的内存的方法:
进入系统配置界面& & 首先点击Win7“开始”菜单,在搜索框中输入“msconfig”,随后上方的搜索结果会显示出“msconfg”的图标,直接点击进入。直接在搜索框输入上方会显示出对应的图标注意选择Win7系统的启动配置& & 现在我们看到的“系统配置”界面,选择“引导”一栏,点击其中的“高级选项”。注意,如果你的系统中安装了多个系统,上方可能会有其他系统的启动配置。就需要选择正确的“Windows7”这个系统来配置。点击“高级选项”释放被系统“占据”的内容& & 这里有个“最大内存”项,默认是灰色的,现在我们就要点击它前面的小框,将它开启。之后点击“确定”按钮,并且重新启动系统,再次查看内存,就能发现所有的内存都被释放出来,系统的速度肯定会有明显改善。后使用快捷导航没有帐号?
查看: 33836|回复: 38
6G内存,为什么系统可用只有4.9G
该用户从未签到
& & 机器是去年入的3820ZG,今年加了条4G内存,64位WIN7。&&系统能识别6G内存,可是为什么可用内存只有4.93G呢,剩下的到哪去了?& &HD5470的显卡,虽然显存只有512,总不会是显卡挪过去用了吧??
360截图-666451.jpg (20.32 KB, 下载次数: 24)
15:18 上传
该用户从未签到
高手呢&&高手呢
TA的每日心情大哭 10:40
本帖最后由 阿财 于
16:13 编辑
这是一个历史遗留问题导致新旧BIOS寻址 技术问题,
 PCI Memory Address Range这一部分包含了各种I/O设备,系统总线等部分所需的地址,上面的图中我们可以看到ICH10的磁盘控制器、PCIE(显卡)等该系统现有设备所占据的地址范围。这些I/O设备地址被通过一种叫做MMIO的技术使得CPU可以高速便捷的访问它们。根据设备状况的不同,PCI Memory Address Range的大小也会发生变化,这都一切取决于硬件本身及硬件驱动的需求,例如芯片组、显卡等等。
  小贴士:MMIO全称是Memory-mapped I/O,是一种在CPU和外围设备之间执行输入输出功能的途径。MMIO简单说就是将各种外围设备的控制寄存器映射到物理内存地址上,CPU可以像访问内存一样方便的访问I/O设备,而无需重复再三的去调用IO控制函数。CPU会将自己的寻址空间预留一块用于I/O设备,这也意味着内存地址被占用了一块,但并不会真的占用物理内存存储空间。
  没有板载显卡的话,PCI Memory Address Range基本可以与MMIO区域划等号。MMIO会占据TOLUD至4GB的地址空间,不过这只是将物理地址分派给各种外围设备,而不会真的占用物理内存。上图中的系统只有2GB内存,那么TOLUD的值就是2GB(7FFFFFFFh),PCI Memory Address Range也就自动占据了h至FFFFFFFFh这剩下2GB的地址空间。而且很明显,它不占用内存,因为后面2GB根本没有内存。MMIO区域所占据的地址实际上对应的物理设备是外围设备的寄存器之类,相对于这些设备的寄存器来说,MMIO是一块逻辑地址区间。
 上图展示了P45芯片组(Intel芯片组)的典型MMIO分配,里面包含了大量系统所必须的内容:High BIOS、DMI总线、FSB中断、APIC、PCIE等多方面的设备地址。这些都是一款Intel芯片组正常运行所必须的东东,尤其是DMI总线(连接Intel芯片组南北桥)管理着主板上的大多数IO设备,它们自然必须在任何时候都享受着MMIO所分配的地址,而这个地址范围通常就是0.75GB。
  DFI的X58主板给出了一个很有意思的选项,名叫Memory LowGap。这个选项可以让用户自定义选择TOLUD的地址,或者说自定义选择MMIO区域的大小。该选项的范围为1024M至3072M,即MMIO区域的大小为1024MB-3072MB。可能是因为需要映射到物理地址的寄存器数量很大,一些顶级显卡的驱动程序会要求比较大的MMIO区域支持,例如NVIDIA的GTX280、GTX295之类。4GB内存用户甚至可以发现,当更换显卡后,设备管理器显示的物理内存大小竟然也会发生变化,甚至会降低到3GB以下的数值,这就是因为某些高阶显卡申请了更大的MMIO,使得内存在4GB以下的地址空间被进一步压缩,我们可以在Windows的设备管理器内看到地址分布的变化。
点击在新窗口看大图
  当我们把DFI X58主板BIOS中的Memory LowGap调至一个巨额的数值之后,上图中的景象就出现了。由于MMIO的进一步扩张,我们发现连2GB的内存竟然也被侵蚀了好大一块,h(1280MB)之后的地址就已经开始被MMIO占据。4GB地址就像是一辆拥挤的公共汽车,空间总共就那么大,PCI Memory Address Range挤上去了、满载了,内存自然就上不去了。难道内存就这么白费了?先不用着急,继续向下看,我们会把内存找回来的。
让我们再来温习一下这张图,并再次明确一件事情:PCI Memory Address Range中的MMIO占去的仅仅是物理地址,并不会去占据内存空间。每个内存颗粒中每个可以存储1bit的晶体管本身并不会拥有地址,所有的地址都是由系统进行分配的。这一切的地址排布与操作系统是多少位并无太多关联,而操作系统方面对MMIO大小的影响主要来自于系统自身驱动以及设备驱动程序等方面的要求。因此我们可以发现在一些默认功能开启较少,硬件驱动地址开销较少的系统中(如Win Sever),任务管理器显示的物理内存会大一些(例如3.6GB)。因为此时的MMIO相对较小。从根本上来说,这是芯片组来自于兼容性方面的考量,必须让MMIO位于4GB以内。
  由于兼容性的考量,即使使用了64bit操作系统和64bit处理器,MMIO仍然会被芯片组安置于4GB地址以内。MMIO必须占用这段地址空间,且MMIO有着比内存更高的优先级,物理内存又会老老实实的自然排布,这使得当安装了接近4GB或更多物理内存时,PCI Memory Address Range必然会与物理内存交叠,在整个物理内存地址中形成一个Memory Hole。
  小贴士:Memory Hole其实很好理解,就像上面的图中那样,Main Memory被分成了两段,而那段被占用的地址空间就像一个“洞”(Hole),所以称之为Hole。。。。。。上面图中PCI Memory Address Range就充当了这个Hole的角色,它并不占用内存存储空间,只是一个物理地址上的横亘,使得Hole的地址与内存地址发生了重叠。
点击在新窗口看大图
  芯片组设计师们自然有其他的考量去解决物理内存地址的分配问题,毕竟会白白浪费内存的芯片组是不讨人喜欢的。既然4GB以下地址如此紧张,我们为何不将物理内存分配到更高的地址空间去呢?于是,TOM、 TOUUD寄存器以及RECLAIMBASE、RECLAIMLIMIT寄存器诞生了。
TOM即“Top of Memory”,其描述的是系统上所安装的物理内存的总量。TOM寄存器值并不见得代表最高内存地址,因为MMIO的地址分配要优先于TOM寄存器,内存地址中基本都会存在一些hole(PCI Memory Address Range),所以TOM寄存器的地址最终还需要加上这些hole的地址,从而会更高一些。TOM寄存器之下将会有1-64MB内存被Manageability Engine占用(图中的EP-UMA),这是确确实实被占有的内存。
  TOUUD即“Top of Upper Usable DRAM”,其描述的是可设定地址的物理内存总量。TOLUD寄存器会始终在4GB内存地址以下工作,但我们知道现在的主流芯片组都能安装高达16GB的内存,TOUUD就可以解决这个问题。TOUUD会在4GB以上地址定义物理内存范围,这个范围会从4GB到可用物理内存顶端(TOM),经过鉴定的物理内存可以直接被使用。这并不受操作系统的影响,而是芯片组的工作,也就是至少BIOS肯定是能够接受16GB内存的。
  OK,现在我们要回收那块被“占用”的内存地址了。MMIO占据了TOLUD到4GB的地址空间,所以芯片组需要去回收这段地址重叠的物理内存。物理内存并不能直接搬家,芯片组会开启一个remap window(Main Memory Reclaim Address Range),其底端地址由RECLAIMBASE寄存器定义,顶端地址由RECLAIMLIMIT寄存器定义,总大小会与被MMIO占用的内存地址范围完全相等。然后会将原本将落在TOLUD至4GB地址之间的物理内存回收,重映射到4GB以上EP Stolen Base之下的地址空间中,属于remap window中的地址都会去对应由TOLUD至4GB的这段物理内存。
  注:由于笔者目前不确定芯片组的Memory Reclaim功能是否可以通过主板BIOS开关,所以某些品牌主板BIOS中的Memory (Hole) Remapping选项可能控制了Memory Reclaim功能的开关。
  OK,现在我们要回收那块被“占用”的内存地址了。MMIO占据了TOLUD到4GB的地址空间,所以芯片组需要去回收这段地址重叠的物理内存。物理内存并不能直接搬家,芯片组会开启一个remap window(Main Memory Reclaim Address Range),其底端地址由RECLAIMBASE寄存器定义,顶端地址由RECLAIMLIMIT寄存器定义,总大小会与被MMIO占用的内存地址范围完全相等。然后会将原本将落在TOLUD至4GB地址之间的物理内存回收,重映射到4GB以上EP Stolen Base之下的地址空间中,属于remap window中的地址都会去对应由TOLUD至4GB的这段物理内存。
  在主板BIOS中的Memory Remapping(也有的叫Memory Hole Remapping)实际上控制的就是芯片组(内存控制器)的Memory Reclaim,只有当开启这个选项的时候芯片组才会回收与MMIO交叠的内存。某些主板,尤其是采用award bios的主板上可能没有这个选项(例如技嘉主板),但事实上该选项其实都默认开启了,因为此功能任何时候都完全没有关闭的需要。
  尽管芯片组的Memory Reclaim功能为我们回收了内存,但我们的任务管理器现在还不能显示它们,因为我们的物理地址只有4GB,MMIO会占据一部分地址。被置于4GB以上地址区间的内存显然早已超出了32bit寻址范围。不过我们有办法去利用那些位于4GB地址以上的内存。想知道究竟?请继续向后看。
在主板BIOS中的Memory Remapping(也有的叫Memory Hole Remapping)实际上控制的就是芯片组(内存控制器)的Memory Reclaim,只有当开启这个选项的时候芯片组才会回收与MMIO交叠的内存。某些主板,尤其是采用award bios的主板上可能没有这个选项(例如技嘉主板),但事实上该选项其实都默认开启了,因为此功能任何时候都完全没有关闭的需要。
注意看这里,是的,我目前为止用过的超过4G内存的笔记本,戴尔 Inspiron 13R、联想 Ideapad Y480M 机器BIOS都没有这个选项,但是隐含的 Memory Remapping 都开启了,只有一少部分内存没有被Remapping,丢失掉了无法使用。大概是Y480 98M,Inspiron 13R 140M容量。
所以你检查一下你的机器是不是BIOS里面有这个选项未开启,如果不是,那就需要手动修改BIOS DMI数据信息来开启了,我也没把握。
顺带说一下,我见过一个非常离奇的内存条品牌种类影响PCI Hole大小的问题, Acer AS7750G 机器,原配2*2G=4G内存,但是原配的三星内存明显不兼容,导致PCI Hole达2G大小,可用内存只有2G,被我轻轻的换成2G南亚之后就正常了,所以楼主有内存替换的话,可用替换条内存试试。
TA的每日心情开心 21:05
阿财,你太人才了。。。。
该用户从未签到
阿财 发表于
http://en.wikipedia.org/wiki/PCI_hole
这是一个历史遗留问题导致新旧BIOS寻址 技术问题,
& &额&&哥&&说实在& &没看懂
该用户从未签到
阿财 发表于
http://en.wikipedia.org/wiki/PCI_hole
这是一个历史遗留问题导致新旧BIOS寻址 技术问题,
能简单说说吗
头像被屏蔽
该用户从未签到
提示: 作者被禁止或删除 内容自动屏蔽
该用户从未签到
bysheng 发表于
能简单说说吗
超版都出来了& &哈哈
TA的每日心情大哭 10:40
bysheng 发表于
能简单说说吗
简单的说:
就是在20年前设计PCI总线的是时候,Intel 认为 2G以上内存地址“不可能”会被用到,于是就拿来做PCI设备主要是显卡的显存地址映射,这样一来就能跟读写内存一样访问显存,改写内存的MOV汇编指令就能直接改写显示内容,当年还有一个很时髦的称呼叫 “直接写屏”
事实证明,这个想法跟比尔盖茨说 640K内存足够PC使用一样可笑,现在的显存也动辄1G 2G,这么庞大的显存,占用掉内存地址在(7FFFFFFFh-FFFFFFFFh)之间的地址,导致4G线性寻址之内有500M-1500M的内存(这个大小不一定,看你机器配置了多少PCI设备,PCI设备越多,内存地址占用掉的也就越多)无法正常通过32位地址读写访问到。
于是在开发64位处理器和36位地址总线时候,Intel 和微软分别开发出来PAE寻址和Memory Remapping技术。也就是说,(7FFFFFFFh-FFFFFFFFh)地址是PCI设备/显存读写端口占用了对吧,那么机器BIOS就记下了,然后把原本应该在这个地址的内存“映射”到FFFFFFFFh以上(也就是4G以上的超32位的高位地址去),这样就可以不浪费这些物理内存颗粒的容量来使用内存了。
而Windows 访问超越32位内存地址,就要依靠PAE——也就是32位还是64位,默认开启PAE才能支持4G以上内存的原因。
处于某种未知原因,BIOS关闭或者没开启 Memory Remapping,内存控制器对内存条感觉不爽等原因,可能导致内存 Memory Remapping 失效。
所以设置BIOS或者换内存条一般可以解决这个问题。
感谢您的热心回复
该用户从未签到
阿财 发表于
简单的说:
就是在20年前设计PCI总线的是时候,Intel 认为 2G以上内存地址“不可能”会被用到,于是就 ...
晕死&&那得什么样的内存条才能用啊,加的还是同品牌的内存呢
TA的每日心情难过 19:12
本帖最后由 lsj188 于
19:37 编辑
楼上解释很清楚了
你自己去百度的话也能找到答案&&我的6G有5.78G可用
该用户从未签到
我的电脑系统我重装了一次,但是连接不起网了
该用户从未签到
检查集成显卡内存分配部分看看
该用户从未签到
楼上写的很明白了,我也长见识了
该用户从未签到
有些机器的显卡会动态划分内存为自己的显存的.而且是根据内存大小来自动划分.
LZ看看桌面显卡属性,是不是一个是自带显存,一个是动态划分的显存.
该用户从未签到
我的4g尔必达+4g三星没问题,俩室友加内存时都出现了不可认的
该用户从未签到
bios里面有没有设置好?
该用户从未签到
bios恢复默认试试
该用户从未签到
集显用了部分咩?
该用户从未签到
分配给显存了!!!
17年8月精华宗师
17年8月精华大师
关注本友会
本友会微信公众号
VR微信公众号
benyouhui2012
Powered by鏌ョ湅: 17173|鍥炲?: 94
QQ鎵}

我要回帖

更多关于 64位系统6g内存够用吗 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信