^--programming--^ superblocks-->

How to write a Linux VFS filesystem module

March 4, 2004


The purpose of the webpage is to describe the steps I went through to learn how to write my own Linux VFS filesystem module. I'm writing it in here to document it for myself and for others who might be interested in doing the same thing. I'm afraid I won't explain any C programming methods here, as I already know those, so if you aren't able to follow along in the code that I present or write, you might want to find a C tutorial to follow along.

This is a work in progress until I take this statement out, so it can change often or rarely, and may not have much structure unless I go back and give it some. Think of it as a diary or journal on my quest to learn about VFS.

Introduction to VFS

This is where I'll eventually write about what VFS is, but since I don't know that much, I'm leaving it out for the time being.

Learning the internals of VFS

To learn the VFS, I'm looking at the source code for two of the Linux system modules: ramfs and romfs. They can be found in /usr/src/linux/fs/ramfs and /usr/src/linux/fs/romfs, and each directory has a file called inode.c. These are the files that I'm going to be stepping through as examples of existing VFS modules.

I've broken down my tasks into separate modules.

Here's my staticfs VFS module as of April 14, 2004.
^--programming--^ superblocks-->
©2002-2021 Wayne Pearson