On-disk format of UFS/UFS2 (for firmware implementation)

Matt Sealey matt at genesi-usa.com
Tue Jun 20 15:51:07 UTC 2006


> You probably are looking for this paper:
> 
> A Fast File System for UNIX (1984)
> http://citeseer.ist.psu.edu/12920.html

We have this implemented already in the firmware.

However this does not help reading UFS2 (64-bit numbers, extents etc.
and myriad other things to look out for).

> Sleuthkit contains code to read many file systems and its 
> code may assist in extracting the design of FFS.
> http://www.sleuthkit.org/
> 
> There has been work on flash file systems for BSD, a quick 
> search may turn up something useful.

Why a flash filesystem?

Our OpenFirmware has disk support, it pushes them into the device
tree and you can load/boot any file on any supported filesystem (this
includes IDE, SCSI, USB disks..)

We just want to parse and use UFS filesystems, i.e. the modern ones
that OpenBSD (UFS) and FreeBSD and NetBSD (UFS2) use. FFS isn't the
same thing, as I am told by hundreds of articles... at least there are
some differences which I have found hard to find the documentation on.

In theory we should be able to implement the entire gamut in one
filesystem support package, the same way the Linux ufs driver does,
by adapting the "1984 FFS" driver.

For that we need to know what we are doing.. :)

The Sleuthkit guy seems to have written a book which may be very
useful to us (if we order it..) http://www.digital-evidence.org/fsfa/
and this is more like what we are looking for. Source code as
documentation is really the last resort when it comes to supporting
things as it makes for very hard and expensive work.

-- 
Matt Sealey <matt at genesi-usa.com>
Manager, Genesi, Developer Relations



More information about the freebsd-fs mailing list