Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

I have a fresh install of windows 7, and my ram in normal startup goes up to 2.5 GB. I looked at task manager, and there's at least 1.5 GB missing from there and in resource monitor as well. No indication of what's using that ram. Can someone tell me how I can find out what's consuming my memory? I believe it's a virus but none of the free antivirus programs tracked it down.

EDIT

I added the pictures bellow. If this is normal usage of windows 7 as some answers imply... then I don't get this at all.

P.S My windows 8 Installation was running bellow 2.5 gb actually it was 1. something, until recently that I transferred some files from another computer which had the same problem that mine has now. I deleted windows 8 and installed 7, since i would do that anyway. And now I'm getting high memory usage in windows 7 as well.

enter image description here enter image description here

share|improve this question
    
Welcome to SuperUser! In order to help diagnose your computer, we need a bit more information. Could you include a screenshot of task manager so we can see what's going on? –  digitxp Jun 27 '13 at 19:28
1  
Good to be here :) I added the pics in my question. –  Deus Deceit Jun 27 '13 at 19:58
9  
Re: I believe it's a virus: xkcd.com/1180 (SCNR) –  Heinzi Jun 28 '13 at 5:14

5 Answers 5

up vote 50 down vote accepted

If you want the OS not to use your RAM, take it out of your machine and sit it on your desk. But so long as the RAM is in the machine, using it is free. If you're thinking "I want the RAM free now so I can use it later", you're being silly. You can use it now and use it later. There is no disadvantage to using the RAM. None at all.

Modern operating systems only make RAM free if they have no choice. This is because there are only two things that can happen. If the RAM is used soon, then they just have to make the RAM used again, wasting the effort they went through to make the RAM free -- it is easier to move RAM directly from one use to another. And if the RAM is not used soon, then the effort of making it free is again wasted. Making RAM free is a last resort used only if the OS has no other choice because it adds an extra step the OS will have to go through in order to use the RAM.

Free RAM is only needed for the rare cases where RAM is needed and the operating system cannot transition RAM from one use to another (for example, in interrupt context). Only a very small amount of RAM is needed for this purpose, typically 64MB or so on modern computers. Any more free RAM than that is just waste.

Consider if a program runs and then stops. The program is in RAM. The operating system could make the RAM free or it could keep the program in RAM. If the program runs again soon, keeping it in RAM is a huge win -- disk I/O is avoided. And there is zero cost to keeping the program in RAM if the RAM isn't needed for some other purpose. So the OS keeps the program in RAM until that RAM is needed for something else. Making the RAM free when free RAM isn't needed is a pure losing proposition.

share|improve this answer
1  
This is... crappy. I wasted my day chasing unicorns as it seems. I want to thank everybody for their answers and mark this one as the Correct because I think it's the most informing one. –  Deus Deceit Jun 27 '13 at 20:12
    
Excellent answer. This goes hand-in-hand with "How much RAM do I need?" You only need as much as you use. –  Keltari Jun 27 '13 at 21:32
7  
What people don't understand is, free/idle RAM is wasted RAM. What's it there for anyway? People were so used to XP-'s way of doing things that there were massive complaints about Vista being a RAM hog (few of which were justified). –  Karan Jun 27 '13 at 21:57
1  
The problem with these answers is that, while correct, they address the lack of 'free' RAM by explaining it as used for caching. 'Cache' RAM is distinct from that allocated to running processes, and the question appears to be asking specifically about the RAM 'used' by running processes. The RAM used by the OS for caching should be completely transparent, and should not appear as 'used' in the task manager (of course, if individual processes decide to use more of the available RAM for their own caching then this does not apply, and this may be the case here). –  Bob Jun 28 '13 at 3:49
3  
@Bob The case is exactly the same with memory allocated to running processes. Almost all physical RAM is essentially a cache on a modern operating system. Memory allocated by a process may or may not correspond to actual physical RAM depending on what other needs the OS has. –  David Schwartz Jun 28 '13 at 6:56

Windows 7 tries to take advantage of all your RAM. If no program is using it, it'll store as much information from your HD as possible, so that when a program requests some information, it'll be available in RAM (that is much faster then your disk).

This feature is called Superfetch and you can read information about it in that link, or also googling around. And if you want to know how it impacts (improves) performance, take a look at Tom's Hardware site.

If a program requires more memory, Windows will provide the necessary RAM to your program, so it isn't a thing you should worry about.

share|improve this answer

Likely what you are observing are the disk caching features of Windows 7, they actually optimize the RAM usage, even though it appears as though the opposite is happening.

The Linux kernel also has this type of feature.

share|improve this answer
1  
I'm using linux as my primary OS and to reach 2.5 GB of ram I have to... actually I think I never reached 2.5 GB ram with what i do. –  Deus Deceit Jun 27 '13 at 19:39
    
Is there a way to check if that's the case? Is there a way to turn that feature off and see what happens? I'm new to windows. –  Deus Deceit Jun 27 '13 at 19:45
    
Yes, this explains how: addictivetips.com/windows-tips/disable-windows-7-superfetch (notice they recommend against disabling for most use cases) –  dtmland Jun 27 '13 at 19:47
1  
Note that turning off Superfetch just means that Windows can use the memory for other purposes. "Free memory" in the end still means that Windows has no idea at all what to do with it. –  MSalters Jun 28 '13 at 12:02

2.5 GB or RAM is a perfectly normal amount for Windows 7 to be using. Currently, my machine is idle and sitting at 2.51 GB of used RAM. I highly doubt you have a virus, this is typical memory usage.

As for what is using that RAM, look at your Task Manager and make sure the Show processes from all users checkbox is checked. Without that selected, you wont see any system processes (or other users)and their memory usage.

share|improve this answer
1  
I agree, I just did a fresh Win 7 install and memory usage is about 2.1 GB. –  Moses Jun 27 '13 at 19:44
    
And what would happen if someone had 2 GB of ram instead of 8 that my laptop has? –  Deus Deceit Jun 27 '13 at 20:00
3  
If you had less RAM it would use less. –  David Schwartz Jun 27 '13 at 20:02

This is very similar to common Linux concern that "Linux ate my RAM". I am doing heavy usage of my Windows 7 machine and when I had 6GB of physical RAM it eats something like 5GB. When I upgraded to 8GB, it's eating 6-7GB. But I did not change anything with what I'm doing with my machine.

It uses the RAM to cache files, so that it can be accessed faster later. Very similar to Linux. It's really free, and Windows 7 will release when your application needs to allocate more RAM.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.