|
原帖由 WL稻草人 于 2008-1-7 16:50 发表 ![]()
6 W- n7 \2 X+ S( l7 ~* e0 I$ J4 I% H( K" V# V: I1 o
Z# z2 j9 }/ _
指教不敢当,就是想请您把,什么叫32位系统,什么叫64位系统,为什么有这样区别,这个计算机基础理论知识弄清楚。。
0 }5 `, ?) d" }" x最后如果您想问为什么一些32位系统能认到4G的内存,您还可以去研究一下“PAE-物理地址扩展” ... 6 t9 Z% a2 ~! K# d" ^6 R
& E+ e. o7 Y' I4 D$ K/ W4 t. s9 h谢谢。。。在您的督促下我不得不去在网上查了一些资料,按下头来看了看。。7 A: L q! m* I6 ?
* Y2 [' {+ f2 E8 v1 }/ A: _: I# H
* ]( E% X( e. c7 m6 Y7 ^( fx86的32架构允许的最大内存寻址空间为4GB。Intel Physical Address Extension(PAE)是36位内存寻址模式,允许32系统寻址能力超过4GB。5 y Y7 s6 l, k+ l) Z) E9 I& J) E6 ?
PAE需要适当的硬件和操作系统支持。处理器为Intel Pentium Pro以上,操作系统支持Windows NT 4.0企业版,Windows 2000高级服务器版和数据中心版,以及Windows Server 2003企业版和数据中心版。2 ?+ q4 J# A6 q+ Z+ G
Windows使用PAE的4KB页面映射64GB物理内存到32位(4GB)虚拟地址空间。Windows 2000和Windows Server 2003中允许PAE的方式是在BOOT.INI中加/PAE开关。 " w$ {; y g) ?, d+ {
; C1 N* N ~4 [: w. O. M; e/ y5 Y
8 y8 a2 q! q6 j" U0 @) q$ y% Z操作系统在32bit x86平台上最大寻址空间只有4GB,如果要使用大于4GB的内存,就必须使用Intel的PAE(物理地址扩展)模式。在Windows NT平台实现PAE只需要对boot.ini加上/pae即可。而对于RHEL5,缺省安装模式下是不允许检测超过4GB内存,所以我们需要在内核安装完毕后再安装kernel-PAE套件。/ F- `* Q0 B1 s7 A: \
8 ?6 \3 t1 Q& x, ^( w0 ]
x86 平台的硬件支持两级页表,Intel Pentium pro以上的型号均支持PAE和三级页表,使得系统最大寻址达到36位,就是64GB的内存。但是系统进程运行时使用的永远是虚拟地址,在32位字长的 i386机器上,一个进程永远无法访问超出4G的字节。kernel只能通过拼凑的方式计算出大于4G的内存地址。: j- ]( H( o% H, T6 u% N- w4 H
' c8 n8 _. w& H+ v5 @
5 I S' ?; B! y
I' @6 h1 W5 j; I4 A那就我自己的理解,32位的OS一样可以支持到4G及以上的内存,例如WINDOWS XP,只要手动强制打开PAE就可以了,不知道您是不是也这样理解? |
|