Filesystem and System's Kernel
Filesystem and System's Kernel
Hey there guys.
After much reading and failure i managed to assemble a little kernel that is able to jump to 64bit mode (x86-64) but the thing is that i understood that i cant load my kernel by reading the harddrive (and in my case, my usb stick that i use temorarily) endelssly since the kernel will always grow bigger (more reads, more modifications to the boot stages...)
The question is: Is there any efficient filesystem that i can implement in my 2nd stage boot loader (where i make the final jump to 64bit mode) to implement so that i store my files and load them ? And some help in implementation would be much appreciated
Thanks in advance
After much reading and failure i managed to assemble a little kernel that is able to jump to 64bit mode (x86-64) but the thing is that i understood that i cant load my kernel by reading the harddrive (and in my case, my usb stick that i use temorarily) endelssly since the kernel will always grow bigger (more reads, more modifications to the boot stages...)
The question is: Is there any efficient filesystem that i can implement in my 2nd stage boot loader (where i make the final jump to 64bit mode) to implement so that i store my files and load them ? And some help in implementation would be much appreciated
Thanks in advance
- mathematician
- Member
- Posts: 437
- Joined: Fri Dec 15, 2006 5:26 pm
- Location: Church Stretton Uk
- AndrewAPrice
- Member
- Posts: 2300
- Joined: Mon Jun 05, 2006 11:00 pm
- Location: USA (and Australia)
What is the license behind FAT? MS owns all our code because we can read from a FAT partition?Combuster wrote:and free of the legal blabla that comes with FAT, but more difficult.
My OS is Perception.
Hi,
AFAIK FAT itself isn't patented, and anyone is free to implement code that supports it. However, Microsoft's "long file name extensions" to FAT are patented, so you're limited to 11 ASCII characters.
@Icydemon: For me *something* loads a boot image into memory, gets information from whatever firmware is present, puts the computer into a well defined state then passes control to the OS's Boot Manager. The OS itself doesn't care if it came from contiguous sectors, from some sort of filesystem somewhere, from a DHCP/TFTP server on the network, from ROM, etc; and also doesn't care if the firmware was PC BIOS, EFI, LinuxBIOS, a custom embedded ROM, etc.
Cheers,
Brendan
AFAIK FAT itself isn't patented, and anyone is free to implement code that supports it. However, Microsoft's "long file name extensions" to FAT are patented, so you're limited to 11 ASCII characters.
@Icydemon: For me *something* loads a boot image into memory, gets information from whatever firmware is present, puts the computer into a well defined state then passes control to the OS's Boot Manager. The OS itself doesn't care if it came from contiguous sectors, from some sort of filesystem somewhere, from a DHCP/TFTP server on the network, from ROM, etc; and also doesn't care if the firmware was PC BIOS, EFI, LinuxBIOS, a custom embedded ROM, etc.
Cheers,
Brendan
For all things; perfection is, and will always remain, impossible to achieve in practice. However; by striving for perfection we create things that are as perfect as practically possible. Let the pursuit of perfection be our guide.
Brendan is correct, any patent to FAT itself is long expired, if there ever was one. The LFN thing is a patent on the precise way that LFNs are stored in MSDOS v6 directory structures -- so you are not supposed to implement/write, or try to read DOS/Windows directory structures -- without paying a license fee to M$. (And, yes, I have read the patent itself.) The LFN patent expires in less than 6 years.
It is a common oversimplification in the programmer community to say that FAT is patented.
It is a common oversimplification in the programmer community to say that FAT is patented.
- Brynet-Inc
- Member
- Posts: 2426
- Joined: Tue Oct 17, 2006 9:29 pm
- Libera.chat IRC: brynet
- Location: Canada
- Contact:
I don't think Microsoft is actively suing people who have implemented support for FAT with LFN yet though...
IMHO, It's "legally cloudy"... but how enforceable are software patents outside of the USA anyway?
BTW, The SFS project is dead or inactive now right? perhaps that one should have been advocated more..
IMHO, It's "legally cloudy"... but how enforceable are software patents outside of the USA anyway?
BTW, The SFS project is dead or inactive now right? perhaps that one should have been advocated more..
- Combuster
- Member
- Posts: 9301
- Joined: Wed Oct 18, 2006 3:45 am
- Libera.chat IRC: [com]buster
- Location: On the balcony, where I can actually keep 1½m distance
- Contact:
A proper implementation of FAT will indeed suffer from the patent issue, so it isn't really an oversimplification. There are patents governing aspects of FAT. Besides the OP's post count is still at one so I wanted to spare him the recently posted "legal blabla" by sticking to the short answer.bewing wrote:It is a common oversimplification in the programmer community to say that FAT is patented.
I am well aware of the fact that the patent in question deals with LFNs only
I promote it at the chance I get, but I do stay realistic about it as in not taking a 100 watt amp and proclaiming its the best thing since superscalar architectures.Brynet-Inc wrote:BTW, The SFS project is dead or inactive now right?
Also, there's a link in both candy's and my signature.
Once my OS will be able to support VFS and everything, SFS will be the second FS on the todo list. I am still hoping that an implementation for comparison will be available at the time instead of having on the correctness of my current implementation.
- crazygray1
- Member
- Posts: 168
- Joined: Thu Nov 22, 2007 7:18 pm
- Location: USA,Hawaii,Honolulu(Seriously)
Why does everybody have to be interested in suing everybody else?!!I don't think Microsoft is actively suing people who have implemented support for FAT with LFN yet though...
Why can't programmers just write their bloody code and get on with life without worrying about breaking some patent or license??!!
Open Source RULES!!!
Propriety MUST BURNNN!!!!!
Ok I'll chill out now...
Codname: Cipher
Working On: Design Doc(CFFS file system)
Working On: Design Doc(CFFS file system)
Ok ok I got it :)
Since im focusing on other things from the beginning and dont want to implement a thing, then change it to another etc. etc. Im focusing on writting an EXT3 Driver for the Filesystem (this is the goodnews)
The bad news is that i am not sure if it is My best option i got out there and as far as i have read there are a bunch of filesystems that provide different things.
On the FAT thingie, yep, it easy i checked it out myself. On the other hand it is stupid (for me atleast) to have a 64bit OS with FAT(omg) support. Yes, at a point it will include fat support to read old HDDs and to be backward compatible with old systems but no, i dont wanna boot from a fat partition.
On the EXT(Put your number here) thingie: I believe it is the only Filesystem that i could implement in my OS (and i'll have some compatibility with my dev machine since i run linux there), but on the other hand there will be a long time before i implement a M$ FS driver to read and write them.
Thank you all for the comments
The bad news is that i am not sure if it is My best option i got out there and as far as i have read there are a bunch of filesystems that provide different things.
On the FAT thingie, yep, it easy i checked it out myself. On the other hand it is stupid (for me atleast) to have a 64bit OS with FAT(omg) support. Yes, at a point it will include fat support to read old HDDs and to be backward compatible with old systems but no, i dont wanna boot from a fat partition.
On the EXT(Put your number here) thingie: I believe it is the only Filesystem that i could implement in my OS (and i'll have some compatibility with my dev machine since i run linux there), but on the other hand there will be a long time before i implement a M$ FS driver to read and write them.
Thank you all for the comments
Working atm on: Frozen Core (OS) and sensya (AI Project)