Hello everyone,

I’m trying to apply an asynchronous batch processing of IPC into l4/fiasco to increase the bandwidth of IPC.

I think the main problem is the performance of IPC when virtualization is applied to mobile system.

To increase the performance of IPC, I try to use the memory sharing between the address space of user library and that of kernel memory.

There is a way to access user memory from kernel, but I couldn’t find any way to read kernel memory in user space.

At first, I want to know whether it is meaningful to use an asynchronous batch processing of IPC, or not.

Second, when my user library tries to use the virtual address of a kernel global variable by passing it to user address space, “unhandled exception: pc=xxxx” occurs.

I think that region mapper makes that exception while it’s checking the range of virtual address.

If I want to access kernel memory in user address space, what can I do?

Maybe it causes security problems and it’s not proper for virtualization.

However, in my opinion, some compromise will be needed for the future mobile virtualization system.