Solving registry fragmentation
Most of us are familiar with the phenomenon of disk fragmentation, where files are no longer stored in sequential clusters and the hard disk has to do extra work to gather up the disparate pieces. When many programs add and remove values to and from the registry, the effect is similar: the registry itself begins to become internally fragmented, and may wind up becoming many times larger than its actual data size. The end result is that the system may boot and operate much more slowly. Because registry fragmentation is an internal phenomenon, defragmenting the disk does not help fix it.
One way to compact the registry involved creating a Rescue Disk with the RDISK /S- command. The version of the hives produced in this procedure will be defragmented, but they will not be immediately useable. To make use of them, you have to uncompress the files to a temporary directory using the command-line EXPAND tool, boot either to a secondary copy of NT or to a command-line from a floppy and copy in the expanded versions of the hive files. This procedure is cumbersome and difficult, entails some risk and requires taking the system offline. For these reasons, this process is not recommended.
Microsoft used to provide a program named RegClean, which compacted the registry, but it is no longer available. But one good way to compress the registry is with the aid of a piece of third-party shareware, named RegCompact, available from http://talismanic.net/codeworld/regcompact/.
RegCompact works on all versions of Windows, including Windows 2000 and XP. When run, the program tells you the total sizes for each major branch of the Registry and the amount of fragmentation and wasted space in each. RegCompact requires a reboot, but the total downtime is far less than would be had by trying to compact the registry manually, and the process is automatic.
For more conventional registry cleanups as a prelude to compacting the registry, a program called RegCleaner (in revision 4.3 as of this writing) is available from JV16.ORG. It identifies and deletes useless entries from the registry, stores the deleted entries in a backup file in the event of a mistake, also removes outdated OLE references and works on all versions of Windows.
Serdar Yegulalp is the editor of the Windows 2000 Power Users Newsletter.