9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
From: Nathaniel W Filardo <nwf@cs.jhu.edu>
To: Fans of the OS Plan 9 from Bell Labs <9fans@9fans.net>
Subject: Re: [9fans] sendfd() on native Plan 9?
Date: Wed, 24 Dec 2008 02:36:06 -0500	[thread overview]
Message-ID: <20081224073606.GS9593@masters10.cs.jhu.edu> (raw)
In-Reply-To: <2967b3806a673eba836c697c763ab61b@quanstro.net>

[-- Attachment #1: Type: text/plain, Size: 2261 bytes --]

On Tue, Dec 23, 2008 at 11:14:16PM -0500, erik quanstrom wrote:
> > All of the same comments apply to /srv (though srv^2 is trying to solve
> > this).
> 
> not true.  import $server / /n/$server will give you access to srv on $server
> as /n/$server/srv.

Fair, but there's no reason to propose that an exportfs couldn't be the
target of a sendfd(), or that the underlying mechanism for sendfd() couldn't
be similarly exported (devcapsrv would work just fine, I think... maybe I
should just write it and post code?).

> what is "srv^2"?

EricVH's /srv replacement.  See
http://graverobbers.blogspot.com/2008/12/srv-next-generation-service-registry.html
 
> > 1) Sending files across namespaces so that I can spawn acme at rio startup
> > and plumb to it without having to recreate mounts in its namespace.
> 
> plumb "Local (bind|mount) args" will accomplish this.

Assuming that the resource can be named in the plumber's namespace?  This
works out less well for things like ramfs's that were told where to mount
(-m) and not to use /srv (-s).  Or is there something really sneaky going on
here that I don't know?

> > 2) Sending parts of namespaces around locally without needing to run an
> > exportfs in that namespace.  (i.e. open() a directory && sendfd() that to
> > another process who can mount() it.)  Among other things, this allows the
> > shell (and others) to easily offer the current working directory fd (rather
> > than path) to rio for tab completion.
> 
> you can't mount a random directory.

OK, fair, it's more of a bind().  The operation does not yet exist, but
should be quite easy to add.  Perhaps it isn't worth it.

> > 3) Some small thought about being able to implement srv^2 entirely in
> > userland, and what the primitives would look like.  sendfd() or the above
> > outlined devcapsrv seems better than the current devsrv to me, but I confess
> > I might be mistaken.
> 
> what's the advantage of implementing srv entirely in userland?

EricVH made some rumblings off-list about srv^2 being a userland thing, as
it's a relatively complex proposal.  Further, being able to write it
entirely in userland also means that it is a virtualizable service, which
/srv is not.

> - erik

[-- Attachment #2: Type: application/pgp-signature, Size: 204 bytes --]

  reply	other threads:[~2008-12-24  7:36 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-12-23 18:01 Nathaniel W Filardo
2008-12-23 22:52 ` Rodolfo kix Garcia
2008-12-23 23:53   ` Francisco J Ballesteros
2008-12-24  1:10     ` Nathaniel W Filardo
2008-12-24  1:39       ` erik quanstrom
2008-12-24  3:00         ` Nathaniel W Filardo
2008-12-24  4:14           ` erik quanstrom
2008-12-24  7:36             ` Nathaniel W Filardo [this message]
2008-12-24 13:36               ` erik quanstrom
2008-12-27 20:27                 ` Roman Shaposhnik
2008-12-27 20:34                   ` Eric Van Hensbergen
2008-12-27 20:21       ` Roman Shaposhnik
2008-12-30  8:22         ` Nathaniel W Filardo
2008-12-30 15:04           ` Eric Van Hensbergen
2008-12-30 15:31           ` erik quanstrom
2009-01-01 22:53             ` Roman V. Shaposhnik
2009-01-01 23:57               ` Nathaniel W Filardo
2009-01-03 21:23                 ` Roman V. Shaposhnik
2009-01-03 21:41                   ` erik quanstrom
2009-01-03 21:59                     ` Roman V. Shaposhnik
2009-01-03 23:57                   ` Nathaniel W Filardo
2009-01-04  5:19                     ` lucio
2009-01-04  5:48                       ` erik quanstrom
2009-01-04  6:10                         ` Nathaniel W Filardo
2009-01-04  6:43                           ` lucio
2009-01-05  1:12                             ` Roman V. Shaposhnik
2009-01-05  1:32                               ` erik quanstrom
2009-01-05  3:48                                 ` lucio
2009-01-04 17:32                           ` erik quanstrom
2009-01-04 18:23                             ` lucio
2009-01-05  1:24                               ` Roman V. Shaposhnik
2009-01-04  5:58                       ` Nathaniel W Filardo
2009-01-04  6:26                         ` lucio
2009-01-04 15:46                           ` erik quanstrom
2009-01-05  4:30                     ` Roman V. Shaposhnik
2008-12-24  1:17   ` Nathaniel W Filardo
2008-12-27 17:06 ` Russ Cox

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20081224073606.GS9593@masters10.cs.jhu.edu \
    --to=nwf@cs.jhu.edu \
    --cc=9fans@9fans.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).