I used to be a big fan of OODefrag. In fact, their version 10 product is very good.
I can't hide the fact, though, that I am a changed man ever since I tried Diskeeper 2008 Pro Premier. Its defragmentation process is really smooth and the background service keeps defragmenting your disks continuously, but only when it detects that your computer is sitting idle (i.e. it doesn't interrupt or slow down your ever-important FSX sessions).
Three thumbs up for Diskeeper 2008!!! You can find it here.