Have a look at this
It beats the Windows XP defragmentation application and Diskeeper hands down.
Numerous options including consolidate free space so great for those editing video files.
It can even be scheduled and set to use a percentage of the computers performance so you can carry on working unless a very demanding application.
My only comment so far is the estimation of the time required to complete seems very inaccurate.