|
ABSTRACT
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.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
 |
1
|
|
 |
2
|
Thomas E. Anderson , Brian N. Bershad , Edward D. Lazowska , Henry M. Levy, Scheduler activations: effective kernel support for the user-level management of parallelism, Proceedings of the thirteenth ACM symposium on Operating systems principles, p.95-109, October 13-16, 1991, Pacific Grove, California, United States
|
 |
3
|
Remzi H. Arpaci , David E. Culler , Arvind Krishnamurthy , Steve G. Steinberg , Katherine Yelick, Empirical evaluation of the CRAY-T3D: a compiler perspective, Proceedings of the 22nd annual international symposium on Computer architecture, p.320-331, June 22-24, 1995, S. Margherita Ligure, Italy
|
 |
4
|
|
 |
5
|
|
 |
6
|
Mary G. Baker , John H. Hartman , Michael D. Kupfer , Ken W. Shirriff , John K. Ousterhout, Measurements of a distributed file system, Proceedings of the thirteenth ACM symposium on Operating systems principles, p.198-212, October 13-16, 1991, Pacific Grove, California, United States
|
 |
7
|
Hari Balakrishnan , Venkata N. Padmanabhan , Srinivasan Seshan , Randy H. Katz, A comparison of mechanisms for improving TCP performance over wireless links, Conference proceedings on Applications, technologies, architectures, and protocols for computer communications, p.256-269, August 28-30, 1996, Palo Alto, California, United States
|
 |
8
|
B. N. Bershad , S. Savage , P. Pardyak , E. G. Sirer , M. E. Fiuczynski , D. Becker , C. Chambers , S. Eggers, Extensibility safety and performance in the SPIN operating system, Proceedings of the fifteenth ACM symposium on Operating systems principles, p.267-283, December 03-06, 1995, Copper Mountain, Colorado, United States
|
| |
9
|
D. Blackwell and M. A. Girshick. Theory of Games and Statistical Decisions. John Wiley & Sons, 1954.
|
 |
10
|
|
| |
11
|
C. D. Cranor and G. M. Parulkar. The UVM Virtual Memory System. In USENIX '99.
|
 |
12
|
|
| |
13
|
P. Druschel, L. L. Peterson, and N. Hutchinson. Beyond Micro-Kernel Design: Decoupling Modularity and Protection in Lipto. In ICDCS 12, 1992.
|
| |
14
|
|
 |
15
|
D. R. Engler , M. F. Kaashoek , J. O'Toole, Jr., Exokernel: an operating system architecture for application-level resource management, Proceedings of the fifteenth ACM symposium on Operating systems principles, p.251-266, December 03-06, 1995, Copper Mountain, Colorado, United States
|
| |
16
|
|
| |
17
|
D. Ghormley, D. Petrou, S. Rodrigues, and T. Anderson. SLIC: An Extensibility System for Commodity Operating Systems. In USENIX '98, June 1998.
|
| |
18
|
Douglas P. Ghormley , David Petrou , Steven H. Rodrigues , Amin M. Vahdat , Thomas E. Anderson, GLUnix: a global layer Unix for a network of workstations, Software—Practice & Experience, v.28 n.9, p.929-961, July 25, 1998
[doi> 10.1002/(SICI)1097-024X(19980725)28:9<929::AID-SPE183>3.0.CO;2-C]
|
 |
19
|
John H. Howard , Michael L. Kazar , Sherri G. Menees , David A. Nichols , M. Satyanarayanan , Robert N. Sidebotham , Michael J. West, Scale and performance in a distributed file system, ACM Transactions on Computer Systems (TOCS), v.6 n.1, p.51-81, Feb. 1988
[doi> 10.1145/35037.35059]
|
 |
20
|
|
| |
21
|
R. Jain. A Delay-Based Approach for Congestion Avoidance in Interconnected Heterogeneous Computer Networks. Technical Report DEC-TR-566, Digital Equipment Corporation, April 1988.
|
 |
22
|
|
| |
23
|
|
 |
24
|
|
 |
25
|
|
| |
26
|
M. Litzkow, M. Livny, and M. Mutka. Condor - A Hunter of Idle Workstations. In ICDCS 8, June 1988.
|
 |
27
|
|
| |
28
|
R.V. Meter and M. Gao. Latency Management in Storage Systems. In OSDI 3, October 2000.
|
| |
29
|
J. K. Ousterhout. Scheduling Techniques for Concurrent Systems. In ICDCS 3, pages 22-30, May 1982.
|
| |
30
|
|
 |
31
|
|
 |
32
|
|
| |
33
|
|
 |
34
|
|
 |
35
|
Margo I. Seltzer , Yasuhiro Endo , Christopher Small , Keith A. Smith, Dealing with disaster: surviving misbehaved kernel extensions, Proceedings of the second USENIX symposium on Operating systems design and implementation, p.213-227, October 29-November 01, 1996, Seattle, Washington, United States
|
 |
36
|
Yannis Smaragdakis , Scott Kaplan , Paul Wilson, EELRU: simple and effective adaptive page replacement, Proceedings of the 1999 ACM SIGMETRICS international conference on Measurement and modeling of computer systems, p.122-133, May 01-04, 1999, Atlanta, Georgia, United States
|
 |
37
|
|
| |
38
|
K. A. Smith and M. I. Seltzer. A Comparison of FFS Disk Allocation Policies. In USENIX '96, 1996.
|
| |
39
|
C. Staelin and L. McVoy. mhz: Anatomy of a microbenchmark. In USENIX '98, June 1998.
|
| |
40
|
|
| |
41
|
J. Von Neumann and O. Morgenstern. Theory of Games and Economic Behavior. Princeton University Press, Princeton, New Jersey, second edition, 1947.
|
 |
42
|
Bruce L. Worthington , Gregory R. Ganger , Yale N. Patt , John Wilkes, On-line extraction of SCSI disk drive parameters, Proceedings of the 1995 ACM SIGMETRICS joint international conference on Measurement and modeling of computer systems, p.146-156, May 15-19, 1995, Ottawa, Ontario, Canada
|
| |
43
|
|
CITED BY 42
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Constantine P. Sapuntzakis , Ramesh Chandra , Ben Pfaff , Jim Chow , Monica S. Lam , Mendel Rosenblum, Optimizing the migration of virtual computers, Proceedings of the 5th symposium on Operating systems design and implementation Due to copyright restrictions we are not able to make the PDFs for this conference available for downloading, December 09-11, 2002, Boston, Massachusetts
|
|
|
|
|
|
|
|
|
|
|
|
Manish Anand , Edmund B. Nightingale , Jason Flinn, Ghosts in the machine: interfaces for better power management, Proceedings of the 2nd international conference on Mobile systems, applications, and services, June 06-09, 2004, Boston, MA, USA
|
|
|
Andrea C. Arpaci-Dusseau , Remzi H. Arpaci-Dusseau , Nathan C. Burnett , Timothy E. Denehy , Thomas J. Engle , Haryadi S. Gunawi , James A. Nugent , Florentina I. Popovici, Transforming policies into mechanisms with infokernel, Proceedings of the nineteenth ACM symposium on Operating systems principles, October 19-22, 2003, Bolton Landing, NY, USA
|
|
|
Andrea C. Arpaci-Dusseau , Remzi H. Arpaci-Dusseau , Lakshmi N. Bairavasundaram , Timothy E. Denehy , Florentina I. Popovici , Vijayan Prabhakaran , Muthian Sivathanu, Semantically-smart disk systems: past, present, and future, ACM SIGMETRICS Performance Evaluation Review, v.33 n.4, March 2006
|
|
|
William Enck , Patrick Traynor , Patrick McDaniel , Thomas La Porta, Exploiting open functionality in SMS-capable cellular networks, Proceedings of the 12th ACM conference on Computer and communications security, November 07-11, 2005, Alexandria, VA, USA
|
|
|
Xin Li , Kai Shen , Michael C. Huang , Lingkun Chu, A memory soft error measurement on production systems, 2007 USENIX Annual Technical Conference on Proceedings of the USENIX Annual Technical Conference, p.1-6, June 17-22, 2007, Santa Clara, CA
|
|
|
|
|
|
Yvonne Coady , Gregor Kiczales , Joon Suan Ong , Andrew Warfield , Michael Feeley, Brittle systems will break - not bend: can aspect-oriented programming help?, Proceedings of the 10th workshop on ACM SIGOPS European workshop: beyond the PC, July 01-01, 2002, Saint-Emilion, France
|
|
|
|
|
|
Xuhui Li , Ashraf Aboulnaga , Kenneth Salem , Aamer Sachedina , Shaobo Gao, Second-tier cache management using write hints, Proceedings of the 4th conference on USENIX Conference on File and Storage Technologies, p.9-9, December 13-16, 2005, San Francisco, CA
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Muthian Sivathanu , Vijayan Prabhakaran , Florentina I. Popovici , Timothy E. Denehy , Andrea C. Arpaci-Dusseau , Remzi H. Arpaci-Dusseau, Semantically-Smart Disk Systems, Proceedings of the 2nd USENIX Conference on File and Storage Technologies, March 31-31, 2003, San Francisco, CA
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Nikolai Joukov , Avishay Traeger , Rakesh Iyer , Charles P. Wright , Erez Zadok, Operating system profiling via latency analysis, Proceedings of the 7th symposium on Operating systems design and implementation, November 06-08, 2006, Seattle, Washington
|
|
|
Chad Verbowski , Emre Kiciman , Arunvijay Kumar , Brad Daniels , Shan Lu , Juhan Lee , Yi-Min Wang , Roussi Roussev, Flight data recorder: monitoring persistent-state interactions to improve systems management, Proceedings of the 7th symposium on Operating systems design and implementation, November 06-08, 2006, Seattle, Washington
|
|
|
|
|
|
|
|
|
Gang Luo , Jeffrey F. Naughton , Curt J. Ellmann , Michael W. Watzke, Transaction reordering with application to synchronized scans, Proceeding of the ACM 11th international workshop on Data warehousing and OLAP, October 30-30, 2008, Napa Valley, California, USA
|
|
|
Hwanju Kim , Hyeontaek Lim , Jinkyu Jeong , Heeseung Jo , Joonwon Lee, Task-aware virtual machine scheduling for I/O performance., Proceedings of the 2009 ACM SIGPLAN/SIGOPS international conference on Virtual execution environments, March 11-13, 2009, Washington, DC, USA
|
|