| System-wide compaction and specialization of the linux kernel |
| Full text |
Pdf
(895 KB)
|
| Source
|
ACM SIGPLAN Notices
archive
Volume 40 , Issue 7 (July 2005)
table of contents
Proceedings of the 2005 ACM SIGPLAN/SIGBED conference on Languages, compilers, and tools for embedded systems
SESSION: Memory optimization
table of contents
Pages: 95 - 104
Year of Publication: 2005
ISSN:0362-1340
Also published in ...
|
|
Authors
|
|
Dominique Chanet
|
Ghent University, Gent, Belgium
|
|
Bjorn De Sutter
|
Ghent University, Gent, Belgium
|
|
Bruno De Bus
|
Ghent University, Gent, Belgium
|
|
Ludo Van Put
|
Ghent University, Gent, Belgium
|
|
Koen De Bosschere
|
Ghent University, Gent, Belgium
|
|
| Publisher |
|
| Bibliometrics |
Downloads (6 Weeks): 2, Downloads (12 Months): 48, Citation Count: 7
|
|
|
ABSTRACT
The limited built-in configurability of Linux can lead to expensive code size overhead when it is used in the embedded market. To overcome this problem, we propose the application of link-time compaction and specialization techniques that exploit the a priori known, fixed run-time environment of many embedded systems. In experimental setups based on the ARM XScale and i386 platforms, the proposed techniques are able to reduce the kernel memory footprint with over 16%. We also show how relatively simple additions to existing binary rewriters can implement the proposed techniques for a complex, very unconventional program such as the Linux kernel. Finally, we pinpoint an important code size growth problem when compaction and compression techniques are combined on the ARM platform.
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
|
R. Cohn, D. Goodwin, P. Lowney, and N. Rubin. Spike: An optimizer for Alpha/NT executables. In Proceedings of the USENIX Windows NT Workshop, pages 17--24, 1997.
|
| |
2
|
B. De Bus. Reliable, Retargetable and Extensible Link-Time Program Rewriting. PhD thesis, Ghent University, 2005.
|
 |
3
|
Bruno De Bus , Bjorn De Sutter , Ludo Van Put , Dominique Chanet , Koen De Bosschere, Link-time optimization of ARM binaries, Proceedings of the 2004 ACM SIGPLAN/SIGBED conference on Languages, compilers, and tools for embedded systems, June 11-13, 2004, Washington, DC, USA
|
 |
4
|
|
 |
5
|
Bjorn De Sutter , Bruno De Bus , Koen De Bosschere, Sifting out the mud: low level C++ code reuse, Proceedings of the 17th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications, November 04-08, 2002, Seattle, Washington, USA
|
 |
6
|
|
 |
7
|
Bjorn De Sutter , Bruno De Bus , Koen De Bosschere , Saumya Debray, Combining Global Code and Data Compaction, Proceedings of the ACM SIGPLAN workshop on Languages, compilers and tools for embedded systems, p.29-38, August 2001, Snow Bird, Utah, United States
|
 |
8
|
|
 |
9
|
Saumya Debray , Robert Muth , Matthew Weippert, Alias analysis of executable code, Proceedings of the 25th ACM SIGPLAN-SIGACT symposium on Principles of programming languages, p.12-24, January 19-21, 1998, San Diego, California, United States
[doi> 10.1145/268946.268948]
|
| |
10
|
R. Flower, C.-K. Luk, R. Muth, H. Patil, J. Shakshober, R. Cohn, and G. Lowney. Kernel optimizations and prefetch with the spike executable optimizer. In Proc of the 4th Workshop on Feedback-Directed and Dynamic Optimization (FDDO-4), 2001.
|
| |
11
|
C.-T. Lee, J.-M. Lin, Z.-W. Hong, and W.-T. Lee. An application-oriented linux kernel customization for embedded systems. Journal of Information Science and Engineering, 20(6):1093--1107, 2004.
|
| |
12
|
J. Levine. Linkers & Loaders. Morgan Kaufmann Publishers, 2000.
|
| |
13
|
C. Linn, S. Debray, G. Andrews, and B. Schwarz. Stack analysis of x86 executables. Available at http://www.cs.arizona.edu/people/debray.
|
| |
14
|
M. Madou, B. De Sutter, B. De Bus, L. Van Put, and K. De Bosschere. Link-time optimization of MIPS programs. In Proceedings of the 2004 International Conference on Embedded Systems and Applications (ESA'04), 2004.
|
| |
15
|
L. McVoy and C. Staelin. lmbench: Portable tools for performance analysis. In USENIX Annual Technical Conference, 1996.
|
| |
16
|
|
| |
17
|
|
| |
18
|
K. Rajagopalan, S. Debray, M. Hiltunen, and R. Schlichting. Cassyopia: Compiler assisted system optimization. In Proc. 9th Usenix Workshop on Hot Topics in Operating Systems, 2003.
|
 |
19
|
|
| |
20
|
W. J. Schmidt , R. R. Roediger , C. S. Mestad , B. Mendelson , I. Shavit-Lottem , V. Bortnikov-Sitnitsky, Profile-directed restructuring of operating system code, IBM Systems Journal, v.37 n.2, p.270-297, April 1998
|
| |
21
|
B. Schwarz, S. Debray, G. Andrews, and M. Legendre. PLTO: A link-time optimizer for the intel ia-32 architecture. In Proc. 2001 Workshop on Binary Rewriting (WBT-2001), 2001.
|
| |
22
|
S. E. Speer, R. Kumar, and C. Partridge. Improving unix kernel performance using profile based optimization. In 1994 Winter USENIX, pages 181--188, 1994.
|
| |
23
|
|
| |
24
|
A. Tamches and B. P. Miller. Dynamic kernel code optimization. In Workshop on Binary Translation (WBT-2001), 2001.
|
CITED BY 7
|
|
Ludo Van Put , Bjorn De Sutter , Matias Madou , Bruno De Bus , Dominique Chanet , Kristof Smits , Koen De Bosschere, LANCET: a nifty code editing tool, ACM SIGSOFT Software Engineering Notes, v.31 n.1, January 2006
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|