On Wed, 02 May 2018 19:19:43 -0000 Skip Tavakkolian 
<skip.tavakkol...@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.

Reply via email to