A: 

No idea what's causing this, but the defragger that comes with Win XP is Diskkeeper Lite, which is not very good. A better defragger might get rid of the gap if it's not being caused by anything. I personally use O&O Defrag; it's not free, but there's a 30-day trial.

Scott
A: 

Defragging to the point that there are absolutely no gaps is not necessarily a good thing. Some OSs/FileSystems try to pack files in as tightly as possible and fill without gaps where possible.

The problem with this is if any of the earlier files get changed or appended to then you are either leaving an early gap (which will tend to case fragments) or forcing the extra bit to be entered at the next gap (creating a fragment again).

Defrag when you start getting weird behaviour (quite often it helps... even though it is not supposed to); however you don't need to do it every day, nor is a totally defragmented drive a sign of a particularly health drive.

Waterford
+1  A: 

That is probably the space reserved for the MFT, which will only be used for files if the disk gets really full. This empty space allows it to grow for a while without getting fragmented.

References:

CesarB
The defragmenter report of 20 Gig disk D shows Total MFT size as 11 MB. An estimate from the diagram, assuming it is proportional, is that the gap is 2.4 GB. The 40 Gig disk P report has Total MFT size of 21 MB. An estimate of that gap would be about 5 Gig. Don't think it is MFT.
Refactor
The article I linked to says the space reserved for the MFT by default is 12.5% of the disk size. 12.5% of 20G is 2.5G, 12.5% of 40G is 5G. That hole is not the MFT, it is the space _reserved_ for it, so its current size does not matter much.
CesarB
A: 

Like the poster above said, that's most likely the reserved zone for the MFT. When the drive is formatted, about 12.5% of the partition is reserved for the MFT, and this can grow as needed to accomodate new records if the initial allocation is used up. Mind you, the MFT can also fragment if the adjacent contiguous free space is not large enough to accomodate the expansion.

Reg. defragging, instead of defragging manually regularly, save yourself the trouble and get Diskeeper. The newest version i.e 2008 Professional is fully automatic and defrags in the background using idle resources. There is also a manual/scheduled defrag mode, but I don't see any reason to waste my time; it does a fine job running on automatic on my systems.