Yanıtlar:
Gerçek, diskteki dosya sistemlerini veya herhangi bir dosya sistemini kastediyorsanız olumlu değilim. Mümkün olduğunu düşünmeme rağmen normal bir dosya sisteminin FUSE kullandığını hiç görmedim; FUSE ürününün ana yararı, dosya sistemine benzeyen uygulamalara (veya kullanıcıya) bir şey sunmanıza izin verir, ancak kullanıcı bir dizindeki dosyaları listelemek veya yeni bir dosya oluşturmak gibi şeyler yapmaya çalıştığında gerçekten uygulamanızdaki işlevleri çağırır. dosya. Plan9 , dosya sistemi aracılığıyla her şeyi erişilebilir hale getirmeye çalıştığı iyi bilinir ve /proc
sözde dosya sistemi bunlardan gelir; FUSE, uygulamaların bu kalıbı kolayca takip etmesinin bir yoludur
Örneğin, SE site verilerine erişim sağlayan (çok özelliksiz) bir FUSE dosya sisteminin ekran görüntüsü:
Doğal olarak bu dosyaların hiçbiri aslında mevcut değildir; ne zaman ls
kullanıcı 73 hakkında yük bilgilere bu siteye bir API isteği yaptılar benim programda bir işlev çağrıldığında dizin FUSE dosyaların listesini istedi (me); önbelleğe alınmış verileri bellekten, diskte gerçekte hiçbir şey olmadan döndüren daha fazla işlev cat
okumaya display_name
ve website_url
çağırmaya
Unix dosya sistemleri geleneksel olarak çekirdeğe uygulanır. FUSE , dosya sistemlerinin bir kullanıcı programı tarafından uygulanmasına izin verir.
Çekirdek dosya sistemleri, programlar ve veriler için ana dosya sistemleri için daha uygundur:
FUSE dosya sistemlerinin, çoğunlukla esneklikleri etrafında dönen başka avantajları vardır:
FUSE gerçekten bir dosya sistemi değil, dosya sistemlerinin çekirdek modülleri yerine süreç olarak uygulanmasına izin veren kod.
SİGORTA'nın en yararlı faydalarından biri, GPL kodunun GPL olmayan bir kodla "karışmasına" izin vermektir. Örneğin, OpenSolaris ve * BSD gibi birçok işletim sisteminde Gnu / Linux ve ZFS http://zfs-fuse.net/ veya NTFS-3G http://www.tuxera.com/community/ntfs-3g-download/
Ana dezavantajı, yerel (çekirdek) sürücülere kıyasla performans etkisidir.