DocumentCode
1730740
Title
Predictable Interrupt Management and Scheduling in the Composite Component-Based System
Author
Parmer, Gabriel ; West, Richard
Author_Institution
Comput. Sci. Dept., Boston Univ., Boston, MA
fYear
2008
Firstpage
232
Lastpage
243
Abstract
This paper presents the design of user-level scheduling hierarchies in the composite component-based system. The motivation for this is centered around the design of a system that is both dependable and predictable, and which is configurable to the needs of specific applications. Untrusted application developers can safely develop services and policies, that are isolated in protection domains outside the kernel. To ensure predictability, composite needs to enforce timing control over user-space services. Moreover, it must provide a means by which asynchronous events, such as interrupts, are handled in a timely manner without jeopardizing the system. Towards this end, we describe the features of composite that allow user-defined scheduling policies to be composed for the purposes of combined interrupt and task management. A significant challenge arises from the need to synchronize access to shared data structures (e.g., scheduling queues), without allowing untrusted code to disable interrupts or use atomic instructions that lock the memory bus. Additionally, efficient upcall mechanisms are needed to deliver asynchronous event notifications in accordance with policy-specific priorities, without undue recourse to schedulers. We show how these issues are addressed in Composite, by comparing several hierarchies of scheduling polices, to manage both tasks and the interrupts on which they depend. Studies show how it is possible to implement guaranteed differentiated services as part of the handling of I/O requests from a network device while avoiding livelock. Microbenchmarks indicate that the costs of implementing and invoking user-level schedulers in composite are on par with, or less than, those in other systems, with thread switches more than twice as fast as in Linux.
Keywords
data structures; multi-threading; object-oriented programming; operating system kernels; scheduling; security of data; asynchronous event notification; atomic instruction; composite component-based system; higher-level thread context; kernel protection domain; memory bus; policy-specific priority; predictable interrupt management; scheduler invocation; shared data structure; user-level scheduling; user-space service; Computer science; Costs; Data structures; Kernel; Processor scheduling; Protection; Real time systems; Switches; Timing; Yarn; Component-based systems; operating systems; predictability; scheduling;
fLanguage
English
Publisher
ieee
Conference_Titel
Real-Time Systems Symposium, 2008
Conference_Location
Barcelona
ISSN
1052-8725
Print_ISBN
978-0-7695-3477-0
Type
conf
DOI
10.1109/RTSS.2008.13
Filename
4700438
Link To Document