tech-kern archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: virtual kernels, syscall routing, etc.



On Fri Nov 28 2008 at 10:50:09 +0000, Andrew Doran wrote:
> On Thu, Nov 27, 2008 at 08:32:15PM +0200, Antti Kantee wrote:
> 
> > I've made the kernel nfs service (nfsd) run in userspace.
> ...
> > Now, the first idea is to simply add routing capability to the libc
> > syscall stubs.  The fast path would still always trap into the kernel,
> > but in other cases system calls could be handled by a process-to-process
> > "trap", or in other words IPC. 
> 
> I don't like the idea of adding another layer of indirection. There is some
> cross-over with NetBSD/usermode here. Another possibility is an emulation
> type in kernel that redirects system calls to a listening process, but I
> haven't given it much thought.

Please define "adding another layer of indirection".  I don't not see
it as adding another layer of indirection, rather providing a parallel
indirection/abstraction.

What is the point of routing the syscalls through "the" kernel?  That is
exactly the kind of thing that should be avoided.  You can make everything
slow by circulating messages around in places where they don't belong.
The only exception is maybe in establishing a channel.


Home | Main Index | Thread Index | Old Index