Thread: SFS tools
View Single Post
Old 24 July 2004, 22:12   #4

Bloodwych's Avatar
Join Date: Jun 2001
Location: I'm behind you!
Posts: 3,763
Here is the readme:

Defragmenter (part of SFS) and SFSdefrag (cli command)

The Defragmenter

- Defragments files and free space.

- 100% transparent; defragment a disk while you're still
reading and writing data from/to it (SFS won't guarantee
a 100% defragmented disk when the disk has been modified
during defragmentation though).

- Defragmentation uses the same safe-writing techniques which
SFS always uses. This means a crash, reset or power failure
will not cause you to lose any data, even while the
defragmenter is running.

The price you pay for this feature is speed and a not 100%
optimal defragmentation (there is a big difference between
a simple defragmenter and a disk optimizer like ReOrg).

- A very simple interface is provided to activate the
defragmenter built-in SFS. See packets.h and the source of
SFSdefragmentGUI for more information.

When you use the defragmenter, it is wise to allocate for this
time EXTRA buffers (with SFSdefrag!) to speed up the process.
SFSdefrag subt. these buffers after the job automatically!
Adding about 1000-4000 extra buffers would be a very good idea.
1 Buffer = 512 Bytes (512 Blocks)

SFSdefragBIG -> fullscreen, SFSdefrag -> 1/4 screen, center

Once you start SFSdefrag it will start defragmenting immediately.
Note that the defragmenter will NOT wait for the drive to be
unused -- it will start defragmenting immediately hogging the
drive and slowing down any normal reads or writes you are doing
to that drive.

Once the program is started it will display a simple map of
your drive so you can see what's going on. This map is
constantly updated and you can see the reads/writes SFS
does. Note that only changes made by the defragmenter are
tracked here; other program writing to the disk will not
show up in this map, and thus the map isn't always 100%
This is a VERY basic "progress window" for the SFS defragmenter
which I created in a couple of hours. I do not intend to
extend it much further, but it is provided as an example
and because (currently) it is the only means to start the

You can stop the defragmenter at any time by closing the
defragmenter window. Restarting it will cause SFS to
continue defragmentation where it left of (it will skip the
defragmentated parts at the beginning of the disk quickly).

You can resize the window if you like -- a last minute
feature I added :-)

I'm not sure what the memory requirements are, but the
defragmenter will need atleast enough memory to hold the
bitmap of the drive in memory. This is usually about 0.25%
of the total size of the drive you are trying to defragment
plus the memory needed to show the window (depends on the
window size). For a 2 GB drive the total memory
requirements are about 1 MB (+ Buffers)
Bloodwych is offline  
Page generated in 0.03975 seconds with 10 queries