Share on Facebook Share on Twitter Email
Answers.com

9P

 
The Internet Protocol Suite
Application Layer
BGP · DHCP · DNS · FTP · GTP · HTTP · IMAP · IRC · Megaco · MGCP · NNTP · NTP · POP · RIP · RPC · RTP · RTSP · SDP · SIP · SMTP · SNMP · SOAP · SSH · Telnet · TLS/SSL · XMPP · (more)
Transport Layer
TCP · UDP · DCCP · SCTP · RSVP · ECN · (more)
Internet Layer
IP (IPv4, IPv6) · ICMP · ICMPv6 · IGMP · IPsec · (more)
Link Layer
ARP/InARP · NDP · OSPF · Tunnels (L2TP) · PPP · Media Access Control (Ethernet, DSL, ISDN, FDDI) · (more)

9P (or the Plan 9 Filesystem Protocol or Styx) is a network protocol developed for the Plan 9 from Bell Labs distributed operating system as the means of connecting the components of a Plan 9 system. Files are key objects in Plan 9. They represent windows, network connections, processes, and almost anything else available in the operating system. Unlike NFS, 9P encourages caching and also serving of synthetic files (e.g. /proc to represent processes).

9P was revised for the 4th edition of Plan 9 under the name 9P2000 that contained various fundamental improvements. The latest version of the Inferno operating system also uses 9P2000. The Inferno file protocol was originally called Styx, but technically it has always been a variant of 9P.

Another variant, 9p2000.u, is a revision to better support Unix environments; see v9fs 9p2000.u. A server implementation of 9P for Unix, called u9fs, is included in the Plan 9 distribution. A kernel client driver for Linux is part of the v9fs project. 9P and its derivatives have also found application in embedded environments, such as the Styx on a Brick project.

Contents

Server applications

Many of Plan 9's applications take the form of 9P servers. Noteworthy examples include:

  • acme: a user interface for programmers
  • rio: the Plan 9 window manager.
  • plumber: interprocess communication
  • wikifs: a wiki

Implementation

9p sends the following messages between clients and servers.[1] These messages correspond to the entry points in the Plan 9 vfs layer that any 9p server must implement.

version
Negotiate protocol version
error
Return an error
flush 
Abort a message
auth, attach 
Messages to establish a connection
walk 
Descend a directory hierarchy
create, open 
Prepare a fid for I/O on an existing or new file
read, write 
Transfer data from and to a file
clunk 
Forget about a fid
remove
Remove a file from a server
stat, wstat 
Inquire or change file attributes

See also

References

External links


Search unanswered questions...
Enter a question here...
Search: All sources Community Q&A Reference topics
 
 
Learn More
Tetrasomy 9p
Malignant Melanoma: Causes and symptoms
List of highways numbered 9P

What is factor of 9p plus 27 equals? Read answer...
9P is the SS? Read answer...
9P IN SA? Read answer...

Help us answer these
9p - 12 24?
What is 9p in sf?
9p in a SD?

Post a question - any question - to the WikiAnswers community:

 

Copyrights:

Wikipedia. This article is licensed under the Creative Commons Attribution/Share-Alike License. It uses material from the Wikipedia article "9P" Read more