File system software???

Joe Armstrong <>
Fri Jun 28 17:21:54 CEST 2002


On Thu, 27 Jun 2002, Chris Pressey wrote:

> On Thu, 27 Jun 2002 10:53:56 +0200 (CEST)
> Joe Armstrong <> wrote:
> 
> > 
> > This isn't an Erlang question but ...
> > 
> > Does anybody know of some software I can use for the following:
> > 
> >   - I want to create a simple file system *within* a bigger file
> >   - I want this to be fast and in C
> > 
> > I'd really like just the C file manipulation routines fopen/fclose
> > etc. to create virtual files *within* a single big file.
> > 
> >   I would like applications to be distriubuted with a single data file
> > not lots of silly little ones.
> >   
> >  The format of the big file is irrelevant (could be ext2, or zip or
> >  anything)
> 
> I'm confused!  Wouldn't the time taken to manipulate files in a compressed
> archive completely overshadow any time savings gained by it being in C? 
> Write it in Erlang!  It's so much cooler!  :)

I never said anything about compressed archives... and I don't give a hoot
about time savings.

Once upon a time I had a mac - when you installed an application you moved
ONE file into some special directory. When you uninstalled it you removed
ONE file.

  In Windows/linux applications are made  of multitudes of files - now
there mighthave to be lots of  small files in an application but there
is  no  good  reason why  the  user  should  known  this -  all  files
(including any new  files created by the application  should be neatly
hidden away *inside* a container -  also you should not be able to see
inside the container.

  I am concerned about aesthetics and not performance.

  It can't be written in Erlang since I need it working before Erlang has
got though it's initial boot sequence.

> 
> I tried writing a toy virtual filesystem in Erlang once, when I was bored
> - it didn't work very well because a) I have almost no experience with
> filesystem implementations and b) it's not the sort of thing that Erlang
> is immediately suited to, although I'm sure a simple one could easily be
> done by someone who's familiar enough with how filesystems work.
> 
> While on the subject of filesystems, I have had two ideas on how life
> could be made easier in small ways when Erlang deals with the filesystem.
> 
> One is that it would be really nice if there was a way to establish a
> filesystem-level file lock.  If there is, I can't find it.
> 
> The other is that is would be really nice to be able to subscribe to
> filesystem events, getting a message whenever a file is created, updated,
> renamed, etc.

  Luke (Gorrie) has none something like this - you can mount a filesystem
which is implemented as an Erlang server (somehow) - details luke ...



> 
> These features may not exist on all systems, but on the systems on which
> they do exist, they would be a great boon.  They would, in essence, allow
> arbitrary programs to communicate with an Erlang program in soft real
> time, or if not that then at least in an event-driven way, by creating
> files.
> 
> Basically I wish I could do the same things with the filesystem that I can
> do with mnesia  :)
> 
> -Chris
> 

/Joe




More information about the erlang-questions mailing list