Back to the main page
The Fiasco µ-Kernel

Linux User-Mode Port

Frequently Asked Questions

Why does strace, used on Fiasco-UX, display a lot of segmentation faults?
Fiasco-UX relies on privileged instructions generating faults to emulate their functionality. Therefore segmentation faults are expected behavior and not indicative of program failure.

Why does GDB stop Fiasco-UX with a segmentation fault? Is there any way I can use GDB for debugging?
See previous question. You need to tell GDB to forward all segmentation faults to Fiasco-UX. Type the following at the GDB prompt or put it in your .gdbinit file:
handle 11 nostop noprint

Do I need to build my L4 applications in a specific manner to use them with Fiasco-UX?
You can use your regular binaries for Fiasco-UX as long as the code does not access hardware, e.g. I/O ports, directly.

Why does my Fiasco-UX fail with an assertion in Hostproc::create?
Probably because your Linux host kernel does not provide 3GB of virtual address space for user applications. If the following line in your host kernel .config file is different, consider recompiling the host kernel:
CONFIG_PAGE_OFFSET=0xC0000000

Will Fiasco-UX work on a TLS-enabled system?
The SVN version of Fiasco-UX works on systems that use thread-local storage, e.g. Linux distributions based on glibc-2.4 or newer. Older Fiasco-UX versions will hang on such systems.


Udo Steinberg
Valid HTML 4.01! Last modified: Thu Mar 29 2007, 10.51:28 CEST