2 ms·
The File System is Unpredictable (2009)
- PaulHoule 6y agoThe file system is long in the tooth as an API and nobody notices. Consider this: http://doc.cat-v.org/plan_9/4th_edition/papers/fs/#:~:text=The%20Plan%209%20file%20system%20server%20is%20made,kernel%20has%20no%20user%20processes%20or%20virtual%20memory http://doc.cat-v.org/plan_9/4th_edition/papers/fs/#:~:text=T.... a file system interface for a microkernel that's really micro. If you wanted to connect to a 9P fileserver with a Python program or any normal programming language you could be quickly opening and reading files. FUSE, on the other hand, supports the full performance of a Linux filesystem but don't even think about connecting to one from a normal application: http://libfuse.github.io/doxygen/fast17-vangoor.pdf http://libfuse.github.io/doxygen/fast17-vangoor.pdf FUSE has a close coupling to Linux because, for performance's sake, filesystems are closely coupled to their operating systems. Microsoft tried to emulate the behavior of the Linux filesystem in WSL and succeeded in every respect except for performance -- Linux devs have a higher expectation for the speed of file system metadata operations that Windows couldn't possibly attain because of the fudnamental design... They have to run a whole Linux kernel just to access the one thing, the filesystem, that Micrsoft can't emulate fast enough!