seeking information about file system details.

Scott McGregor mcgregor at hemlock.Atherton.COM
Sat Aug 11 03:12:33 AEST 1990


I am curious as to how accesses to multiple concurrent types of file
systems are implemented under SysV and BSD.  I've read the Bach
book and the BSD book, as well as books on device drivers.  But what
I am more interested in is at the switchable file system layer.  Explanations
of what goes on in the following example are welcome, recommendations
of books that cover this stuff is even more heartily desired.

I know that mount takes a file type. I know how the file system
tree is traced using inodes, and I have heard of vnodes (which is
what I think I want  to know more about) but I haven't found anything
written on vnodes.  I am aware that several vendors support multiple
varieties of file systems (Bell, BSD, NFS, MS-DOS) all accessable on
the same system, and the files on them can be accessed using standard
o/s calls and stdio library routines.

I guess what I am interested in is if I have a non-unix file system
and I want to allow the this file system to be mounted as a unix
file system, and accessed using open, creat, read, write, close, et al,
what interface translators would I have to create between my own
file system and the unix system calls, and how and where would I
add typically add these translators.  I presume that a new type
would have to be tested for in mount, and that the open, etc. commands
would have to know what type of file system they were operating on
and that a case statement switch would have to be supported by them for each
new type of file system to be supported.  

Is this correct, or is there some other way that the switching  between
file systems is handled.   

Mail can be directed to: 

mcgregor at atherton.com or ...!sun!atherton!mcgregor

Scott McGregor
Atherton Technology



More information about the Comp.unix.wizards mailing list