"And is DiskKeeper a better defrag than XP's? "
Just about any defragmenter is better than XP's
The built-in defragmenter was built by Executive Software to Microsoft's specifications. Microsoft retains exclusive control over the functionality of the built-in defragmenter.
The built-in one can't defragment directories on FATx partitions, requires at least 15% free space, may not consolidate free space, may require more than 1 pass, can't defragment the pagefile or hibernate file and can't defragment non-$MFT metadata on NTFS partitions.
The commercial version (Diskeeper) has a lot of the same limitations as the built-in defragmenter: requires at least 15-20% free space, may not consolidate free space, may require more than 1 pass, can't defragment the hibernate file and can't defragment non-$MFT metadata on NTFS partitions.
Both the built-in defragmenter and Diskeeper will "honor" the file placement done by XP approx every 3 days (layout.ini). One of the things that XP does is to monitor application launches and put this information in /windows/prefetch/layout.ini. Approx every 3 days, XP will do a "partial" defrag and attempt to make sure that the files indicated in layout.ini are contiguous (ensuring faster application launches). Unfortunately, since the built-in defragment is quite limited, it may not be able to ensure this (especially if there isn't a large enough piece of free space available for the partial defrag to use). When you perform a full defrag pass using the the built-in defragmenter, it is supposed to "honor" where these files are already placed and not move them around (Diskeeper does this as well). Some defragmenters don't honor at all (SpeedDisk, O&O Defrag, Defrag Commander, Vopt, Ontrack) and you can run into a situation where the built-in defragmenter and the above defragmenters try to "fix" what the other has done. PerfectDisk gives you the choice to have PerfectDisk manage these files (PD will make sure that they are contiguous and placed regardless of how fragmented free space is) or you can have Windows XP manage them (in which case PerfectDisk will "honor" where these files are placed by XP).