Results 1 to 6 of 6

Thread: 4GB in 32bit?

  1. #1
    Join Date
    Jul 2008
    Location
    /home/lzfy
    Posts
    7

    Default 4GB in 32bit?

    Hi there. Yesterday I downloaded and installed openSUSE11 on my pc with an Intel Q6600. I'm sure that it is the 32 bit version. But when I type free -m in konsole, I see this:
    lzfy@linux-sh86:~/Desktop> free the fish
    total used free shared buffers cached
    Mem: 4149256 3976444 172812 0 84956 3236792
    -/+ buffers/cache: 654696 3494560
    Swap: 979956 116 979840

    Now correct me if I'm wrong, but isn't it true that a 32 bit system can't use more then 3,2GB? Can someone explain this?

    PS. why is the swap used with 4gig ram? I have only a few apps open.

    Thanks.

  2. #2

    Default Re: 4GB in 32bit?

    I THINK its a case that 32bit can address 4gb TOTAL! But factor in the space a gfx card needs etc, and thats what left spacewise for your RAM.

  3. #3

    Default Re: 4GB in 32bit?

    That's because you are using the kernel-pae, as it names says it has PAE enabled.
    It is abhorrent the spiritual greed of those that knowing something, do not seek the transfer of such knowledge.

    Miguel de Unamuno - Writer (1864-1936)

  4. #4
    Join Date
    Jun 2008
    Location
    Rome, Italy
    Posts
    248

    Default Re: 4GB in 32bit?

    32 bits cpu use an address bus 32 bits wide. So they can address 2^32=4294967296 bytes. This is addressable space. The available one can be less due to peripheral mappings

  5. #5
    Join Date
    Jun 2008
    Location
    UTC+10
    Posts
    9,683
    Blog Entries
    4

    Default Re: 4GB in 32bit?

    Actually it's a bit more complex than that. IA32 processors actually can address more than 4GB, using you guessed it, PAE. But not all IA32 processors have it, and anyway those that don't you wouldn't want to run with a lot of memory anyway. It seems that the Linux kernel has it enabled in such a way that if the CPU doesn't support PAE, it doesn't use it. So having a -pae kernel name doesn't mean your CPU supports PAE, it's a one-size fits all kernel.

    However, not just the CPU has to support > 32 bits of address, the supporting chips have to too. So sometimes you may have a PAE CPU and a PAE kernel but the mobo lets you down because you can't address > 4GB on that mobo.

    So the OP might be lucky, he might have a PAE CPU and a capable mobo that allows > 4GB to be addressed, so it doesn't matter that some space in the lowest 4GB is taken up by devices, PCI space, etc, it gets relocated up. One would have to look at the boot messages, in particular the memory sizing chatter to see if that really is the case.

  6. #6
    Join Date
    Jul 2008
    Location
    /home/lzfy
    Posts
    7

    Default Re: 4GB in 32bit?

    Thanks for the explanation. I found it strange because Ubuntu didn't see all my ram. But now I know why. Also wikipedia was very useful about this

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •