APLawrence.com -  Resources for Unix and Linux Systems, Bloggers and the self-employed

4GB ram problems sco osr5

© September 2005 (various authors)
From: Bela Lubkin <filbo@armory.com>
Subject: Re: Maximum memory...
Date: 21 Oct 2005 01:38:29 -0400
Message-ID: <200510202238.aa01781@deepthought.armory.com> 
References: <8sigl1dms13u8stqjolldot2e1clkphmkc@4ax.com>
<Iop0I6.3D2@stevedunn.ca> Stephen M. Dunn wrote: > In article <8sigl1dms13u8stqjolldot2e1clkphmkc@4ax.com> Jon Lapp <jonlapp@adelphia.net> 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<

Got something to add? Send me email.

(OLDER)    <- More Stuff -> (NEWER)    (NEWEST)   

Printer Friendly Version

-> 4GB ram problems SCO Unix osr5

Inexpensive and informative Apple related e-books:

Take Control of OS X Server

Photos: A Take Control Crash Course

Digital Sharing Crash Course

Take Control of Automating Your Mac

Are Your Bits Flipped?

Printer Friendly Version

Have you tried Searching this site?

This is a Unix/Linux resource website. It contains technical articles about Unix, Linux and general computing related subjects, opinion, news, help files, how-to's, tutorials and more.

Contact us

Printer Friendly Version

All of science is nothing more than the refinement of everyday thinking. (Albert Einstein)

Linux posts

Troubleshooting posts

This post tagged:




Unix/Linux Consultants

Skills Tests

Unix/Linux Book Reviews

My Unix/Linux Troubleshooting Book

This site runs on Linode

SCO Unix Sales, Support, & Service

Phone:  707-SCO-UNIX (707-726-8649Toll Free: 833-SCO-UNIX (833-726-8649)