Date: Mon, 6 Dec 1999 13:33:33 -0800 (PST) From: Matthew Dillon <dillon@apollo.backplane.com> To: Zhihui Zhang <zzhang@cs.binghamton.edu> Cc: "Ronald G. Minnich" <rminnich@lanl.gov>, freebsd-fs@FreeBSD.ORG, freebsd-hackers@FreeBSD.ORG Subject: Re: ELF & putting inode at the front of a file Message-ID: <199912062133.NAA72851@apollo.backplane.com> References: <Pine.GSO.3.96.991206142945.23212B-100000@sol.cs.binghamton.edu>
next in thread | previous in thread | raw e-mail | index | archive | help
:On Mon, 6 Dec 1999, Ronald G. Minnich wrote: : :> On Mon, 6 Dec 1999, Zhihui Zhang wrote: :> > I have modified FFS filesystem code to put the disk inode at the beginning :> > of a file, i.e, the logical block #0 of each file begins with 128 bytes of :> > its disk inode and the rest of it are file data. :> :> first question I have is, why? : :I am doing some research on filesystem. I guess it may be faster to put :the disk inode with its file data together so that both can be read into :memory in one I/O. : :-Zhihui Not really. The inode tends to wind up being cached by the system longer then file data, so placing it with the file data will not help -- since it is already probably cached, the system generally doesn't have to read it off the disk more then once anyway, and in a heavily loaded system the system caching is sufficiently detached from the file data processing that it is actually more beneficial to group inodes together (one disk read is able to cache many inodes all in one go). Another problem is that things like 'ls -la' or 'find' have to stat files and if you put the inode at the beginning of the file you essentially distribute the inodes all over the cylinder group rather then concentrate all the inodes in one place. p.s. I was wrong about it breaking mmap() - in fact offseting the file data on-disk will not break mmap(). But it will produce unaligned disk transfers and potentially extra seeking. -Matt To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199912062133.NAA72851>