Control and Modeling Issues in Computer Operating Systems: Resource
Management for Real-Rate Computer Applications
David C. Steere†, Molly H. Shor‡, Ashvin Goel†, Jonathan Walpole†, Calton Pu
†{dcs, ashvin, walpole}@cse.ogi.edu, Dept. of Computer Science and Engineering,
Oregon Graduate Institute, Beaverton, Oregon, 97921-1000 USA
‡ shor@ece.orst.edu, Dept. of Electrical and Computer Engineering,
Oregon State University, Corvallis, Oregon 97331-3211 USA
calton@cc.gatech.edu, College of Computing, CCB Room 261,
Georgia Institute of Technology, Atlanta, Georgia 30332-0280 USA
† This work was supported by in part by DARPA contracts/grants N66001-97-C-8522, N66001-97-C-8523, and F19628-95-
C-0193, NSF grants ECS-9988435 and CCR-9988440, and by Tektronix, Inc. and Intel Corporation.
Abstract
Commonplace computer applications on general-purpose
computers increasingly are expected to meet “real-rate”
requirements, processing or displaying data or images at
an externally driven “rate”. We describe a feedback-
control-based
resource manager design approach,
allowing the computer system to allocate resources such
as CPU and network bandwidth based on the measured
“progress” of the applications. Progress is measured by
separating a complex application into a number of
simpler applications separated by buffers. The resource
scheduler measures the buffer fill levels to determine
whether the rates of data coming in and going out of each
buffer are matched. Feedback controllers keep the buffer
levels around a certain fill level. We have developed
prototype systems in the Linux environment that
demonstrate that (classical) feedback control can be used
to match the real rates. However, more formal methods,
such as those that can be developed by the control theory
community, are needed to help with the analysis and
design of such systems to make them commercially
viable. This paper presents the computer system
problems, resul