Maximum memory... - SCO

This is a discussion on Maximum memory... - SCO ; What is the maximum amount of RAM supported by Openserver 5.0.4, 5.0.5 and 5.0.6? TIA...

+ Reply to Thread
Results 1 to 3 of 3

Thread: Maximum memory...

  1. Maximum memory...

    What is the maximum amount of RAM supported by Openserver 5.0.4, 5.0.5
    and 5.0.6?

    TIA

  2. Re: Maximum memory...

    In article <8sigl1dms13u8stqjolldot2e1clkphmkc@4ax.com> Jon Lapp writes:
    $What is the maximum amount of RAM supported by Openserver 5.0.4, 5.0.5
    $and 5.0.6?

    According to the FAQ, 5.0.4 supported 4 GB. The documentation for
    5.0.5 and 5.0.7 also says 4 GB max, so it's reasonable to assume
    the same applies to 5.0.6.
    --
    Stephen M. Dunn
    >>>----------------> http://www.stevedunn.ca/ <----------------<<<

    ------------------------------------------------------------------
    Say hi to my cat -- http://www.stevedunn.ca/photos/toby/

  3. Re: Maximum memory...

    Stephen M. Dunn wrote:

    > In article <8sigl1dms13u8stqjolldot2e1clkphmkc@4ax.com> Jon Lapp writes:
    > $What is the maximum amount of RAM supported by Openserver 5.0.4, 5.0.5
    > $and 5.0.6?
    >
    > According to the FAQ, 5.0.4 supported 4 GB. The documentation for
    > 5.0.5 and 5.0.7 also says 4 GB max, so it's reasonable to assume
    > the same applies to 5.0.6.


    All of those releases will operate with and use 4GB of RAM. However,
    the number, severity and creativity of 4GB-related bugs decreases
    steadily with each successive release.

    All releases before 507 have a set of behaviors which, while not
    strictly related to 4GB, tends to cramp the system's style whenever you
    really _use_ a lot of RAM. The kernel distinguishes between several
    classes of memory usable for different purposes. There's "DMAABLE"
    memory, below 16MB, which is usable for ancient ISA direct memory access
    (DMA); "direct mapped", below 768MB, which is more convenient for
    certain kinds of device drivers; and "unmapped", which can only be used
    for user process memory and driver buffers operated by newer drivers
    that know how to use it.

    Notice that the "DMAABLE" area is tiny compared to the rest of the
    system. It comes out of a 16MB space, but certain parts of the kernel
    are firmly nailed down there to start with. It's under 10MB in a
    typical system. That's 1/400th of the memory in a 4GB system...

    Meanwhile, the kernel memory allocation functions _assume_ you require
    DMAABLE memory unless you tell them otherwise. This is for the benefit
    of ancient drivers which did in fact require DMAABLE, and had no idea
    that any other sort of memory existed. (The first release of the SCO
    Unix kernel supported a _maximum_ of 16MB RAM. Drivers which date back
    that far assume they can use any memory at all for ISA DMA.)

    Before OSR507, many many parts of the kernel were allocating DMAABLE
    memory "by mistake", that is, they called memory allocation functions
    without explicitly noting that they didn't need DMAABLE memory.

    As a result, the kernel could easily end up struggling to scrape
    together DMAABLE memory for purposes which really didn't need it.

    Between 506 and 507, the kernel was audited for such misuses of memory.
    507 is much cleaner about only using DMAABLE for the few purposes that
    need it (in modern systems, this is essentially only the legacy floppy
    driver!) There's no reverse bottleneck because a request that doesn't
    require DMAABLE memory can be satisfied with DMAABLE, if that's all the
    kernel has available.

    As I remember it, NFS was one of the worst culprits in this area.
    You're more likely to be OK with 4GB pre-507 if you don't use NFS.

    These problems only happen if you're really using the memory. If you
    have 4GB but your active memory footprint is only 600MB, you're fine.

    >Bela<


+ Reply to Thread