9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
* [9fans] gVisor - user space kernel in Go
@ 2018-05-02 19:19 Skip Tavakkolian
  2018-05-03 11:41 ` yy
  2018-05-03 21:26 ` Bakul Shah
  0 siblings, 2 replies; 6+ messages in thread
From: Skip Tavakkolian @ 2018-05-02 19:19 UTC (permalink / raw)
  To: Fans of the OS Plan 9 from Bell Labs

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

Just saw this today; might be of interest to some 9fans. Apache open source
from Google:

https://github.com/google/gvisor

[-- Attachment #2: Type: text/html, Size: 250 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [9fans] gVisor - user space kernel in Go
  2018-05-02 19:19 [9fans] gVisor - user space kernel in Go Skip Tavakkolian
@ 2018-05-03 11:41 ` yy
  2018-05-03 16:01   ` hiro
  2018-05-03 21:26 ` Bakul Shah
  1 sibling, 1 reply; 6+ messages in thread
From: yy @ 2018-05-03 11:41 UTC (permalink / raw)
  To: Fans of the OS Plan 9 from Bell Labs

Maybe one of the most interesting aspects is that it includes a
9P2000.L implementation:

https://github.com/google/gvisor/tree/master/pkg/p9

On 2 May 2018 at 21:19, Skip Tavakkolian <skip.tavakkolian@gmail.com> wrote:
> Just saw this today; might be of interest to some 9fans. Apache open source
> from Google:
>
> https://github.com/google/gvisor
>
>



--
- yiyus || JGL .



^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [9fans] gVisor - user space kernel in Go
  2018-05-03 11:41 ` yy
@ 2018-05-03 16:01   ` hiro
  2018-05-03 17:55     ` Aram Hăvărneanu
  0 siblings, 1 reply; 6+ messages in thread
From: hiro @ 2018-05-03 16:01 UTC (permalink / raw)
  To: Fans of the OS Plan 9 from Bell Labs

agreed. perhaps there are more gems :)



^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [9fans] gVisor - user space kernel in Go
  2018-05-03 16:01   ` hiro
@ 2018-05-03 17:55     ` Aram Hăvărneanu
  2018-05-03 18:55       ` Skip Tavakkolian
  0 siblings, 1 reply; 6+ messages in thread
From: Aram Hăvărneanu @ 2018-05-03 17:55 UTC (permalink / raw)
  To: Fans of the OS Plan 9 from Bell Labs

Looks pretty portable, the only Linux-specific things seem to be
non-essential sandboxing stuff, e.g. seccomp, and the only
Unix-specific dependency is on ptrace. Should not be too hard to make
it into linuxemu on Plan 9.

-- 
Aram Hăvărneanu



^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [9fans] gVisor - user space kernel in Go
  2018-05-03 17:55     ` Aram Hăvărneanu
@ 2018-05-03 18:55       ` Skip Tavakkolian
  0 siblings, 0 replies; 6+ messages in thread
From: Skip Tavakkolian @ 2018-05-03 18:55 UTC (permalink / raw)
  To: Fans of the OS Plan 9 from Bell Labs

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

Thanks!  I was hoping to get confirmation of this.  I had a similar thought
based on my layman's understanding of it.


On Thu, May 3, 2018 at 10:55 AM Aram Hăvărneanu <aram.h@mgk.ro> wrote:

> Looks pretty portable, the only Linux-specific things seem to be
> non-essential sandboxing stuff, e.g. seccomp, and the only
> Unix-specific dependency is on ptrace. Should not be too hard to make
> it into linuxemu on Plan 9.
>
> --
> Aram Hăvărneanu
>
>

[-- Attachment #2: Type: text/html, Size: 735 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [9fans] gVisor - user space kernel in Go
  2018-05-02 19:19 [9fans] gVisor - user space kernel in Go Skip Tavakkolian
  2018-05-03 11:41 ` yy
@ 2018-05-03 21:26 ` Bakul Shah
  1 sibling, 0 replies; 6+ messages in thread
From: Bakul Shah @ 2018-05-03 21:26 UTC (permalink / raw)
  To: Fans of the OS Plan 9 from Bell Labs

On Wed, 02 May 2018 19:19:43 -0000 Skip Tavakkolian <skip.tavakkolian@gmail.com> wrote:
> 
> Just saw this today; might be of interest to some 9fans. Apache open source
> from Google:
> 
> https://github.com/google/gvisor

Unix emulation on microkernels looks a bit like this.

Quick comparison:

jails   each jail has its own kernel context.  The host kernel
	needs support for this. Apps run unchanged.

	containers & zones are variations on this.

VMs	a proxy emulates a processor and assorted IO devices.
	very fast if the host and guest instruction sets are
	very similar. The host doesn't know about emulation
	or care. Apps run unchanged.

gvisor  a proxy emulates an OS API by intercepting all
	syscalls.  Very few host facilities are needed.
	Apps may have to be linked with the right library.

In a capabilities based system you don't need most of this and
can still achieve better security and isolation.  What a
process can access is constrained by the capabilities it holds
or can gain via calls on existing caps. API interception as
with gvisor can be done naturally: a process would be given
proxy caps to start with.

plan9 more or less used file descriptors in this fashion.  It
also provided better higher level composition by attempting to
cast many things as files/dirs/filesystems.  Even here I think
a cap system can be used to build better &/or more convenient
abstractions.



^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2018-05-03 21:26 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-05-02 19:19 [9fans] gVisor - user space kernel in Go Skip Tavakkolian
2018-05-03 11:41 ` yy
2018-05-03 16:01   ` hiro
2018-05-03 17:55     ` Aram Hăvărneanu
2018-05-03 18:55       ` Skip Tavakkolian
2018-05-03 21:26 ` Bakul Shah

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