Horrible block allocation scheme: Whose fault, Vista or ntfs-3g?

Block diagram close-upBlock diagram close-upJkDefrag (open source defrag for windows) shows the sector map on the left after installing Microsoft Windows Vista 64 and copying a few gigs of files to the drive using ntfs-3g. Is this Vista's fault or ntfs-3g?

If you don't know, ntfs-3g lets you mount a ntfs partition read-write from within linux (via fuse).

We installed a fresh copy of vista (64bit), then booted a knoppix livedvd, then copied, using the cp command, about 7gb to the ntfs partition using ntfs-3g.

Software:

Distro: Knoppix v5.3.1 dvd
NTFS Mounting: ntfs-3gv 1.2129
Note that the same results also occurred with the ntfs-3g on SystemRescueCD.

Results:

It turns out that the culprit is ntfs-3g. (See screenshots below.)

Is ntfs-3g doing this intentionally? It would seem to be a bad idea because...

  • There are no large empty spans remaining, forcing large files to be fragmented.
  • Even if the files are read in order (by name or order written), the disk must seek all over the drive to read them.
  • The partition can not be shrunk without pushing data down to lower sectors.

Beware when using ntfs-3g because it does this, seemingly for all types of files.

Vista's partition before ntfs-3g: A fresh installationVista's partition before ntfs-3g: A fresh installation

Vista partition after ntfs-3gVista partition after ntfs-3g