World Library  
Flag as Inappropriate
Email this Article

Styx (protocol)

Article Id: WHEBN0001344009
Reproduction Date:

Title: Styx (protocol)  
Author: World Heritage Encyclopedia
Language: English
Subject: Inferno (operating system), Comparison of operating systems
Collection:
Publisher: World Heritage Encyclopedia
Publication
Date:
 

Styx (protocol)

For other uses, see 9P (disambiguation).

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 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.

A server implementation of 9P for Unix, called u9fs, is included in the Plan 9 distribution. A kernel client driver for Styx on a Brick project.

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 windowing system.
  • 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

  • 9P Resources page at cat-v.org.
  • 9P Manual
  • Dennis Ritchie.
  • The Organization of Networks in Plan 9 by Dave Presotto and Phil Winterbottom.
This article was sourced from Creative Commons Attribution-ShareAlike License; additional terms may apply. World Heritage Encyclopedia content is assembled from numerous content providers, Open Access Publishing, and in compliance with The Fair Access to Science and Technology Research Act (FASTR), Wikimedia Foundation, Inc., Public Library of Science, The Encyclopedia of Life, Open Book Publishers (OBP), PubMed, U.S. National Library of Medicine, National Center for Biotechnology Information, U.S. National Library of Medicine, National Institutes of Health (NIH), U.S. Department of Health & Human Services, and USA.gov, which sources content from all federal, state, local, tribal, and territorial government publication portals (.gov, .mil, .edu). Funding for USA.gov and content contributors is made possible from the U.S. Congress, E-Government Act of 2002.
 
Crowd sourced content that is contributed to World Heritage Encyclopedia is peer reviewed and edited by our editorial staff to ensure quality scholarly research articles.
 
By using this site, you agree to the Terms of Use and Privacy Policy. World Heritage Encyclopedia™ is a registered trademark of the World Public Library Association, a non-profit organization.
 


Copyright © World Library Foundation. All rights reserved. eBooks from Project Gutenberg are sponsored by the World Library Foundation,
a 501c(4) Member's Support Non-Profit Organization, and is NOT affiliated with any governmental agency or department.