2013-02-26 15 views
12

Ich interessiere mich für die 9P FS zu studieren, derzeit liest die Quelle von diesen Implementierungen: http://9p.cat-v.org/implementationsIst 9P veraltet?

Ist 9P veraltet? Verwenden Sie es für eine Anwendung?

(ebenfalls habe ich das gefunden, einige perfomance Test zwischen 9P und NFS: http://graverobbers.blogspot.com/2007/08/v9fs-performance-versus-nfs.html)

+1

Nie gesehen Plan 9 in Wut verwendet. Und AFAIU wurde von seinen Designern für Inferno aufgegeben. BTW, Linux enthält eine Implementierung. – vonbrand

+0

die Linux-Implementierung sieht gut aus, ich habe es auf zwei Hosts mit npfs getestet (http://sourceforge.net/projects/npfs/) –

+0

Was hat es veraltet gemacht? :-) Siehe auch Linux-Frage unter: https://superuser.com/questions/628169/how-to-share-a-directory-with-the-host-without-networking-in-qemu –

Antwort

8

Nein, 9P nicht überholt ist; Ich kenne kein Protokoll, das das tut, was es tut, und es ist sauber und klar genug, um es in fast jeder existierenden Sprache korrekt zu implementieren.

9P wird in einer Vielzahl von Systemen verwendet. Ein paar der jüngsten Anwendungen in Arm-js (an ARM emulator) und 9webdraw (a GSoC project that implements the Plan 9 /dev/draw). Beide Implementierungen HTML5 Javascript sind.

6

nur ein bisschen an, sowohl die Linux-Client-Implementierung und mehrere Server sind unter der aktiven Entwicklung, Ich würde sagen, das ist ein ziemlich klares Zeichen dafür, dass die Leute immer noch Gebrauch davon haben.Ein Bereich, der in letzter Zeit stark genutzt wurde, ist der virtio-9P (aka virtfs), der Teil von qemu/kvm ist und direkt verwendet werden kann Englisch: www.doc-o-matic.com/webhelp/TdlgEditE.html Es wird auch in mehreren experimentellen Betriebssystemprojekten (Libra, PROSE, FusedOS) und in anderen Betriebssystemen (BSD, MacOSX, Windows, Linux) und Hypervisoren (neben der oben genannten KVM - Instanz, seiner auch auf verschiedene Arten aufgenommen worden i nto Xen). 9P wird tatsächlich in Supercomputing-Bereitstellungen verwendet (sowohl für Plan 9 als auch für Linux, siehe das Diod-Projekt auf Sourceforge).

Ich denke, der Grund ist, dass das Protokoll ziemlich einfach ist, so Implementierungen sind auch eher einfach und leicht zu integrieren (es gibt mehrere Anwendungen innerhalb und außerhalb der Plan 9 Welt, die 9P als Schnittstelle zu verwenden Anwendung, ähnlich wie einige Webentwickler RESTful-Schnittstellen verwenden).

Das Protokoll hat ein paar verschiedene Varianten einschließlich der 9P.L-Variante, die speziell entwickelt wurde, um die Linux-VFS-API besser zu entsprechen. Es fügt dem Protokoll beim Hinzufügen von Operationen ein gewisses Maß an Komplexität hinzu, beseitigt jedoch einen Teil der Komplexität der Zuordnung von Linux VFS API -> 9P und umgekehrt.

3

Es wird in Erlang-on-Xen verwendet sowohl als Speicherprotokoll für goofs http://erlangonxen.org/blog/goofs-simple-filesystem

Es ist die Art und Weise erlang auf xen Fällen auch in anderer Hinsicht, siehe hier:

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

Es wird auch von libvirt mit QEMU verwendet.

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

9p, mir ist, wie das Schema von Netzwerkprotokollen. In den meisten Fällen ist es sehr einfach, aber die Leute sehen, dass es notwendig ist, es an ihre Umgebung anzupassen. Glücklicherweise geschieht dies auf Weisen, die oft rückwärtskompatibel sind.