ACM Home Page
Please provide us with feedback. Feedback
Remote specialization for efficient embedded operating systems
Full text PdfPdf (885 KB)
Source
ACM Transactions on Programming Languages and Systems (TOPLAS) archive
Volume 30 ,  Issue 4  (July 2008) table of contents
Article No. 22  
Year of Publication: 2008
ISSN:0164-0925
Authors
Sapan Bhatia  Princeton University
Charles Consel  LaBRI/INRIA
Calton Pu  Georgia Institute of Technology
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 13,   Downloads (12 Months): 198,   Citation Count: 0
Additional Information:

abstract   references   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1377492.1377497
What is a DOI?

ABSTRACT

Prior to their deployment on an embedded system, operating systems are commonly tailored to reduce code size and improve runtime performance. Program specialization is a promising match for this process: it is predictable and modules, and it allows the reuse of previously implemented specializations. A specialization engine for embedded systems must overcome three main obstacles: (i) Reusing existing compilers for embedded systems, (ii) supporting specialization on a resource-limited system and (iii) coping with dynamic applications by supporting specialization on demand.

In this article, we describe a runtime specialization infrastructure that addresses these problems. Our solution proposes: (i) Specialization in two phases of which the former generates specialized C templates and the latter uses a dedicated compiler to generate efficient native code. (ii) A virtualization mechanism that facilitates specialization of code at a remote location. (iii) An API and supporting OS extensions that allow applications to produce, manage and dispose of specialized code.

We evaluate our work through two case studies: (i) The TCP/IP implementation of Linux and (ii) The TUX embedded web server. We report appreciable improvements in code size and performance. We also quantify the overhead of specialization and argue that a specialization server can scale to support a sizable workload.


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
 
3
4
 
5
 
6
7
8
9
 
10
Evans Data Corporation. 2003. Embedded systems development survey.
11
 
12
Hewlett-Packard. 1996. Netperf: A network performance benchmark.
 
13
 
14
15
 
16
 
17
Lee, H. B., Diwan, A., and Moss, J. E. B. 2004. Design, implementation, and evaluation of a compilation server. Technical rep. CU-CS-978-04, University of California at Boulder.
 
18
Linux Devices Magazine. 2003. Wind river's bruggeman defines Device Software Optimization (DSO).
 
19
Linux Devices Magazine. 2003. New linksys wireless ap runs 3rd-party embedded linux. http://www.linuxdevices.com/news/NS3238024255.html.
 
20
LXR. The LXR source-code cross-referencing system for Linux. URL: http://lxr.linux.no/.
 
21
22
 
23
 
24
 
25
 
26
Owens, K. 2006. kbuild. URL: http://kbuild.sourceforge.net/.
 
27
PicoFreeBSD. Pico freebsd. URL: http://people.freebsd.org/picobsd/.
28
29
 
30
TinyLinux. Tinylinux. URL: http://tiny.seul.org/en/.
 
31
32

Collaborative Colleagues:
Sapan Bhatia: colleagues
Charles Consel: colleagues
Calton Pu: colleagues