Font Size: a A A

Engineering and analysis of real-time operating systems

Posted on:1996-10-25Degree:Ph.DType:Thesis
University:Carnegie Mellon UniversityCandidate:Katcher, Daniel IsaacFull Text:PDF
GTID:2468390014486974Subject:Computer Science
Abstract/Summary:
Real-time scheduling theory attempts to guarantee that a real-time task set will always meet its deadlines. Real-time systems are typically implemented via real-time operating systems (RTOSs), which are becoming increasingly common. However, there currently exists a wide gap between real-time scheduling theory and the reality of its implementation via RTOSs. This thesis bridges this gap by providing a unified framework for capturing RTOS implementation costs in OS scheduling models. A theoretical step extends idealized scheduling models, which ignore implementation costs, to a set of generic resource scheduling models. These generic models include implementation costs for fixed priority, dynamic priority, and cyclic executives scheduling algorithms, as well as synchronization and IPC services. These models are resource independent and have been used to model networks, buses, and disks, as well as the operating systems covered in this thesis. Two engineering methodology steps generalize the modeling process for RTOSs, such that relatively untrained systems engineers can quickly construct accurate scheduling models of most operating systems. First, OS implementation costs for specific systems are captured in a common way through a structured microkernel cost accounting system. Second, a set of canonical OS scheduling models is created which is representative of a broad range of RTOS implementations. The generality of the framework is demonstrated by modeling five different operating systems which span a large part of the implementation spectrum, including RT Mach, Chimera II, and three digital signal processing (DSP) operating systems, SPOX, VCOS, and Mwave/OS.; Given this general methodology for modeling RTOSs, we then demonstrate the engineering utility of scheduling models for both RTOS users and RTOS developers. We can use the models to compare the performance of different operating systems and different OS service policies for a given application. The models can be used to tune existing system configurations to maximize real-time performance. Finally, the models can be used to evaluate and engineer kernel design with respect to real-time performance. These aspects of real-time systems engineering are demonstrated through several examples involving RT Mach and the DSP operating systems.
Keywords/Search Tags:Systems, Real-time, Engineering, Scheduling, Implementation costs, RTOS
Related items