What Does 9P Mean?
9P is a network protocol developed by Bell Labs which serves as a means to connect the components of a Plan 9 system. The Plan 9 system is a distributed OS designed to serve as a platform for research purposes. It represents all system interfaces through the file system. The files are regarded as the key objects and used to represent windows, network connections, processes and user interfaces.
This term is also known as Plan 9 File System Protocol, 9P2000 or Styx.
Techopedia Explains 9P
The 9P protocol provides a means to access and manipulate resources and applications transparently in a distributed environment. It is used for messages between clients and servers. The client transmits requests in the form of T-messages to a server. The server replies in the form of R-messages to the client. This process of transmitting a request and receiving replies is known as a transaction. These messages relate to the entry points and must be implemented by any 9P server.
The 9P protocol works both as a distributed file system and as a network-transparent and language-agnostic application programming interface. The revised 4th edition of 9P was released under the name 9P2000 and focused on basic improvements. 9P2000 is widely implemented on the latest version of the Inferno OS. The Inferno File Protocol is a variant of 9P, also known as Styx, which was developed for the Plan 9 OS.
The idea behind developing 9P was to encode file operations between client programs and the file system, allowing translated messages to be sent over a network. Plan 9 uses this technology to separate the file server from the CPU server and the user terminals. The Plan 9 distribution includes a 9P server implementation known as u9fs.
Some of Plan 9’s applications, which take the form of 9P servers, include acme, rio, plumber and wikifs. The 9P protocol and its derivatives are used in embedded environments, such as the Styx on a Brick Project.