Adaptive Hierarchical Scheduling Framework for Real-Time Systems
Abstract: Modern computer systems are often designed to play a multipurpose role. Therefore, they are capable of running a number of software tasks (software programs) simultaneously in parallel. These software tasks should share the processor such that all of them run and finish their computations as expected. On the other hand, a number of software tasks have timing requirements meaning that they should not only access the processing unit, but this access should also be in a timely manner. Thus, there is a need to timely share the processor among different software programs (applications). The time-sharing often is realized by assigning a fixed and predefined processor time-portion to each application. However, there exists a group of applications where, i) their processor demand is changing in a wide range during run-time, and/or ii) their occasional timing violations can be tolerated. For systems that contain applications with the two aforementioned properties, it is not efficient to assign the applications with fixed processor time-portions. Because, if we allocate the processor resource based on the maximum resource demand of the applications, then the processor's computing capacity will be wasted during the time intervals where the applications will require a smaller portion than maximum resource demand. To this end, in this thesis we propose adaptive processor time-portion assignments. In our adaptive scheme, at each point in time, we monitor the actual demand of the applications, and we provide sufficient processor time-portions for each application. In doing so, we are able to integrate more applications on a shared and resource constrained system, while at the same time providing the applications with timing guarantees.
This dissertation MIGHT be available in PDF-format. Check this page to see if it is available for download.