UW-Madison Logo

The ADvanced Systems Laboratory (ADSL)
Publication abstract

Information and Control in Gray-box Systems

The 18th Symposium on Operating Systems Principles (SOSP '01)

Andrea C. Arpaci Dusseau and Remzi H. Arpaci-Dusseau


In modern systems, developers are often unable to modify the underlying operating system. To build services in such an environment, we advocate the use of gray-box techniques. When treating the operating system as a gray-box, one recognizes that not changing the OS restricts, but does not completely obviate, both the information one can acquire about the internal state of the OS and the control one can impose on the OS. In this paper, we develop and investigate three gray-box Information and Control Layers (ICLs) for determining the contents of the file-cache, controlling the layout of files across local disk, and limiting process execution based on available memory. A gray-box ICL sits between a client and the OS and uses a combination of algorithmic knowledge, observations, and inferences to garner information about or control the behavior of a gray-box system. We summarize a set of techniques that are helpful in building gray-box ICLs and have begun to organize a ``gray toolbox'' to ease the construction of ICLs. Through our case studies, we demonstrate the utility of gray-box techniques, by implementing three useful ``OS-like'' services without the modification of a single line of OS source code.
Available as: Postscript, PDF, BibTeX