问题描述
我有一台安装了4GB RAM的华硕G50vt-x5笔记本电脑。但是Ubuntu 10.10只显示3GB的RAM。为什么它只显示3GB的RAM而不是完整的4GB? free
命令的输出是:
neal@ubuntu:~$ free
total used free shared buffers cached
Mem: 3095668 2972784 122884 0 747996 1590044
-/+ buffers/cache: 634744 2460924
Swap: 0 0 0
最佳解决方法
如果您安装了32位版本的Ubuntu,它将无法识别超过4GB的内存。您需要安装64位版本的Ubuntu才能让系统识别超过4GB的内存。
也可以看看:
请注意,现在的标准是用于构建Ubuntu映像并随附启用PAE的内核,该内核允许在32位系统上使用超过4GB的RAM。但是,这需要在系统中使用PAE-capable处理器。如果你的系统已经足够老了,那么PAE内核将无法工作,并且上述4GB内存限制的限制仍将存在。
次佳解决方法
您可以安装64位版本,但如果您不想这样做,可以在32位版本上安装启用PAE(物理地址扩展)的内核。
在10.04之后,如果Ubuntu检测到超过3 Gb的内存,它会自动安装启用PAE的内核。但是ubuntu wiki说:
In the case of the liveCD, a working network connection is required, since the PAE enabled kernel packages are not present on the CD.
所以我猜你在没有互联网连接的情况下使用CD安装了Ubuntu。
试试这个:
sudo apt-get安装linux-generic-pae linux-headers-generic-pae
物理地址扩展是一种允许32位操作系统使用高达64 Gb内存(RAM)的技术,这通常通过切换到64位系统来实现。 PAE目前在大多数计算机上都受支持,如果它还没有在Ubuntu中启用它,这是一个简单的过程。要检查您的处理器是否支持PAE,请尝试
grep --color=always -i PAE /proc/cpuinfo
通常,如果您有4 Gb或更多内存和/或想要充分利用64位架构(参见32bit_and_64bit),建议使用正确的64位系统,但在某些情况下,完全切换到64位不是理想的,使用PAE可能是一个可行的妥协。
应该注意,没有虚拟地址扩展。即,应用程序仍然获得相同数量的虚拟内存,因为虚拟地址仍为32位,而物理地址为36位。因此,PAE完全不等同于64位系统。
第三种解决方法
打开/var /log /dmesg /dmesg并查找开头附近的部分,如下所示:
[ 0.000000] BIOS-provided physical RAM map:
[ 0.000000] BIOS-e820: 0000000000000000 - 000000000009d800 (usable)
[ 0.000000] BIOS-e820: 000000000009d800 - 00000000000a0000 (reserved)
[ 0.000000] BIOS-e820: 00000000000e0000 - 0000000000100000 (reserved)
发布该部分进行详细分析。还要再寻找另一条线,如下所示:
[ 0.000000] Memory: 4019820k/4972544k available (5694k kernel code, 798616k absent, 154108k reserved, 2514k data, 944k init)
通常情况下,视频内存占用3-4 gb区域的空间。在某些系统上,内存只是丢失了。在其他情况下,它可以重新映射,通常高于4gb标记,您需要pae或64bit内核才能访问。