9P已经过时了吗?

时间:2013-02-26 02:39:36

标签: filesystems plan-9

我有兴趣研究9P FS,目前正在阅读这些实现中提供的资源:http://9p.cat-v.org/implementations

9P过时了吗?你在某些应用中使用它吗?

(我也发现了这一点,在9P和NFS之间进行了一些性能测试:http://graverobbers.blogspot.com/2007/08/v9fs-performance-versus-nfs.html

4 个答案:

答案 0 :(得分:13)

不,9P不会过时;我不知道一个协议能做它做的事情,并且干净且定义得足以在几乎任何存在的语言中正确实现。

9P用于各种系统。最近在 arm-js an ARM emulator)和 9webdraw a GSoC project that implements the Plan 9 /dev/draw)中使用了两种。两者都是HTML5 Javascript实现。

答案 1 :(得分:10)

只是添加一点,Linux客户端实现和几个服务器都在积极开发中,所以我说这是一个非常清楚的迹象,人们仍然可以使用它。其最近被广泛使用的领域之一是virtio-9P(又名virtfs),它是qemu / kvm的一部分,可用于直接访客来托管文件访问。它也被用于几个实验操作系统项目(Libra,PROSE,FusedOS)并并入其他操作系统(BSD,MacOSX,Windows,Linux)和管理程序(除了上面的KVM实例,它也以各种方式合并)进入Xen)。 9P实际上用于超级计算部署(适用于Plan 9和Linux,请参阅Sourceforge上的diod项目)。

我认为原因是协议非常简单,因此实现也很容易在其他地方集成(Plan 9世界内外都有几个应用程序使用9P作为应用程序的接口,与一些Web开发人员使用RESTful接口的方式大致相同。

该协议有几个不同的变体,包括9P.L变体,它是专门为更好地匹配Linux VFS API而开发的。它在添加操作时增加了协议的一些复杂性,但消除了映射Linux VFS API的一些复杂性 - > 9P,反之亦然。

答案 2 :(得分:5)

它在Erlang-on-Xen中用作goofs的存储协议http://erlangonxen.org/blog/goofs-simple-filesystem

在其他方面也是xen实例上的erlang方式,请参见此处:

http://erlangonxen.org/more/9p2000e

此外,它还被libvirt用于QEMU。

http://wiki.qemu.org/Documentation/9psetup

对我来说,9p就像网络协议方案。在大多数情况下,它非常简单,但人们认为需要扩展它以适应他们的环境。幸运的是,这是通过向后兼容的方式完成的。

答案 3 :(得分:1)

除了其他答案中提到的所有内容外,Microsoft is using 9P还作为其Windows Linux子系统的一部分。

他们向以来宾身份运行的每个Linux发行版添加9P服务器,以便Windows可以在9P之上安装Linux文件系统,并且Windows进程可以透明地访问Linux ext4分区上的文件。

相关问题