2008-10-18 107 views

回答

12

Windows NT File System Internals作者:Rajeev Nagar。

OSR在線的文件系統資源頁面(和OSR網上一般):

的NTFSD郵件列表/論壇(也由OSR主持):

而與Vista開始,Windows驅動程序工具包(WDK),它曾經被稱爲DDK中,現在包括可安裝文件系統(IFS)工具包:

剛擡起頭 - Windows文件系統開發非常複雜,因爲文件系統與Windows內存管理器緊密集成。這是人們致力於事業的一種東西。只要你有一個想法你可能會進入。

5

您可以嘗試Windows Hardware Developer Central,該鏈接指向驅動程序作者的博客,新聞組,書籍和其他有用資源。

我還建議下載並安裝Windows DDK並探索一些包含的示例。應該有各種骨架驅動程序,可以用作自定義工作的起點。

1

Windows執行ext2文件系統的source code可能會有用。
但正如Mike B正確提到這是非常複雜的區域進入,我強烈建議學習一些基本的驅動程序開發概念,並在開始文件系統驅動程序開發之前編寫幾個而不是文件系統驅動程序。
如果你這樣做是商業用途,而不是爲了學習的目的,我會建議外包這項工作。這將是最具成本效益的方式去。

1

本書: http://www.amazon.com/Windows-2000-Device-Driver-Book/dp/0130204315/ref=sr_1_1?ie=UTF8&s=books&qid=1246856381&sr=8-1

或任何你可以通過藝術貝克找到新的書。我大約在10年前閱讀過他的NT設備驅動程序書,它終於明白了一切。

順便說一句,從10年前或更多/更少的書仍然有效。你不能使用這些例子,但模型基本上沒有改變 - 在典型的M $時尚中變得更加複雜。IRP的東西仍然有效。

OSR的東西不錯 - 但價格昂貴......我認爲要全面瞭解整個設計貝克不能被打敗。此外,任何人只是想學習Windows驅動程序 - 我會避免NTFS的東西...它的超級複雜,並且與完成簡單的USB驅動程序甚至DMA設備所需的內容無關。

1

要添加一些用戶模式文件系統驅動程序的開發選項:

  • Dokan - 開源,與C,.NET,Java和Ruby的,FUSE接口。
  • CBFS(回撥文件系統) - 商業,具有良好的文檔。

這些解決方案的工作就像FUSE(用戶模式軟件文件系統爲Linux)。他們在內核中完成所有複雜的工作,並將適應性要求傳遞給用戶模式應用程序。

Dokan缺乏當前版本的某些功能,但我認爲它比添加所需的功能更容易,而不是從頭開始創建文件系統驅動程序。

Dokan也是內核模式驅動程序代碼的一個很好的例子。