V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
tntsec
V2EX  ›  Linux

道理我都懂,可是为什么内存 4G 只能识别 3G??

  •  
  •   tntsec · 2015-10-17 21:02:32 +08:00 · 8228 次点击
    这是一个创建于 3354 天前的主题,其中的信息可能已经有所发展或是发生改变。

    cat /etc/redhat-release
    CentOS release 6.6 (Final)Markdown

    free -m
    total used free shared buffers cached
    Mem: 3129

    uname -a
    Linux gov.jp 2.6.32-504.el6.x86_64 #1 SMP Wed Oct 15 04:27:16 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux

    图片不会传,看贴吧里的图片吧
    http://tieba.baidu.com/p/4107251680

    第 1 条附言  ·  2015-10-18 19:35:21 +08:00
    35 层解决了我的问题~
    找机房改了 BIOSok 了!!
    Mem: 3823





    感谢已发送 Reply 35
    salmon5 21 分钟前 ♥ 1
    http://serverfault.com/questions/81126/linux-x86-64-reports-3-2g-of-memory-instead-of-4g

    Go in the BIOS. There should be a Memory Remap Feature option (probably in the Advanced menu) which is disabled by default. Enable it and try again.
    37 条回复    2015-10-19 15:47:20 +08:00
    GPU
        1
    GPU  
       2015-10-17 21:11:06 +08:00
    道理真的懂?
    真懂应该不用问这问题把。
    aalska
        2
    aalska  
       2015-10-17 21:12:57 +08:00
    内核空间?
    phoneli
        3
    phoneli  
       2015-10-17 21:23:29 +08:00
    不正常。
    chevalier
        4
    chevalier  
       2015-10-17 21:30:30 +08:00
    因为要预留出一部分硬件地址空间,给总线上其他设备用
    jings
        5
    jings  
       2015-10-17 21:32:42 +08:00
    汪汪姐
    tntsec
        6
    tntsec  
    OP
       2015-10-17 21:34:12 +08:00
    @GPU 这要是 256M 占用或者 512 我连问都不问
    tntsec
        7
    tntsec  
    OP
       2015-10-17 21:34:28 +08:00
    @aalska 1G 也太大了
    tntsec
        8
    tntsec  
    OP
       2015-10-17 21:34:38 +08:00
    @chevalier 1G ?
    XiaoxiaoPu
        9
    XiaoxiaoPu  
       2015-10-17 21:37:48 +08:00 via Android
    64 位系统应该不会是地址空间不够用,难道是被显卡吃掉了?
    tntsec
        10
    tntsec  
    OP
       2015-10-17 21:39:22 +08:00
    @XiaoxiaoPu 机房的物理机,这玩意能用命令看吗
    XiaoxiaoPu
        11
    XiaoxiaoPu  
       2015-10-17 21:41:58 +08:00 via Android
    @tntsec 不清楚,我也是猜的。不过你可以把 dmesg 的结果贴出来看看。
    flynaj
        12
    flynaj  
       2015-10-17 21:46:21 +08:00 via Android
    这个主板老了,可能对 4g 内存支持不好
    ivenvd
        13
    ivenvd  
       2015-10-17 21:46:44 +08:00
    貌似集成显卡什么的可能会使用共享内存。
    nyanpath
        14
    nyanpath  
       2015-10-17 22:35:19 +08:00   ❤️ 1
    LGA1150
        15
    LGA1150  
       2015-10-17 22:45:50 +08:00
    32 位系统能使用的最大内存与主板芯片组有关,据我所知, NVIDIA nForce 430 芯片组可以到 3.25G , AMD A55 芯片组只能到 3.0G , Intel Z77 可以到 3.5G
    eirk2004
        16
    eirk2004  
       2015-10-17 23:32:41 +08:00
    @LGA1150 戏服合格。与 BIOS 和系统都有关系。当时有块华硕 P55 主板,可以利用到 3.5G ,同类主板一般是 3.25G 。内存超过 3G 以后,操作系统划走一部分资源给外围设备。最新的 CPU 集成了显卡,再占用 256MB 左右,实际可用不足 3G 。
    参考: https://en.wikipedia.org/wiki/3_GB_barrier
    SonicY
        17
    SonicY  
       2015-10-17 23:47:31 +08:00
    可能用的 g31 的集显?都有啥 pci 设备?
    Starduster
        18
    Starduster  
       2015-10-18 03:49:11 +08:00
    什么芯片组。。。。我 IBM T60 因为主板( 945M )不支持所以只读的出 3G 内存
    xierch
        19
    xierch  
       2015-10-18 04:23:46 +08:00
    可是鸽子为什么这么大?
    vibbow
        20
    vibbow  
       2015-10-18 05:26:29 +08:00
    才 1G ,我有台笔记本要占 1.25G 我会乱说?
    yxaaa123
        21
    yxaaa123  
       2015-10-18 08:26:40 +08:00
    1g 给显卡了
    wuxqing
        22
    wuxqing  
       2015-10-18 09:47:36 +08:00
    用 dmesg | grep reserved
    看看是不是被系统预留了
    VYSE
        23
    VYSE  
       2015-10-18 10:43:16 +08:00 via Android   ❤️ 1
    咋还有说 32 位的,人家就是 x86_64 ,楼主去 bios 里看看可用内存就知道。例如 INTEL 945 之前的 memory-mapped I/O 与物理内存冲突干脆直接 bios 强行封印物理内存,有的封印多有的封印少。
    gamexg
        24
    gamexg  
       2015-10-18 10:43:39 +08:00
    楼主的是 64 位系统...
    Ouyangan
        25
    Ouyangan  
       2015-10-18 10:49:50 +08:00
    核显占用了吧
    realpg
        26
    realpg  
       2015-10-18 11:23:59 +08:00   ❤️ 1
    换主板。
    你这主板就这样了,主板自身最高支持内存 4G ,且映射进系统时候会屏蔽不少内存。
    G31 这玩意还用着呢……
    chevalier
        27
    chevalier  
       2015-10-18 11:30:32 +08:00
    @tntsec 不到 1G , Windows 下面我看大概是 700M 左右
    clink8001
        28
    clink8001  
       2015-10-18 12:42:04 +08:00
    操作系统也是软件,他的存在本身是要占用一部分内存的,剩下的才是可用的内存。
    yksoft1
        29
    yksoft1  
       2015-10-18 15:48:59 +08:00
    其实在某些笔记本上还可能小于 3GB
    chenai00
        30
    chenai00  
       2015-10-18 16:18:48 +08:00
    真的是汪汪姐?😀😀😀
    tntsec
        31
    tntsec  
    OP
       2015-10-18 17:11:48 +08:00
    @wuxqing dmesg | grep reserved
    BIOS-e820: 000000000009f800 - 00000000000a0000 (reserved)
    BIOS-e820: 00000000000e6000 - 0000000000100000 (reserved)
    BIOS-e820: 00000000cf6f0000 - 00000000cf700000 (reserved)
    BIOS-e820: 00000000fed00000 - 00000000fed00400 (reserved)
    BIOS-e820: 00000000fee00000 - 00000000fee01000 (reserved)
    BIOS-e820: 00000000ff380000 - 0000000100000000 (reserved)
    e820 update range: 0000000000000000 - 0000000000010000 (usable) ==> (reserved)
    e820 update range: 0000000000000000 - 0000000000001000 (usable) ==> (reserved)
    #4 [000009f800 - 0000100000] BIOS reserved ==> [000009f800 - 0000100000]
    DMA zone: 103 pages reserved
    Memory: 3182444k/3398336k available (5336k kernel code, 452k absent, 215440k reserved, 7016k data, 1292k init)
    PCI: MCFG area at e0000000 reserved in ACPI motherboard resources
    system 00:01: [mem 0xfed14000-0xfed19fff] has been reserved
    system 00:07: [io 0x04d0-0x04d1] has been reserved
    system 00:07: [io 0x0800-0x087f] has been reserved
    system 00:07: [io 0x0480-0x04bf] has been reserved
    system 00:07: [io 0x0900-0x090f] has been reserved
    system 00:07: [mem 0xfed1c000-0xfed1ffff] has been reserved
    system 00:07: [mem 0xfed20000-0xfed8ffff] has been reserved
    system 00:09: [mem 0xffc00000-0xfff7ffff] has been reserved
    system 00:0a: [mem 0xfec00000-0xfec00fff] could not be reserved
    system 00:0a: [mem 0xfee00000-0xfee00fff] has been reserved
    system 00:0c: [io 0x0280-0x028f] has been reserved
    system 00:0c: [io 0x0290-0x029f] has been reserved
    system 00:0d: [mem 0xe0000000-0xefffffff] has been reserved
    system 00:0e: [mem 0x00000000-0x0009ffff] could not be reserved
    system 00:0e: [mem 0x000e0000-0x000fffff] could not be reserved
    system 00:0e: [mem 0x00100000-0xcf6fffff] could not be reserved
    tntsec
        32
    tntsec  
    OP
       2015-10-18 17:12:21 +08:00
    @xierch 哈哈哈,看来你懂这个梗~
    javaluo
        33
    javaluo  
       2015-10-18 18:15:06 +08:00 via Android
    @tntsec however 节点?
    tntsec
        34
    tntsec  
    OP
       2015-10-18 18:28:55 +08:00
    @javaluo 啥?不懂
    salmon5
        35
    salmon5  
       2015-10-18 19:13:19 +08:00   ❤️ 1
    http://serverfault.com/questions/81126/linux-x86-64-reports-3-2g-of-memory-instead-of-4g

    Go in the BIOS. There should be a Memory Remap Feature option (probably in the Advanced menu) which is disabled by default. Enable it and try again.
    tntsec
        36
    tntsec  
    OP
       2015-10-18 19:34:05 +08:00
    @salmon5
    Mem: 3823

    OK !!

    他还感谢我,啊哈哈

    You are welcome :) Thank you for showing us how to resolve that issue.
    lyz1990
        37
    lyz1990  
       2015-10-19 15:47:20 +08:00
    道理我都懂啊,可是我 16G 的内存在 64 位 Ubuntu 上也是显示的 15.4G  啊
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   967 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 19:12 · PVG 03:12 · LAX 11:12 · JFK 14:12
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.