This article has multiple issues. Please helpimprove it or discuss these issues on thetalk page.(Learn how and when to remove these messages) (Learn how and when to remove this message)
|
| Communication protocol | |
| Purpose | Connecting components |
|---|---|
| Developer(s) | Bell Labs |
| Introduction | 1992; 34 years ago (1992) |
| Influenced | 9P2000 |
| Internet protocol suite |
|---|
| Application layer |
| Transport layer |
| Internet layer |
| Link layer |
9P (or thePlan 9 Filesystem Protocol orStyx) is anetwork protocol developed for thePlan 9 from Bell Labsdistributed operating system as the means of connecting the components of a Plan 9 system. Files are key objects in Plan 9. They representwindows,network connections,processes, and almost anything else available in the operating system.
9P was revised for the 4th edition of Plan 9 under the name9P2000, containing various improvements. Some of the improvements made are the removal of certain filename restrictions, the addition of a 'last modifier' metadata field for directories, and authentication files.[1] The latest version of theInferno operating system also uses 9P2000. The Inferno file protocol was originally called Styx, but technically it has always been a variant of 9P.
A server implementation of 9P for Unix, called u9fs,[2][3] is included in Plan 9. A 9POS X clientkernel extension is provided by Mac9P.[4] A kernel client driver implementing 9P with some extensions forLinux is part of thev9fs project. 9P and its derivatives have also found application in embedded environments, such as the Styx-on-a-Brick project forLego Mindstorms Bricks.[5]
Many of Plan 9's applications take the form of 9P file servers. Examples include:
Outside of Plan 9, the 9P protocol is still used when a lightweight remote file system is required: