Providing QoS to Legacy Multimedia Applications
Millions of applications
have been developed on conventional time-sharing systems. We call those
applications legacy applications. Many of them, typically multimedia
applications, have Quality of Service (QoS) demands, which are not supported in
time-sharing systems. Although many scheduling algorithms and schedulers have
been proposed to schedule multimedia applications, it is not feasible to
rebuild millions of legacy multimedia applications in a completely new
programming model. Moreover, the execution pattern of multimedia applications
is difficult to predict.
This project is developing a
legacy application-compatible, adaptation-oriented scheduling framework. The
new scheduler is implemented as a Linux loadable module. Thus users can either
use the original Linux scheduler or use our scheduler by loading the module. In
the new scheduler, users can reserve a default execution rate for legacy
multimedia applications, and a rate adjustment mechanism is provided for
adaptation.
The framework supports our
new variable-rate execution (VRE) tasks as well as the more static rate-based
execution (RBE) tasks, traditional periodic tasks that run at a constant rate,
and non-real-time requests that have no QoS demand.