Title Towards Just-In-Time Compiling of Operating Systems Authors Maximilian Ott E-Mail ott@cs.fau.de Affiliation Friedrich-Alexander-Universität Erlangen-Nürnberg Informatik 4 Abstract Operating systems are crucial for the performance of the overall system. Any inefficiency leads to a suboptimal use of the available resources and causes performance loss. The wide range of processors in use today makes it challenging to generate the most efficient code for the current hardware ahead of time. Just-in-time compilation, on the other hand, is able to generate efficient code tailored to the current execution context going beyond the processor. This also includes the dynamic re-compilation concerning various configuration options or application demands. Unfortunately, on-demand compilation of operating-system code has not found widespread use due to inherent difficulties stemming from the fact that any just-in-time approach requires extensive runtime support (e.g., for memory allocation for the generated code) usually provided by the operating system itself. A chicken-and-egg problem is found. We believe that this problem of mutual dependency can be resolved and that on-demand compilation of operating-system code can yield the most suitable code for the actual execution context by exploiting runtime knowledge. In this paper, we outline the DOSY approach for just-in-time compilation of operating systems, focusing on the necessary means of overcoming all resource restrictions in the form of a standalone auxiliary interpreter. We implement an interpreter prototype in the memory-safe programming language Rust. Initial measurements indicate promising performance results, encouraging further work towards complete just-in-time compilation of operating systems. Thus, in the future, the research of programming languages and compilation techniques will not only be closely related but will go hand in hand with operating-system design using the DOSY approach. Language of the Presentation English