在系统开发的下一步,我们打算首先支持FAT16和FAT32格式
请在下面这个网址下载关于FAT32的开源代码进行参考。
http://www.robs-projects.com/
FAT16格式的代码还在寻找中
在开发中,我们并不是移植别人的代码,而是重新设计数据结构和算法
其他的开源代码只是参考作用
补充:
今天和 cherry4 讨论了关于文件系统的一些问题,这些问题,也和金城以及其他人一起反复讨论过。
下面把一些常用的问题在这里列出来。(Q--question,A--answer)
1.Q:想加入文件系统的开发应该如何入手?
A:有两个方向,一个是从整体的文件系统框架入手,设计整体的文件系统结构(包括虚拟文件系统);另外一个是研究具体的某种文件系统,比如jffs,fat,并去实现基本的功能。
2.Q:微内核要把具体文件系统放到应用层,那文件系统的管理者,(我理解的虚拟文件系统层)在内核态还是应用层?
A:虚拟文件系统部分应该位于内核中。虚拟文件系统的核心作用,是面对多种文件系统,可以提供一个抽象表述。
3.Q:如果想参与整体的文件系统结构的设计,怎么办?
A:请和金城联系,他的邮箱是:
loocalvinci@gmail.com
4.Q:如果想开发具体的文件系统,那么文件系统的上下层接口是什么,文件系统在系统中的位置是怎么规划的?我不了解系统架构怎么办?
A:虚拟文件系统的核心作用,是面对多种文件系统,可以提供一个抽象表述。如果只研究具体某一种文件系统,那么虚拟文件系统就没有存在的意义了,文件系统的上下层接口也就不需要考虑。如果只开发具体的文件系统,那么可以把你开发的部分,看成是系统的全部,其他应用程序和内核作为你的文件系统的外延。应用程序向你请求,而内核为你提供必要的函数调用。其实由于是微内核的原因,实际也是这样。这就可以极大的简化外延,而注重内部的设计,包括底层驱动和上面的文件系统实现。当内核无法满足具体的文件系统要求的时候,请通知我
ruraliy.wq@gmail.com,或在论坛发表留言,我会尽快改善内核,来满足对文件系统的支持。
这样,我就修改内核来满足你的要求。
等积累到一定程度,我们再进行重新设计,把数据结构进行优化,让系统更好的运行。