Need help with the Filesystem

This forums is for OS project announcements including project openings, new releases, update notices, test requests, and job openings (both paying and volunteer).
Post Reply
david-h
Posts: 17
Joined: Sun Apr 08, 2007 5:48 am
Location: Frankfurt/Main, Germany
Contact:

Need help with the Filesystem

Post by david-h »

Hi,
my OS is making progress, but I have big problems implementing any filesystem like FAT or NTFS. Is here anyone who would help me implementing it?

Or anyone who knows a finished implementations of the functions fopen, fread etc.? I don´t want to copy/paste it, but I want to see how it works.

I´ve already read some docs about FAT, I thing I understood the basic theory, but I´m not able to implement 100% in C.

I hope anyone here can help me.

David
pcmattman
Member
Member
Posts: 2566
Joined: Sun Jan 14, 2007 9:15 pm
Libera.chat IRC: miselin
Location: Sydney, Australia (I come from a land down under!)
Contact:

Post by pcmattman »

I don't support writing yet (don't even write support in my disk driver), but if you look at my FAT32 driver on my CVS (under CPP_Kernel folder) I have an fopen() and an fread() function, plus necessary initialization. I also recommend the FAT docs Microsoft released.

As another hint, don't try NTFS yet. Even the Linux support is not complete yet (can't write or something like that?). Get FAT working (it is one of the simpler filesystems).
david-h
Posts: 17
Joined: Sun Apr 08, 2007 5:48 am
Location: Frankfurt/Main, Germany
Contact:

Post by david-h »

Thanks pcmattman,

I´ll take a look at your code. And then I´ll try to get fwrite working, if you want to do so I could send the function :wink:
pcmattman
Member
Member
Posts: 2566
Joined: Sun Jan 14, 2007 9:15 pm
Libera.chat IRC: miselin
Location: Sydney, Australia (I come from a land down under!)
Contact:

Post by pcmattman »

I'd prefer to do so myself, fwrite is an incredibly complex function as it has to handle resizing of files (which then involves messy FAT manipulation).

The code is public domain btw.
Post Reply