FileSystem...

Question about which tools to use, bugs, the best way to implement a function, etc should go here. Don't forget to see if your question is answered in the wiki first! When in doubt post here.
Post Reply
ZetItUp

FileSystem...

Post by ZetItUp »

Okej!
As the topic says.. FileSystem.
I want to create my very own FS(not like anyone elses)
so heres some questions:

1. Where can i find information about everything i need to know? :/
2. Which language is the best for FS Dev.. ASM or C?
3. How to make my os able to use it?

Hopes for some arrows to the right direction! ;D
mystran

Re:FileSystem...

Post by mystran »

1. Google
2. Whatever you know best. Haskell might not be a bad choice actually.
3. Depends on your OS, but it generally involves writing code.
User avatar
Candy
Member
Member
Posts: 3882
Joined: Tue Oct 17, 2006 11:33 pm
Location: Eindhoven

Re:FileSystem...

Post by Candy »

mystran wrote: 1. Google
2. Whatever you know best. Haskell might not be a bad choice actually.
3. Depends on your OS, but it generally involves writing code.
1 addon. Maybe another search engine,parts of wikipedia, this site with loads of information, the local library...
2. Haskell is a nice choice for academic studies into the efficiency of the fs itself, and for infinite fses (which you obviously can't place on a physical disk). For anything practical I'd advise c++ or C, c++ only if your framework can support it and if you're fluent in it.
3. Design something to handle the file system, then write code to actually implement the design, test that. Distribute it.
distantvoices
Member
Member
Posts: 1600
Joined: Wed Oct 18, 2006 11:59 am
Location: Vienna/Austria
Contact:

Re:FileSystem...

Post by distantvoices »

If I were you, I'd first get my hands dirty by implementing a virtual file system layer and then some drivers for existing file systems (ext2 is a good exercise - steep learning curve, but once you've got the knack goes like butter over hot toast)

My predecessors have valid points. ];->.

May I give you some additional advice: sketch what you wanna do on a sheet o' paper or two. It won't hurt (except if you dare to run the edge of paper along your skin) and will give you insight in your thinking - /dev/brain can be a fluffy, cloudy thing when it comes to keeping thoughts together.

ah. this brings me to an idea. Maybe I gonna implement some joke in my deviceFS driver - a /dev/brain device. *rofl*
... the osdever formerly known as beyond infinity ...
BlueillusionOS iso image
User avatar
Pype.Clicker
Member
Member
Posts: 5964
Joined: Wed Oct 18, 2006 2:31 am
Location: In a galaxy, far, far away
Contact:

Re:FileSystem...

Post by Pype.Clicker »

iirc, there's a book explaining the design of BeOS filesystem (BeFS) available somewhere online... Even if you will to implement your own filesystem, that book may be a treasure, esp. if you are not fluent with inodes, index blocks, allocation bitmaps and things alike yet.

From that, and considering what we've done at school here, i'd suggest you approach it "one stone at a time": first try to provide a interfaces that looks like a pool of free blocks: pick and release blocks from the pools ... Then add logic to chain blocks together: that will be your base for files and directories.

once you got that, all you still need is storing "informations about the files" in the directory ...
User avatar
Candy
Member
Member
Posts: 3882
Joined: Tue Oct 17, 2006 11:33 pm
Location: Eindhoven

Re:FileSystem...

Post by Candy »

beyond infinity wrote: May I give you some additional advice: sketch what you wanna do on a sheet o' paper or two. It won't hurt (except if you dare to run the edge of paper along your skin) and will give you insight in your thinking - /dev/brain can be a fluffy, cloudy thing when it comes to keeping thoughts together.

ah. this brings me to an idea. Maybe I gonna implement some joke in my deviceFS driver - a /dev/brain device. *rofl*
You could offer a brain expansion as a "plug-in", just like in the matrix :D

Note, *FS design already took around 20 pages and is still growing. Don't be afraid to use more paper. A piece of paper costs around 5c if you take expensive paper. Not having your design clear costs around three hour per non-present paper. More if you're not experienced.

I keep spending pieces of paper here to explain concepts to others :)
distantvoices
Member
Member
Posts: 1600
Joined: Wed Oct 18, 2006 11:59 am
Location: Vienna/Austria
Contact:

Re:FileSystem...

Post by distantvoices »

Oh, using more paper if desired isn't a bad thing (tm) If I'd count the amount of Paper I have used for the design and layout for the VFS layer in my FS service, believe me, i wouldna come to a green twig, so many sheets I've used.

[ot]@candy:and already have a driving license? Here in austria they wanna introduce small master-card formatted driving licenses. Funny stuff. For ten years now I'm competent to ride car/motorbike - and then this. My poor driving license.[/ot]
... the osdever formerly known as beyond infinity ...
BlueillusionOS iso image
User avatar
Pype.Clicker
Member
Member
Posts: 5964
Joined: Wed Oct 18, 2006 2:31 am
Location: In a galaxy, far, far away
Contact:

Re:FileSystem...

Post by Pype.Clicker »

$> mount /dev/brain /mind
IdeaFS 1.0 error ... bad superblock

$> fsck /dev/brain
replaying logs ...


Image

<copyright> i have limited copyright for that composition made of initial images by Alpha KX and deaddreamer.com ... don't reuse in productions, or commercials, but feel free to set it up for your desktop wallpaper </copyright>
User avatar
Candy
Member
Member
Posts: 3882
Joined: Tue Oct 17, 2006 11:33 pm
Location: Eindhoven

Re:FileSystem...

Post by Candy »

beyond infinity wrote: [ot]@candy:and already have a driving license? Here in austria they wanna introduce small master-card formatted driving licenses. Funny stuff. For ten years now I'm competent to ride car/motorbike - and then this. My poor driving license.[/ot]
Need to get this to a different thread :)

[ot@bi]Yup, got it last friday, 6 days ago... first try. They want to replace it with a credit card-ish thing here too, but only in 2015... so my pink piece of paper is safe for now... :) The change is eu-wide btw, so everybody here (including the <18 year olds who aren't legally allowed to drive yet) from europe will probably feel it.[/ot]

[ot@pype]
Do you have the copyright on that image? It's cool :)
[/ot]

On topic now,

If you are interested in discussing filesystem design live, I'd love to get into contact on icq or if you must msn. Can't wait to discuss it with somebody else interested in it :)
User avatar
Pype.Clicker
Member
Member
Posts: 5964
Joined: Wed Oct 18, 2006 2:31 am
Location: In a galaxy, far, far away
Contact:

Re:FileSystem...

Post by Pype.Clicker »

@candy: that'd be a kewl logo for StarFS, ain't it ? just add "42" with a nice font somewhere and voil? ...

btw, i've popped up with my "clustered containers" idea again ... i'll add this in *FS wiki ...

http://clicker.sourceforge.net/wiclicke ... redStorage

it's now done ;)
User avatar
bubach
Member
Member
Posts: 1223
Joined: Sat Oct 23, 2004 11:00 pm
Location: Sweden
Contact:

Re:FileSystem...

Post by bubach »

OT:
so my pink piece of paper is safe for now...
Erm.. Do you use a paper as a drivers licence? In sweden thats only valid until you get the standard credit card-type (after a week or so, by mail), and it have always been like that..
Can't be very secure? Or have i missed something? ;)

to be continued... http://www.mega-tokyo.com/forum/index.p ... eadid=7388
"Simplicity is the ultimate sophistication."
http://bos.asmhackers.net/ - GitHub
Post Reply