From mboxrd@z Thu Jan 1 00:00:00 1970 From: lyndon@orthanc.ca (Lyndon Nerenberg) Date: Sun, 26 Mar 2017 09:26:00 -0700 Subject: [TUHS] Were all of you.. Hippies? In-Reply-To: <20170326031122.E18D418C097@mercury.lcs.mit.edu> References: <20170326031122.E18D418C097@mercury.lcs.mit.edu> Message-ID: <072F8CE1-5E54-46E5-BFAC-65952330B863@orthanc.ca> > On Mar 25, 2017, at 8:11 PM, Noel Chiappa wrote: > > I can't wait to see how you all fit remote procedure calls into a file > paradigm. For a simple example, see http://plan9.bell-labs.com/magic/man2html/4/ftpfs . This uses the usual filesystem interface to the network stack to manage the underlying TCP connections. The FTP protocol is implemented inside the ftpfs fileserver process which itself exports a directory into the filesystem namespace. Fileservers are the natural representation of RPC protocols in plan9, and they work quite well. Of course, not everything will naturally map to a filesystem namespace. But a surprisingly large number of things will, given some thought to the problem. http://plan9.bell-labs.com/sys/doc/names.pdf is a must-read to appreciate the nuances of how this works. --lyndon P.S. A fun example of the simplicity of the plan9 network API is this implementation of rlogin: http://plan9.bell-labs.com/sources/contrib/rsc/rlogin