Title :
Process-Aware Interrupt Scheduling and Accounting
Author :
Zhang, Yuting ; West, Richard
Author_Institution :
Dept. of Comput. Sci., Boston Univ., MA
Abstract :
In most operating systems, the handling of interrupts is typically performed within the address space of the kernel. Moreover, interrupt handlers are invoked asynchronously during the execution of arbitrary processes. Unfortunately, this allows for a process\´s time quantum to be consumed by arbitrary interrupt handling. To avoid significant impact to process execution and also to respond quickly enough to interrupts, interrupt servicing is usually split into two parts: a "top" and "bottom" half. The top half executes at interrupt time and is meant to be short enough to complete all necessary actions at the time of the interrupt. In contrast, the bottom half can be deferred to a more suitable point in time to complete servicing of a prior interrupt. Systems such as Linux may defer bottom half handling to a schedulable thread that may be arbitrarily delayed until there are no other processes to execute. A better approach would be to schedule bottom halves in accordance with the priorities of processes that are affected by their execution. Likewise, bottom half processing should be charged to the CPU-time usage of the affected process, or processes, where possible, to ensure fairer and more predictable resource management. This paper describes some of our approaches, both algorithmically and in terms of implementation on a Linux system, to combine interrupt scheduling and accountability. We show significant improvements in predictability of a Linux system by modifying the kernel to more accurately account for interrupt servicing costs and more precisely control when and to what extent interrupts can be serviced
Keywords :
Linux; interrupts; operating system kernels; resource allocation; scheduling; Linux system predictability; interrupt handling; interrupt servicing; operating system kernel; process-aware interrupt accounting; process-aware interrupt scheduling; resource management; Control systems; Costs; Delay; Kernel; Linux; Operating systems; Real time systems; Resource management; Scheduling algorithm; Yarn;
Conference_Titel :
Real-Time Systems Symposium, 2006. RTSS '06. 27th IEEE International
Conference_Location :
Rio de Janeiro
Print_ISBN :
0-7695-2761-2
DOI :
10.1109/RTSS.2006.37