Re: GEOM portable filesystem abstraction?

From: John Baldwin <jhb_at_FreeBSD.org>
Date: Fri, 21 May 2004 10:35:55 -0400
On Friday 21 May 2004 09:37 am, Jesse Guardiani wrote:
> Will Andrews wrote:
> > On Thu, May 20, 2004 at 02:44:06PM -0400, Jesse Guardiani wrote:
> >> It seems like GEOM functions as a bit of a disk
> >> abstraction layer in FreeBSD. Would it be possible
> >> to port the GEOM subsystem as a loadable kernel
> >> module to Linux (and perhaps other OSes) to
> >> facilitate pluggable, portable filesystem code?
> >
> > GEOM is below the filesystem layer and thus wouldn't help you
> > with the filesystem portability issue.
>
> Well, that's kinda the point. If you want to port filesystems
> to multiple architectures/OSes, then you need a common underlying
> infrastructure. I was thinking GEOM might be it. Plus, GEOM
> makes GBDE encrypted volumes possible.

Filesystems are really in a sandwich of layers.  For example, on typical VFS 
UNIXs, you have this:

   system calls
        |
   vnode layer
        |
   file system
        |
   dev_t device

On FreeBSD and other VFS UNIXs with a unified buffer cache it gets a bit more 
complicated as the vnode/file system layers talk to VM, which calls back into 
the vnode/file system layers, etc.

GEOM is an abstraction for the dev_t layer of that tree.   It is not an 
abstraction for the VM system or for the way that requests are made of the 
file system by the rest of the kernel (i.e. syscalls, VM, etc.).  GEOM is 
just one piece of the puzzle and is not enough of the puzzle to provide a 
completely portable file system API.

-- 
John Baldwin <jhb_at_FreeBSD.org>  <><  http://www.FreeBSD.org/~jhb/
"Power Users Use the Power to Serve"  =  http://www.FreeBSD.org
Received on Fri May 21 2004 - 05:36:29 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:37:54 UTC