tech-kern archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: GSoC, translators



On Sat, Apr 26, 2008 at 09:42:29PM +0200, Marek Dopiera wrote:
 > Saturday 26 of April 2008 19:22:57 napisa?e?(-?a?):
 > > On Sat, 26 Apr 2008, Marek Dopiera wrote:
 > > > - vfs modifications to allow "mounting" on non-directories
 > >
 > > You've mentioned this several times, but I don't understand what it means.
 > > Can you illustrate a few examples / use cases?
 >
 > Basicaly it means that not only directories can be mount points. In Hurd, 
 > symbolic links are in fact translators. So are for example TCP/IP stack, 
 > fifos, sockets. All of them are set on other files than directories. 

I'm not sure that's quite the same thing as a mount point. If I
understand what you're saying correctly (not guaranteed), a translator
is a new fs-level inode type as stored on disk. Touching this inode
fires up some mechanism (based I assume on the inode contents) that
then handles all vnode operations and can thereby appear as any
arbitrary kind of vnode/inode.

It is thus more or less a generalization of named pipes or device
special files, in the sense that these things are a magic fs-level
objects such that touching them fires up a non-fs kernel mechanism
that handles all subsequent vnode operations.

While this facility can be used as an automounter, in the case where
what the translator does is masquerade as a directory and mount a fs
on that directory, it's not really quite the same as a mount point.

Of course this may not be quite the same thing as what you have in
mind.

Naive question (since I haven't read any more than this thread yet):
does the implementation you're intending allow a translator to give
the appearance of itself being a (different) translator?

-- 
David A. Holland
dholland%netbsd.org@localhost


Home | Main Index | Thread Index | Old Index