USENIX Conference Policies
Inferring Scheduling Behavior with Hourglass
Although computer programs explicitly represent data values, time values are usually implicit. This makes it difficult to analyze and debug real-time programs whose correctness depends partially on the time at which results are computed. This paper shows how to use Hourglass, an instrumented, synthetic real-time application, to make inferences about what is happening on a computer at millisecond and microsecond granularities. These inferences are possible because Hourglass records a very fine-grained map of when each of its threads runs, and because Hourglass supports a variety of thread execution models that model the properties and requirements of non-synthetic real-time applications. We conclude that between measurements and inferences, surprisingly detailed knowledge about scheduling behavior can be obtained without modifying, or even explicitly interacting with, the operating system kernel.
author = {John Regehr},
title = {Inferring Scheduling Behavior with Hourglass},
booktitle = {2002 USENIX Annual Technical Conference (USENIX ATC 02)},
year = {2002},
address = {Monterey, CA},
url = {https://www.usenix.org/conference/2002-usenix-annual-technical-conference/inferring-scheduling-behavior-hourglass},
publisher = {USENIX Association},
month = jun
}