複製鏈接
請複製以下鏈接發送給好友

FUSE

(用户空間文件系統)

鎖定
用户空間文件系統(Filesystem in Userspace),是Linux 中用於掛載某些網絡空間,如SSH,到本地文件系統的模塊,在SourceForge上可以找到相關內容。
中文名
用户空間文件系統
外文名
Filesystem in Userspace
英文縮寫
FUSE
找尋方式
網上登錄SourceForge

FUSE文件系統

使用 FUSE 您可以開發功能完備的文件系統:其具有簡單的API 庫,可以被非特權用户訪問,並可以安全的實施。更重要的是,FUSE 以往的表現充分證明了其穩定性。
使用FUSE,您可以像可執行二進制文件一樣來開發文件系統,它們需要鏈接到FUSE 庫上—— 換言之,這個文件系統框架並不需要您瞭解文件系統的內幕和內核模塊編程的知識。
就文件系統來説,用户空間的文件系統就不再是新奇的設計了。用户空間文件系統的商業實現與學術實現的實例包括:
LUFS是一個混合用户空間的文件系統框架,它對用於任何應用程序無數的文件系統提供透明支持。大部分LUFS包括一個內核模塊和一個用户空間守護進程。從根本上來説,它將大部分VFS 調用都委託給一個專用的守護進程來處理。 UserFS 讓用户進程可以像普通的文件系統一樣進行加載。這種概念性的原型提供了 ftpfs,這可以使用文件系統接口提供匿名 FTP 訪問。Ufo Project 是為 Solaris 提供的一個全局文件系統,它允許用户將遠程文件真正當作本地文件一樣對待。OpenAFS 是 Andrew FileSystem 的一個開源版本。 CIFS 是 Common Internet FileSystem 的簡稱。
與這些商業實現和學術實現不同,FUSE 將這種文件系統的設計能力帶到了Linux 中來。由於FUSE 使用的是可執行程序(而不像 LUFS 一樣使用的是共享對象),因此可以簡化程序的調試和開發。FUSE 可以在 2.4.x 和 2.6.x 的內核上使用,現在可以支持 Java™ 綁定,因此您可以不必限定於使用C 和 C++ 來編寫文件系統了。(有關更多使用 FUSE 的用户層的文件系統的內容。)
要在 FUSE 中創建一個文件系統,您需要安裝一個 FUSE 內核模塊,然後使用 FUSE 庫和 API 來創建自己的文件系統。

FUSE系統概念

用户空間文件系統Filesystem in Userspace,簡稱FUSE)是操作系統中的概念,指完全在用户態實現的文件系統。目前Linux通過內核模塊對此進行支持。一些文件系統如glusterfs和lustre使用FUSE實現。
Linux用於支持用户空間文件系統的內核模塊名叫FUSE,FUSE一詞有時特指Linux下的用户空間文件系統。
是一個通用操作系統重要的組成部分。傳統上操作系統在內核層面上對文件系統提供支持。而通常內核態的代碼難以調試,生產率較低。
Linux從2.6.14版本開始通過FUSE模塊支持在用户空間實現文件系統。
用户空間實現文件系統能夠大幅提高生產率,簡化了為操作系統提供新的文件系統的工作量,特別適用於各種虛擬文件系統網絡文件系統。上述ZFSglusterfs都屬於網絡文件系統。但是,在用户態實現文件系統必然會引入額外的內核態/用户態切換帶來的開銷,對性能會產生一定影響。

FUSE運行機制

目前LinuxFreeBSD,NetBSD,OpenSolaris和Mac OSX支持用户空間態文件系統。
語法標註解釋fuse英音:[fju:z]美音:[fjuz]