LWN.net Logo

Process IDs in a multi-namespace world

Process IDs in a multi-namespace world

Posted Nov 7, 2007 6:18 UTC (Wed) by flewellyn (subscriber, #5047)
Parent article: Process IDs in a multi-namespace world

As usual, Linus manages to cut through a whole Gordian knot of confusion over how to solve a problem by asking "Why do we even care?" In this case, why do they even care about sharing userspace resources like pids, futexes, filesystem mounts, and the like between containers, when the whole point of containers is that each container appears to the contained processes to be its own separate system?

I think he's right. Disallow this sharing and treat each container as a completely separate userspace, which means each one has its own set of every resource from the userspace point of view. Let the kernel uses namespaces in-kernel, and take care of the translating; if containers want to communicate with each other, we have well-defined means of doing that, namely TCP/IP sockets, network file systems, distributed systems, and the like. Linux could speed things up a bit by using in-kernel "zero-copy" communication between containers, so that TCP/IP sockets between containers would be as fast as Unix domain sockets, but userspace should not have to care or even know about it.


(Log in to post comments)

Copyright © 2008, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds