11

I want to ask about the origins of the paradigm "unused RAM is wasted RAM". Can it be asked here?

1 Answer 1

11

I'd say no, for several reasons:

  • Asking about the origins of something is not related to solving a problem or conveying knowledge about computers. The actual topic you are asking about is who originated an idea or where did it come from. The fact that the idea itself is related to computers does not change the essence of the subject matter.

  • The specific idea you asked about seems fairly self-evident and obvious. Maybe it wasn't always obvious, but I think the concept surely predates computing. If you have a capacity in some resource for a certain amount of stuff, and the resource isn't completely utilized, whatever is left over is waste, to some degree, since it isn't able to perform its intended function. For instance, a school bus that isn't full is less efficient than a full school bus for the purpose of delivering school children to their school while spending as little money as possible in doing so. It has to carry around empty seats and the steel floor, etc. supporting them.

It is possible that your question could be marginally acceptable if there were developed to have a practical bent to it. For example, if you explained why you need to know this, and it turns out to be relevant to some particular problem you're having, maybe we can help you with the problem rather than going off on this tangent.

While Super User's purpose is to convey knowledge and solve actual problems (most/all questions on the site should follow one of these two patterns - solve a problem or convey knowledge about computing), computing history is somewhat of a gray area, especially when you're "just curious" about it and are not actually going to do anything meaningful with the answer.

Add to that the fact that your question seems fairly obvious, and I'm not sure anyone would even know where this originated from - it's such a common thing that you could likely trace its origins back to the ancient Romans, or even earlier.

15
  • 1
    "Add to that the fact that your question seems fairly obvious" OS X or Linux?
    – Braiam
    Aug 7, 2015 at 16:15
  • 1
    What does "OS X or Linux" have anything to do with what I wrote? Aug 7, 2015 at 16:19
  • There are also many questions that talk about the overall idea that unused memory in a system is sort of pointless, so an operating system, is going to go and ahead and use it for something. There are even questions that go deeply into the justification Microsoft has for how memory mangement works within Windows, written by the people, who wrote said system at Microsoft. There are books on memory mangmement in modern operating systems, written by experts in the field, for at least Linux and NT kernels.
    – Ramhound
    Aug 7, 2015 at 16:19
  • You are claiming that the origin is obvious on a system context, yet up to some years ago, if your application/OS/whatever used more memory than needed, your software would be buggy because of the "leak". So, someone somewhere has to be the spearhead before it spread to Linux, OS X, Windows, etc. So, my question remains, who started the paradigm of "unused RAM is wasted RAM", because is not obvious to me and a cursory search comes up empty. The oldest recollection of mine is Linux, but was almost at the same time Linux became popular.
    – Braiam
    Aug 7, 2015 at 16:27
  • @Ramhound yet, nobody seems to know of the "origin" of this sort of technique. As you say "books on memory mangmement in modern operating systems", so, the old school didn't think this way. Who set the mark that divides the modern from the old?
    – Braiam
    Aug 7, 2015 at 16:30
  • 1
    @Braiam - There was just enough memory to barely do what you needed to do on older systems. 32-bit and 64-bit architectures changed that.
    – Ramhound
    Aug 7, 2015 at 16:38
  • 1
    Older operating systems used all memory, too. Back in the DOS days when you had a few megabytes of memory, you would load the contents of a floppy (from an extremely slow I/O device) into RAM, and keep it there. That might have left you a couple hundred kilobytes for your application data. So even then we were utilizing memory as much as possible. The modern notion of page cache came about mostly with 32-bit architectures when we had a larger address space to play with than 65 MB. Aug 7, 2015 at 16:46
  • 5
    It boils down to the concept of cache, where you store things from slower transport mechanisms (floppies, CDs, hard disks, the network, etc.) in faster transport mechanisms (RAM, L3 cache, CPU registers, etc.) in order to avoid accessing it repeatedly through the slower mechanisms. Cache, in turn, comes from the idea of avoiding waste, which comes from ideas like empty space in a school bus is waste. It's a very, very old idea used in a slightly innovative but not earth-shattering way, since it has such an obvious and storied history. Aug 7, 2015 at 16:47
  • I also remember reading that "unused RAM is wasted" around the time that I learned about Linux in the late 1990s. I think it was a reaction to people who would see that their PC reported a small amount of "Free" memory, and they would want to take action to increase that number. On MS-DOS systems, if you have a large amount of free memory, it was a good sign, because if you did not have enough free memory available, a program would not be able to run. (continued) Aug 18, 2015 at 19:48
  • By removing background programs, a user could increase the amount of available RAM on an MS-DOS system, and therefore be able to run larger programs, such as video games that needed nearly all of the 640kb of conventional memory. Users who were used to keeping their systems clear of unused background programs would use Linux and be alarmed that the amount of available RAM was so small, and they would be frustrated that removing background programs had no effect, since Linux always uses as much RAM as possible. (continued) Aug 18, 2015 at 21:28
  • The difference being that MS-DOS did not have a disk cache that could grow to use all available RAM, like modern systems do. So users had to be reassured that Linux could report a small amount of free memory and that would not cause any problems, and in fact leaving memory available in case it is used later would waste its potential to make the system faster. Therefore "unused RAM is wasted" was a shorthand way to say "stop trying to find ways to free up RAM because it has no benefits anymore." Programmers always knew that the purpose of RAM is to use it, but users used to want to free it. Aug 18, 2015 at 21:34
  • 1
    Very colloquially, I think the public perception of the 'new' paradigm could be from Mavericks, where it first became obvious to the smarter user that the system wasn't housekeeping in the old way by handing back RAM after an app quit, instead hanging onto it in case it was needed again, ie faster than fast cache. Yosemite improved this to the point where a 16GB machine can appear to be 'using' all its RAM all the time... yet is significantly faster in operation than Mavericks was under those conditions.
    – Tetsujin
    Aug 20, 2015 at 8:57
  • @Tetsujin Over ten years before that, on Windows 98, people were being sold on "RAM defragmenters" that claimed to improve performance by making more available RAM. So, it's much older than 2013. Aug 20, 2015 at 14:26
  • @KevinPanko - well, that's the 'old' paradigm - no-one was disputing that users have thought that was a good idea since the dark ages; I was commenting on public perception of the 'new' paradigm.
    – Tetsujin
    Aug 21, 2015 at 6:48
  • linuxatemyram.com Aug 21, 2015 at 16:51

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .