Running multithreaded applications in exokernel-based systems: porting CThreads to Xok

Exokernel-based systems provide efficient access to the system actual hardware resources. Parallel applications can take advantage of such kind of access and adapt to the actual resources available to increase performance. In this paper we present an extension to allow multithreaded applications to run on an Intel-based exokernel system. For this purpose, we have ported a user-level threads package to such environment. Our final goal is having a multiprocessor exokernel version to be able to run parallel applications on top of it. We use the exokernel interface to have access to the physical execution resources and we have designed the lower layer of the multithreading library to use them.