Software Spotlight: RAM Doublers
During the early to mid 90s, an odd kind of software tool emerged - the so-called "Ram Doublers". These programs made dubious claims that they would make your system effectively behave as if it had more RAM.
RAM prices were constantly dropping, yet software RAM requirements were constantly increasing, RAM was still not really cheap, and not all computers were easily upgradable.
There were already numerous other system speed-up and enhancement software tools on the market, such as DOS memory managers, disk caching products, disk optimizers, or disk compression. So why not software that somehow increases RAM in Windows?
Was there any truth to this? Well, yes, some. But how?
Most of the tricks simply addressed Windows 3.1's memory management shortcomings. During the development of Windows 3.0 and Windows 2.x/386 certain design decisions were made that were no longer optimal. The 3.x memory management was nowhere nearly as advanced as NT or Unix, and had to maintain compatibility with DOS and earlier Windows.
- Limits in internal GDI resources often prevented multiple Windows 3.x applications from running at the same time, even if there was plenty of RAM. Tricks to reclaim or stretch these resources would let more programs run.
- Windows 3.1 still loaded parts of drivers, DLLs, and applications in to 640k base memory just like Windows 1. When this fills up, no more programs can load. 3.1 can't avoid this, but some optimizations could improve the way this memory is used.
- Hard drives were still slow and small, while programs sometimes allocated large amounts of empty memory. Swapping such memory to disk could be very slow. Lightweight data compression could eliminate large empty areas and vastly speed up writing swap. Further speed improvements could be seen if information about these empty areas were, itself, kept in a small amount of non-swappable RAM.
- Generalized Windows algorithms regarding what should stay in memory, where things should be loaded, or what/when things should be swapped out could be improved.
- Various default Windows settings such as PageFileOverCommit= were no longer sufficient for newer applications, and could be tweaked.
The big caveat that should be obvious to any technical minded person, is that any speed or memory increase would be completely dependent on the specific applications, tasks, and configuration.
A program that needs to load and process 8MB of actual data will not be any happier if there is only 4MB of real RAM. At best you might be able to load some extra instances of Microsoft PowerPoint or Excel.
Further, it should have been fairly clear that such tools would be short lived. Microsoft implemented some similar optimizations directly in to Windows 95, and most of these issues were not at all applicable to Windows NT. On top of that, RAM continued to get cheaper, and hard drives got faster.
Never the less, these software tools sold in large quantities. Since everything these programs were supposed to do was under the hood, there was no easy way for normal users to gauge their effectiveness.
(The above UI is not even detecting my RAM amounts right, it's just making up numbers)
Things only started to go south when experts began discovering some of these applications did absolutely NOTHING.
Specifically, Syncronys SoftRAM 95 was proven to be completely broken, ineffective, and even contained bogus blocks of code. It was nothing more than a placebo product. This opened them up to a bunch of lawsuits. Ah, the days when people actually expected software to do something useful! Syncronys still continued to claim that at least their Windows 3.1 version "worked".
For a really in-depth breakdown of the Softram product, see: Inside Softram 95
At any rate, this kind of fudging really soured the market for this kind of product, although similar tools did continue on for a little while. Reportedly Helix Software's Hurricane 2.0 for Windows 95 (later McAfee Hurricane 98) delivered on most of the memory compression promises and even added an interesting trick of making use of unused video RAM.
And people still complain that 4 GIGABYTES of RAM is not enough!