Defragmenting Memory

Status
Not open for further replies.

Blind Dragon

Posts: 3,774   +4
Do you agree or disagree that over time, as memory is allocated and released by programs, memory is fragmented or that your computer may have many unused blocks of memory mixed in with the usable blocks?


Here is my thoughts:
Programs need a contiguous area of memory (memory usage by a program cannot be fragmented like data on a disk), I don't know why everyone makes it sound like memory defrag programs claim to defrag memory in the same manor as a disk.

So maybe defrag isn't the best word to use for this process. They should say "Optimize System Memory" as that is more along the lines of some of their claims.

I can't explain why Vista's memory usage widget sits at 35% used when sitting idle for me.Then I run iolos memory defrag utility built into system mechanic, and memory usage drops to 17%-24% and stays there for hours. This is on a fresh boot. Even after a reboot it only jumps to 27%.
 
because there not defragging physical it the paging file that gets de-fragmented

the only way any app can get to page file is on boot while OS is not running
as you open programs the paging is swapping and holding memory some of these programs on close may not release memory back to the pool
do alt ctrl delete look at your mem useage open close programs see what happens
 
some program was using memory what ever the app did it stopped that mem use
this has nothing to do with defragging virtual memory
start opening and using lots of programs the paging file will grow
unless you are describing cpu usage whole n'other animal
programs that say they optimize memory are a fraud
xp will do a better job of controlling your memory
to make it work better ignore the 3time physical memory rules you hear about
do a weekly average of commit charge double that set the paging to that number
if you have errors slowly raise it
2 to 3 times commit charge for paging is all you need
my system is set to 800mb with commit of about 300 runs real fast

I'm not a fan of iolo
 
The primary object in memory is a process. A process may have 0...N threads.
The Process uses Virtual Memory (as Samstoned noted).

When a process (or service) terminates, a special routine in the OS gets control
to cleanup all residual resources:
  1. threads
  2. files
  3. sockets
  4. semephores (ie memory locks)
  5. and memory itself (V.M.)
Allocation and deallocation of Virtual Memory directly controls the pagefile blocks
and real memory blocks.

As virtual memory is linear and the real/pagefile blocks are separate, there is
no correlation to defraging memory.

The bigger issue is long running processes (and services) which never terminate
and may contain memory leaks -- anyone remember the leak issue with the Netscape browser?
 
Status
Not open for further replies.
Back