Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 6 Jun 2005 09:40:30 -0700
From:      Brooks Davis <brooks@one-eyed-alien.net>
To:        Suleiman Souhlal <ssouhlal@freebsd.org>
Cc:        current@freebsd.org, fs@freebsd.org
Subject:   Re: [PATCH] IFS: Inode FileSystem
Message-ID:  <20050606164030.GB22790@odin.ac.hmc.edu>
In-Reply-To: <82ACAD58-B179-44E2-852F-60F25C0BBBC1@FreeBSD.org>
References:  <82ACAD58-B179-44E2-852F-60F25C0BBBC1@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help

--xXmbgvnjoT4axfJE
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Sun, Jun 05, 2005 at 02:03:10PM -0400, Suleiman Souhlal wrote:
> Hi,
>=20
> IFS is basically FFS, minus the namespace. Files are referenced by =20
> their inode number, thus making file lookup very fast. This is very =20
> useful for things that keep the file names in their own database =20
> anyway, such as web or news caches.
>=20
> Files are created by opening the "newfile" file:
>=20
>     fd =3D open("newfile", O_CREAT|O_RDWR, 0644);
>     fstat(fd, &st);
>     printf("new file is %d\n", (int)st.st_ino);
>=20
> Once a file has been created it is possible to accessing by just =20
> opening it the file named after the inode number. For example:
>=20
>     fd =3D open("5", O_RDWR);
>=20
> This filesystem was imported back in the year 2000, by Adrian Chadd =20
> (adrian@) and removed in 2002, before the introduction of UFS2 in =20
> order not to slow down the development of UFS2.
>=20
> I have fixed it so that it is usable on -CURRENT. You can find the =20
> kernel bits at http://people.freebsd.org/~ssouhlal/testing/=20
> ifs-20050605-2.diff and the userland bits at http://=20
> people.freebsd.org/~ssouhlal/testing/ifs-20050605-userland-2.diff .
> (You need to copy src/sbin/fsck_ffs to src/sbin/fsck_ifs and src/sbin/=20
> mount_ufs to src/sbin/mount_ifs, before applying the userland patch).
>=20
> You can use the regular newfs(8) to create such a filesystem. You =20
> might also want to specify the -n option, so that the .snap directory =20
> is not created at newfs, since directories are useless, in IFS. If =20
> you don't you'll end up with a useless inode, which is not really a =20
> big deal.
> Once the filesystem is created, you can mount it with mount_ifs.
>=20
> You can find additional comments in src/sys/ufs/ifs/README in the patch.
>=20
> Is anyone interested in seeing this committed?

I would very much like to see this committed.  The vast majority of high
performance computing data management systems could strongly benefit
from a system like IFS.  If it's in the tree and usable in a shipping
release, that gives us a powerful edge in convincing people to use
FreeBSD as a backed for such a system.

-- Brooks

--=20
Any statement of the form "X is the one, true Y" is FALSE.
PGP fingerprint 655D 519C 26A7 82E7 2529  9BF0 5D8E 8BE9 F238 1AD4

--xXmbgvnjoT4axfJE
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.1 (GNU/Linux)

iD4DBQFCpHxzXY6L6fI4GtQRAvWPAJ4/VfOFmgzhvpFLW+i4PVFka3V/OgCYt2VT
ZhlnhX9bXIpCWOnUEMnHqA==
=MngO
-----END PGP SIGNATURE-----

--xXmbgvnjoT4axfJE--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20050606164030.GB22790>