Does you windows memory usage go up after have your computer on for a while?

Sureshot324

Diamond Member
Feb 4, 2003
3,370
0
71
Right after I boot my computer, if i check my total memory usage (commit charge) it's around 110mb. After using my computer for a while, it's pretty much always higher, even after closing all programs, especially if i've been playing games. Does your commit charge usually go back to what it was at boot if you close all programs?
 

XZeroII

Lifer
Jun 30, 2001
12,572
0
0
With C applications, you must release memory after you use it. What is happening is that some applications that you are using are not releasing that memory, so even after the application is closed, Windows still sees that memory as in use. Only thing to do is reboot.
 

n0cmonkey

Elite Member
Jun 10, 2001
42,936
1
0
Originally posted by: XZeroII
With C applications, you must release memory after you use it. What is happening is that some applications that you are using are not releasing that memory, so even after the application is closed, Windows still sees that memory as in use. Only thing to do is reboot.

Shouldn't the OS be releasing the memory? I mean, what happens when an application crashes?
 

EagleKeeper

Discussion Club Moderator<br>Elite Member
Staff member
Oct 30, 2000
42,589
5
0
Originally posted by: n0cmonkey
Originally posted by: XZeroII
With C applications, you must release memory after you use it. What is happening is that some applications that you are using are not releasing that memory, so even after the application is closed, Windows still sees that memory as in use. Only thing to do is reboot.

Shouldn't the OS be releasing the memory? I mean, what happens when an application crashes?
application memory will be released. Allocated memory by the application is under control of the application.

sometimes the OS can detect the orphan memory and recover it, other times it will not.

There are utilitiies out there that "claim" to be able to recover lost memory.
 

CTho9305

Elite Member
Jul 26, 2000
9,214
1
81
Originally posted by: EagleKeeper
Originally posted by: n0cmonkey
Originally posted by: XZeroII
With C applications, you must release memory after you use it. What is happening is that some applications that you are using are not releasing that memory, so even after the application is closed, Windows still sees that memory as in use. Only thing to do is reboot.

Shouldn't the OS be releasing the memory? I mean, what happens when an application crashes?
application memory will be released. Allocated memory by the application is under control of the application.
Correct, the OS frees all memory allocated by a process when the process exits (ignoring stuff like shared memory, which should be freed once every process sharing it exits).

sometimes the OS can detect the orphan memory and recover it, other times it will not.
"Orphan memory?" If you mean memory that the application has "leaked" (it allocated some space, then forgot where the space is), the OS can't reclaim the space until the application exits. Because of how pointers work, it's impossible to tell if something that looks lost is actually lost. It would also take a not-insignificant amount of time for the OS to scan an application's memory area to look for lost areas, if it were even possible.

There are utilitiies out there that "claim" to be able to recover lost memory.
All they do is allocate a whole bunch of space to force other things to be swapped out, then free up the space. The result is that you get more RAM free, but a lot of data that got swapped out has to be read back into RAM from disk (waste of time).
 

Nothinman

Elite Member
Sep 14, 2001
30,672
0
0
application memory will be released. Allocated memory by the application is under control of the application.

And the application is ultimately under the control of the OS, do you really think the OS doesn't do any book keeping on the memory every process allocates? When an app exits, dies, gets killed, etc the OS frees all the memory the application had allocated whether it was free'd by the application or not. A memory leak in an application is only affective while the app is running.

sometimes the OS can detect the orphan memory and recover it, other times it will not.

The only OSes that don't do proper memory management are all old and deprecated like DOS, Win9X, OS 9. Every semi-recent, decent OS does real memory management.

Most likely the OP's memory usage goes up over time because of normal circumstances like filesystem caching and the like.
 

duragezic

Lifer
Oct 11, 1999
11,234
4
81
There are utilitiies out there that "claim" to be able to recover lost memory.
All they do is allocate a whole bunch of space to force other things to be swapped out, then free up the space. The result is that you get more RAM free, but a lot of data that got swapped out has to be read back into RAM from disk (waste of time).
:laugh: Now that utility must be a complete waste. Even if it didn't work like that, with windows XP it boots so damn fast that it'd be pointless to buy or download something when its faster to just reboot when you gotta which with 2000 or XP isn't that often.
 

Sureshot324

Diamond Member
Feb 4, 2003
3,370
0
71
Most likely the OP's memory usage goes up over time because of normal circumstances like filesystem caching and the like.

Could you go into more detail on these "normal circumstances" that make my memory usage go up? And is there any way to clear the filesystem cache so my memory usage returns to what it was at boot?
 

Nothinman

Elite Member
Sep 14, 2001
30,672
0
0
Could you go into more detail on these "normal circumstances" that make my memory usage go up? And is there any way to clear the filesystem cache so my memory usage returns to what it was at boot?

Unused memory is wasted memory, the OS will flush any memory used by the filesystem cache if it's needed without any interaction by you.