TechSpot

Defragmenting Memory

By Blind Dragon
Jan 28, 2008
  1. 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%.
     
  2. Samstoned

    Samstoned TechSpot Paladin Posts: 2,582

    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
     
  3. Blind Dragon

    Blind Dragon TS Evangelist Topic Starter Posts: 4,048

    after opening and closing programs, then sitting idle, memory usage is 27%

    Where it was 35% before defrag
     
  4. Samstoned

    Samstoned TechSpot Paladin Posts: 2,582

    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
     
  5. jobeard

    jobeard TS Ambassador Posts: 13,469   +327

    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?
     
Topic Status:
Not open for further replies.


Add New Comment

TechSpot Members
Login or sign up for free,
it takes about 30 seconds.
You may also...


Get complete access to the TechSpot community. Join thousands of technology enthusiasts that contribute and share knowledge in our forum. Get a private inbox, upload your own photo gallery and more.