9p filesystem has been added to FreeBSD
cgit.freebsd.org
cgit.freebsd.org
> The 9P filesystem protocol relies on stateful file opens which map protocol-level FIDs to host file descriptors. The FreeBSD vnode interface doesn't really support this and we use heuristics to guess the right FID to use for file operations. This can be confused by privilege lowering and does not guarantee that the FID created for a given file open is always used for file operations, even if the calling process is using the file descriptor from the original open call. Improving this would involve changes to the vnode interface which is out-of-scope for this import.
Where would you use something with such unreliable heuristics??
It's a great idea but really hope it's better now.
I.e. if your OS can mount 9p volumes you can implement a user filesystem easily by just running some process on localhost and mount it. And it also works remotely (although that's less useful IMO, although not entirely useless)
How different is it? I sorta had 9P and NFS as loosely equivalent in my head - both are network filesystems that let you mount a directory from one host to another.