A possible disadvantage is that the kernel can elect to kill a filesystem process to resolve virtual memory starvation, especially if the filesystem had recently been mounted. There is a small latency incurred waiting for the kernel to schedule the filesystem and then the FUSE daemon (or vice versa), but not a significant one. There are many advantages to implementing filesystems in userspace, foremost are ease of development (the kernel environment is significantly more restrictive and complex) and system robustness against buggy filesystems. Once you experience its awesomeness, you’ll wonder why they even bother with NFS anymore (for the record, there’s still many reasons why NFS is superior to sshfs, but not for casual use, where sshfs is just so much easier to use). It will be your Linux distributor’s responsibility to package the userspace FUSE components and any FUSE filesystems you might wish to use. The FUSE daemon does use sysfs for control operations (including aborting out of deadlocks, which can’t be fatal if we’re allowing userspace filesystems), but this is a very limited and stable interface. Basically (if this were to go down), when you make install a new kernel, it would install the corresponding version of udev. This is mainly for daemons that rely heavily on sysfs, which is not nearly as stable across kernel releases as is the system call interface. There has been some talk on LKML concerning moving some userspace code into the kernel source tree in order to keep them synchronized with the kernel. So it will never be merged into the kernel, because this doesn’t make sense. Filesystems developed for FUSE are not linked into the kernel image, do not run in the kernel address space, and don’t import any symbols from the kernel (besides the system call table). FUSE is short for “Filesystems in USErspace.” FUSE itself is in the kernel (available as a module), but it exports a simplified VFS interface to userspace. I think you’re misunderstanding something. Since it’s a fuse-driver, it will never be merged in the kernel (But maybe parts of it?).
0 Comments
Leave a Reply. |
Details
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |