Title Static Analysis of Interrupt Latency in Operating System Kernels Authors Kevin Kollenda, Thomas Preisner, Dustin Nguyen, Phillip Raffeck Affiliation Friedrich-Alexander-Universität Erlangen-Nürnberg Abstract Interrupts are an essential mechanism for signaling important events to the operating system. However, servicing of interrupts in a timely manner may be delayed by other, already running, interrupt service routines, or due to hard synchronization. This is especially relevant if the operating system hosts time-sensitive applications. In addition this also becomes important for novel non-volatile systems, which, in case of power failures, only have limited time to persist volatile state in a consistent manner. It is often not sufficient to estimate these delays based on runtime observations, since the exceptional case may only occur infrequently. Thus, it is unsuitable for the task at hand. Instead, static analysis needs to be applied by evaluating all possible execution paths in order to eliminate the uncertainty of dynamic approaches. Our approach is based on the analysis of machine code, to be independent of different source languages and the absence of source code due to licensing issues. As a consequence, special care has to be taken as machine code lacks most context information which would otherwise aid the analysis process. Combined with the aggressive optimizations employed by modern compilers, this leads to a difficult environment with numerous pitfalls and potential issues. This talk discusses an approach for determining an upper bound for areas with disabled interrupt reception using static analysis of operating system kernels. Preliminary results for existing general purpose operating systems (Linux and FreeBSD) and teaching systems (StuBS) provide a promising first look into the applicability of such analysis.