Supporting Dynamic QoS in Linux

  • Authors:
  • Affiliations:
  • Venue:
  • RTAS '04 Proceedings of the 10th IEEE Real-Time and Embedded Technology and Applications Symposium
  • Year:
  • 2004

Quantified Score

Hi-index 0.00

Visualization

Abstract

This work is an application of the Variable-Rate Execution(VRE) model in Linux to support dynamic Quality ofService (QoS). Based on conventional time-sharing schedulingalgorithms, Linux does not adequately support QoS requirements.The VRE scheduler can assign a specified executionrate to any application, and dynamically adjust theexecution rate during runtime. Rate controller componentsare introduced to adjust a task's execution rate based on pre-definedrules and runtime feedbacks, such as the suspensiontime, the queue length, and so on.A significant feature of this work is its ability to supportlegacy applications at the binary level. On conventional operatingsystems, millions of applications have been built undertime-sharing schedulers, which we call legacy applications.Under the VRE model, a legacy application can obtaina guaranteed variable execution rate. We also designeda simple default rate controller for legacy multimedia applications.The Linux kernel was slightly modified in our implementationto achieve reconfigurability. Both the VRE schedulerand the default rate controller are implemented as Linuxloadable modules, which can be dynamically loaded into thekernel to replace the Linux scheduler or change the behaviorof the scheduler. We provide a set of interfaces for usersto design and use their own schedulers and rate controllers.