Table of Contents
UltraDefrag is an open source disk defragmenter for Windows NT 4.0 and later operating systems. It makes use of the same defragmenting API used by many other windows defrag utilities, both open and closed source. However, UltraDefrag has two features that make it unique. The first is that it has a kernel mode driver that does most of the work. The second is the ability to run the application at boot up time in a manner similar to chkdsk. This allows for faster defragmentation time and the ability to defragment all files including system files.
UltraDefrag has the following features:
UltraDefrag supports the following filesystems: FAT12/16/32, NTFS and on Vista UDF. UDF is a file system intended for optical media such as DVDs that unlike ISO9660, is rewriteable. It has also the ability to defragment volumes at boot time allowing you to move many system files that are always locked by the operating system. Actually all files including the registry hives and the pagefile can be scanned at boot time. UltraDefrag can also defragment files and folders compressed by NTFS file system compression. And can even defragment floppies, although doing so is not particularly useful.
Don't try to analyze/defragment NTFS v1.2 formatted volumes under NT4.0! This version of NTFS has beta status and its driver may crash your system some day. You may ignore this advice but know, you was forewarned.
Directories on FAT volumes cannot be moved. This is a well known fastfat.sys system driver mistake, it cannot be fixed. Most of other defraggers have the same restriction.
$MFT, $Bitmap and another internal NTFS files cannot be defragmented at this moment. Because NTFS driver provided by Microsoft is very imperfect. Such internal files defragmentation support may be added in future versions of UltraDefrag.
UltraDefrag cannot defragment volumes containing more than 4.294.967.295 clusters.
NTFS volumes with cluster size greater than 4 kilobytes cannot be defragmented on Windows 2000. This is not a bug of Ultra Defragmenter, this is an internal Windows restriction.
UltraDefrag runs on Windows NT 4.0, Windows 2000, Windows XP, Windows Server 2003, Windows Vista, Windows Server 2008 and Vindows 7, including 64 bit versions of Windows. NT 4.0 Alpha is not supported currently.
UltraDefrag can perform 3 jobs: Volume Analysis, Volume Defragmentation and Volume Optimization. Read carefully next chapters to understand how to run them. Here the appropriate algorithms will be discussed.
Since the 3.3.0 version of the program this sequence of optimization steps will repeat few times until the end of the volume will be reached. The starting point of an optimization moves forward before repeating the sequence to skip already optimized part of the volume. This highly improves the optimization by making it very effective.
In spite of this multipass optimization strategy it takes relatively small amount of time.
Note that Volume Optimization is very effective always, even when processed volume has a small amount of free space.
Volume optimization algorithm works only on NTFS volumes, because FAT directories aren't moveable.
NTFS file system is very imperfect. We cannot move internal files, such as $MFT, $Bitmap and other internal files with a '$' sign in the begginning of their names. This is a well known ntfs.sys driver's bug. Free space may be splitted into few small parts by such unmoveable internal files. So you may never become a large free space area to defragment pagefile and other big files. Though there are still two ways to achieve a full volume optimization:
This section is applicable only for UltraDefrag version 3.0.0 or higher. Old versions of the program have a little bit imperfect algorithms. The new algorithms described here are much faster, effective and reliable!
The Ultra Defragmenter's home page is at: http://ultradefrag.sourceforge.net
Please be sure to visit this site for information, documentation, tutorials, news, etc. All Ultra Defragmenter related things are available from there.
For help requests visit our forum: http://ultradefrag.sourceforge.net/forum
Please report all problems and bugs via our bug tracker: http://ultradefrag.sourceforge.net/bugs
The most recent version of this handbook can be obtained from program's SVN repository.