Custom File System for Linux
I have a production Solaris system that stores 4k chunks of text in really
big (2gig) files.
I have a new customer that would like access to the text as lots of 4k files,
that can be accessed with standard fopen, fread, fwrite.
Could a custom Linux filesystem be written that could map the big files into
virtual small files? I've read that writing filesystems for Solaris is not
documented, that's why Linux's open source approach is appealing.
If this is possible, could you tell me were to get started?
Re: Custom File System for Linux
Brian <firstname.lastname@example.org> wrote in message
> I have a production Solaris system that stores 4k chunks of text in really
> big (2gig) files.
> I have a new customer that would like access to the text as lots of 4k
> that can be accessed with standard fopen, fread, fwrite.
> Could a custom Linux filesystem be written that could map the big files
> virtual small files? I've read that writing filesystems for Solaris is not
> documented, that's why Linux's open source approach is appealing.
> If this is possible, could you tell me were to get started?
It is certainly possible to write your own file systems for Linux, the wide
range of file systems available are testament to that.
From the sound of it the features required for your production server are
fairly simple, it is not as if you are going to need to implement a
general purpose file system.
To get started, take a look at the Filesystems HOWTO, you can get to it
Rather than delve into the depths of the kernel and write a complete
from scratch, you should perhaps take a look at some other options. One that
might prove fruitful is userfs, a way to write filesystems in user space,
is ordinary processes can appear as file systems. You can catch up with the
latest developments of this approach here:
Currently Linux has a file size limit of 2Gb, so if you need to go bigger
this you may need to look at your own device driver and emulate a
One approach might be to replace fopen and fclose in the application
by preloading some of your own code in a shared object) and use a device
to seek inside a raw disk partition to get to the 4K block you need.
Hope this helps
Neil and Rick
By german aracil boned in forum Open Source
Last Post: 08-24-2003, 06:07 PM
By Sai in forum VB Classic
Last Post: 10-14-2001, 01:11 PM
By Tomer Cagan in forum ASP.NET
Last Post: 07-24-2001, 10:01 AM
By erictn in forum Enterprise
Last Post: 01-26-2001, 07:40 PM
By Anitha in forum authorevents.kurata
Last Post: 04-18-2000, 01:02 PM
Top DevX Stories
Easy Web Services with SQL Server 2005 HTTP Endpoints
JavaOne 2005: Java Platform Roadmap Focuses on Ease of Development, Sun Focuses on the "Free" in F.O.S.S.
Wed Yourself to UML with the Power of Associations
Microsoft to Add AJAX Capabilities to ASP.NET
IBM's Cloudscape Versus MySQL