Date: Tue, 16 Nov 1999 12:06:37 -0500 (EST) From: Zhihui Zhang <zzhang@cs.binghamton.edu> To: freebsd-hackers@freebsd.org, freebsd-fs@freebsd.org Subject: On-the-fly defragmentation of FFS Message-ID: <Pine.GSO.3.96.991116111847.9599A-100000@sol.cs.binghamton.edu>
next in thread | raw e-mail | index | archive | help
After studying the code of ffs_reallocblks() for a while, it occurs to me that the on-the-fly defragmentation of a FFS file (It does this on a per file basis) only takes place at the end of a file and only when the previous logical blocks have all been laid out contiguously on the disk (see also cluster_write()). This seems to me a lot of limitations to the FFS defragger. I wonder if the file was not allocated contiguously when it was first created, how can it find contiguous space later unless we delete a lot of files in between? I hope someone can confirm or correct my understanding. It would be even better if someone can suggest a way to improve defragmentation if the FFS defragger is not very efficient. BTW, if I copy all files from a filesystem to a new filesystem, will the files be stored more contiguously? Why? Any help or suggestion is appreciated. -Zhihui To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-fs" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.GSO.3.96.991116111847.9599A-100000>