Add a project idea relating to msdosfs.

This commit is contained in:
Robert Watson 2007-02-26 15:49:17 +00:00
parent d3b6b4aba9
commit a103f9ed36
Notes: svn2git 2020-12-08 03:00:23 +00:00
svn path=/www/; revision=29661

View file

@ -1,6 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//FreeBSD//DTD HTML 4.01 Transitional-Based Extension//EN" [
<!ENTITY base CDATA "../..">
<!ENTITY date "$FreeBSD: www/en/projects/ideas/index.sgml,v 1.90 2007/02/19 18:01:05 danger Exp $">
<!ENTITY date "$FreeBSD: www/en/projects/ideas/index.sgml,v 1.91 2007/02/21 23:09:54 joel Exp $">
<!ENTITY title "FreeBSD list of projects and ideas for volunteers">
<!ENTITY % navinclude.developers "INCLUDE">
<!ENTITY % developers SYSTEM "../../developers.sgml"> %developers;
@ -54,6 +54,7 @@
<li><a href="#p-extenddump">Extend dump/restore (extended attributes)</a></li>
<li><a href="#p-mdfs">MDFS lockups</a></li>
<li><a href="#p-tmpfs">TMPFS</a></li>
<li><a href="#p-msdosfs">FAT (msdosfs) infrastructure work</a></li>
</ul>
<h3>Kernel</h3>
@ -208,6 +209,32 @@
<hr>
<a name="#p-msdosfs"></a>
<h2>FAT (msdosfs) infrastructure work</h2>
<p><strong>Technical Contact</strong>: <a
href="mailto:rwatson@FreeBSD.org">&a.rwatson;</a></p>
<p>The FreeBSD FAT implementation, msdosfs, offers scope for a number of
projects:</p>
<ul>
<li>General cleanup.</li>
<li>Introduce appropriate locking to make the file system operate without
the Giant lock (MPSAFE).</li>
<li>Make msdosfs robust in the presence of unexpected disk removal, since
it is frequently used with removable devices.</li>
</ul>
<p>It is unclear to what extent the last of these items, arguably the most
useful, will require modifying surrounding infrastructure such as BIO,
GEOM, and VM.</p>
<p><strong>Requirements</strong>:</p>
<ul>
<li>Strong C programming skills.</li>
<li>Familiarity with concurrent programming techniques.</li>
<li>Familiarity with FAT file system layout.</li>
<li>Familiarity with virtual file system and virtual memory.</li>
</ul>
<hr>
<!------------------------------------------------------------------>
<!- Kernel ->
<!------------------------------------------------------------------>