On Mon, 2003-03-10 at 15:54, Cristiano Ligieri Pereira wrote:
Actually what I'm doing is trying the reproduce some of the results from the paper "The performance of micro-kernel Based Systems" using lmbench/hbench/AIM benchmarks on a P4 machine. I'm not quite sure if I understood what you mean by generating a new C library. Where is the code for the C library in the source tree?. Isn't there a piece of code handling all system calls in which I could just change it instead of changing every occurrence of "int 0x80" in my code?
Most programs are dynamically linked to libc, which performs the actual linux syscalls. What you need is a version of glibc which invokes L4 by calling into the trampoline code already present in the address space of each l4linux process in the 'emulib' pages at 0xa0008000 instead of using the normal int $0x80 trap instruction. Unfortunately, I do not think a patched version of glibc exists. If you wish, you can roll your own by downloading the source of glibc, and patching it according to Frank's instructions, compile it, and install it into the library path of your benchmark applications. If anyone has or is able to produce a patch and more elaborate installation instructions, I would be very interested in receiving a copy.
Best regards, Jacob