Windows already does this.
It has a service which monitors filesystem usage, and writes data to disk
; the defragmenter uses this data to lay the files on disk so that boot is
very fast.
However think it optimizes only the time to the login screen ; so windows
boot is extremely fast ; of course, once you have logged in, you have to
wait forever until all the crap system tray apps launch themselves and eat
all your RAM...
My own repacker is very simple, and it handles any filesystem !
- boot from Kanotix CD
- tar cv /mnt/my_disk | lzop -c | ssh -c blowfish other_machine "cat
backup.tar.lzo"
- umount, mkfs, mount
- ssh -c blowfish other_machine "cat backup.tar.lzo" | lzop -cd | tar xv
You can also use an USB disk, or other disks in the machine. The effects
are pretty visible.
I do the first part often to make a full disk backup to a USB harddrive.
Anyway, IMHO the best way to have a super responsive system would be :
Have a daemon which monitors which files, or parts of files, are read, and
in what context :
- boot to fully loaded KDE/Gnome
- launching an application
You already have this apparently...
The repacker would then use this information to lay files on disk (just
like windows does).
Then, the daemon would trigger readahead, when booting or detecting the
launch of an application, and read everything in (which would be a nice
sequential read)...