找回密码
 立即注册
搜索
查看: 931|回复: 50

关于4G内存,32位/64位系统的小结(原创)

[复制链接]

718

主题

4719

回帖

5446

积分

网站编辑

积分
5446
发表于 2009-3-12 20:55:32 | 显示全部楼层 |阅读模式
最近坛子里讨论得比较多关于如何在32位操作系统下使用4G内存的问题,我断断续续回了一些帖子,感觉还是有很多童鞋不是很明白,所以在这里开个帖子,总结一下我所知道的一些东西,一方面让初接触的童鞋入入门,另一方面也算抛砖引玉,希望能引发进一步的探讨。我说得尽量浅显,有些地方不一定很精确,主要是想先表达个意思。如果有童鞋需要进一步的讨论,当然无任欢迎。
首先明确一点,大家的焦点问题是,如何在32位操作系统下,使用4G内存。
所谓32位操作系统,就是系统的寻址空间是2^32,也就是4G。
操作系统的寻址空间是个什么意思呢?通俗地说,就是操作系统最多只能管到那么大的地儿。村委会给俺们家分配了一亩三分地,那俺们就只有这一亩三分地,再多一丁点儿都不行了。
好,最多就这么大块地儿,谁要用呢?
操作系统自己要用。
所有在操作系统上运行的程序,什么杀毒啊,QQ啊,游戏啊,都要从这块地儿上分配。当然,同一块地不同的时间可能分配给不同的程序,但是,任何一个时间点来说,总的程序都不能超过4G。
如果只是操作系统和应用程序要用这4G,那就没有本文的问题了,就把这4G给它们用呗!
问题是,电脑的硬件,韧件,比如,BIOS在内存中的映射,显示卡显示的内容在内存中的映射,甚至声卡,硬盘,这些统统需要一段寻址空间,也都要用到这4G。windows预留了一块地址空间专门给这些东东,结果剩下给操作系统和程序的就不到4G了。这就是之所以在32位Xp下只能看到3.25G内存的原因。因为高端那一块儿(一般是700多MB)预留给领导了。
说到这里想必童鞋们已经自然明白了,如果是64位操作系统就没有这个问题,因为64位操作系统的寻址空间是2^64,也就是2^32个4G----那是多大?你慢慢算。
好了,既然领导扣下了那一大块,那不是没辙了?慢着,你明修栈道,我暗渡陈仓。不光是坛子里的童鞋们想要用尽4G内存,那些写操作系统的高手们也觉得这不是个事儿(可是他们早干嘛去了),所以想出了很多办法来修补,什么物理地址扩展(PAE),4GT,这些都是他们想出来的高招儿。这些东东原理都比较复杂,我就不深入讲了。但是要真正做到这些,有一些前提条件。
首先CPU要支持大于4G的寻址。这一点不是问题,早在386时代CPU就是32位的了。
其次是BIOS。BIOS是AMI等少数几家公司和intel, amd等合伙搞出来的,支持大于4GB也没问题,反正CPU厂商说啥,BIOS厂商就干啥。intel以前说“内存映射”,BIOS就有这个选项,现在这个内存映射都是开启的了,BIOS里面没有这个选项了。总之,BIOS也不是问题。
还有什么?内存控制芯片。intel俗称北桥。而AMD从athlon64开始把内存控制器集成在CPU里面了。这里比较遗憾的是,intel直到965芯片才支持大于4GB的寻址。我一台两年多前买的945芯片的dell,就只能支持4GB了。
看到这里,童鞋们看看自己的电脑是虾米芯片组,如果是945或者更早的,就别费劲折腾你的电脑了。
965支持大于4G的内存,怎么实现的呢?实际上靠的还是映射,简单来说就是同一段地址空间对应多块实际的内存,谁要用就给谁用,或者说,通过内存地址重映射把系统占用的4GB地址还给物理内存。具体实现是怎么回事咱们不关心,反正我们的目的是想让WINDOWS用到4GB内存。
最后,如果你的电脑硬件和BIOS都支持大于4G内存,那么恭喜你,你不用像我这样,有一条内存被浪费80%了。不过,我的建议是,不要为了想要用尽4GB内存而去安装64位系统,毕竟64位系统驱动和应用程序都比较少。买个电脑主要目的是为了用,不是为了看到系统里面显示4GB。你为了用尽4GB内存而去装个找个驱动都要费半天劲儿的系统,然后你看着空荡荡的4G内存傻笑啊?
原创急就,大家多多跟贴讨论支持,加精,置顶,无比欢迎,哈哈!
在32位系统下,比较好的用尽4GB内存的方法是使用ramdisk。这个我不多说,大家翻一下坛子里其他相关帖子,或者有兴趣的话,跟贴再继续讨论也可以。

[ 本帖最后由 olive 于 2009-3-13 10:36 编辑 ]

评分

参与人数 1金钱 +15 收起 理由
excel + 15 原创内容

查看全部评分

下面这句话是真的
上面那句话是假的

59

主题

938

回帖

1366

积分

金牌会员

自说自话

积分
1366
发表于 2009-3-12 21:18:30 | 显示全部楼层
看了以后感觉比原来明白多了。
回复

使用道具 举报

0

主题

14

回帖

18

积分

新手上路

积分
18
发表于 2009-3-12 21:27:45 | 显示全部楼层
看了之后明白了不少!谢谢!
回复

使用道具 举报

39

主题

1282

回帖

1777

积分

金牌会员

积分
1777
发表于 2009-3-12 21:30:36 | 显示全部楼层
写得不错哦,有很多很形象的比喻。
虽然我也不太懂,但是看着觉得挺好。
回复

使用道具 举报

发表于 2009-3-13 00:20:04 | 显示全部楼层
装个windows2003就可以了
回复

使用道具 举报

86

主题

1420

回帖

1988

积分

金牌会员

积分
1988
发表于 2009-3-13 01:06:21 | 显示全部楼层
linux 系统 呢?
回复

使用道具 举报

41

主题

1221

回帖

1672

积分

金牌会员

积分
1672
发表于 2009-3-13 08:43:56 | 显示全部楼层
解释的很清楚,终于明白了这个问题的所谓,其实老实说,哪怕只认3.25G也是大大的够用了,很多时候都只是心理作怪而已。
月落烏啼霜滿天,江楓漁火對愁眠,姑蘇城外寒山寺,夜半鐘聲到客船!(楓橋夜泊)
回复

使用道具 举报

718

主题

4719

回帖

5446

积分

网站编辑

积分
5446
 楼主| 发表于 2009-3-13 09:34:55 | 显示全部楼层
我现在常用的三部电脑,都是dell,一部是06年中买的,945的芯片,没办法用尽4G了;一部是07年的,Q35芯片,还有一部笔记本,PM45的芯片,后两部都利用RAMDISK把4G用完了。
下面这句话是真的
上面那句话是假的
回复

使用道具 举报

718

主题

4719

回帖

5446

积分

网站编辑

积分
5446
 楼主| 发表于 2009-3-13 10:44:17 | 显示全部楼层
原帖由 清风居士 于 2009-3-13 00:20 发表
装个windows2003就可以了

要求地址寄存器大于32位。
下面这句话是真的
上面那句话是假的
回复

使用道具 举报

718

主题

4719

回帖

5446

积分

网站编辑

积分
5446
 楼主| 发表于 2009-3-13 10:45:53 | 显示全部楼层
原帖由 Appz 于 2009-3-13 01:06 发表
linux 系统 呢?

比较新的linux版本现在都默认开启PAE了。
下面这句话是真的
上面那句话是假的
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|海浩社区

GMT+8, 2025-9-14 17:18 , Processed in 0.096403 second(s), 22 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表