Fiasco Kernel extended V2 API vs. Pistachio X2 API

Marcus Voelp voelp at
Thu Jan 27 13:54:44 CET 2011

On 01/26/2011 11:09 PM, Daniel Waddington - SISA wrote:
> Hi,
> Can someone briefly explain the basic differences between the current
> Fiasco kernel API and the Pistachio X2 API?

The current version of Fiasco is Fiasco.OC, which is no longer based on
the extended V2 API:

The corresponding Pistachio feature list is available here:

Fiasco.OC is a capability based kernel meaning all kernel objects
(including IPC "channels") are addressed via mappable capabilities,
which reside in a task's address space. Pistachio X.2 works with a
global namespace for all kernel objects, which means to avoid existence
leaks you have to globally partition the thread namespace. Both
Fiasco.OC and Pistachio implement UTCBs as the main mechanism for data
exchange between user-level threads and the kernel, which effectively
gives you a 32+ word register IPC. OC supports a quota-like kernel
memory management mechanism, which as far as I know is still missing in
Pistachio X.2. Otherwise, both kernels provide pretty much the same
functionality (HW  virtualization included).

Does this answer your question?

Best regards


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the l4-hackers mailing list