| Compiler-assisted demand paging for embedded systems with flash memory |
| Full text |
Pdf
(393 KB)
|
| Source
|
International Conference On Embedded Software
archive
Proceedings of the 4th ACM international conference on Embedded software
table of contents
Pisa, Italy
SESSION: Programming languages
table of contents
Pages: 114 - 124
Year of Publication: 2004
ISBN:1-58113-860-1
|
|
Authors
|
|
Chanik Park
|
Samsung Electronics Co., Ltd., Hwasung-City, Gyeonggi-Do, Korea
|
|
Junghee Lim
|
Seoul National University, Seoul, Korea
|
|
Kiwon Kwon
|
Seoul National University, Seoul, Korea
|
|
Jaejin Lee
|
Seoul National University, Seoul, Korea
|
|
Sang Lyul Min
|
Seoul National University, Seoul, Korea
|
|
| Sponsor |
|
| Publisher |
|
| Bibliometrics |
Downloads (6 Weeks): 8, Downloads (12 Months): 110, Citation Count: 12
|
|
|
ABSTRACT
In this paper, we propose a novel, application specific demand paging mechanism for low-end embedded systems with flash memory as secondary storage. These systems are not equipped with virtual memory. A small memory space called an execution buffer is allocated to page an application. An application-specific page manager manages the buffer. The manager is generated by a compiler post-pass and combined with the application image. Our compiler post-pass analyzes the ELF executable image of an application and transforms function call/return instructions into calls to the page manager. As a result, each function of the code can be loaded into memory on demand at run time. To minimize the overhead of demand paging, code clustering algorithms are also presented. We evaluate our techniques with five embedded applications. We show that our approach can reduce the code memory size by 33% on average with reasonable performance degradation (8-20%) and energy consumption (10% more on average) for low-end embedded systems.
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
|
ARM. ARM Developer Suite Version 1.2: ARM Debug Target Guide. ARM Limited, 2001.
|
 |
3
|
|
| |
4
|
Samsung~Electronics Co. NAND Flash Memory and SmartMedia Data Book. 2002.
|
 |
5
|
Poletti Francesco , Paul Marchal , David Atienza , Luca Benini , Francky Catthoor , Jose M. Mendias, An integrated hardware/software approach for run-time scratchpad management, Proceedings of the 41st annual conference on Design automation, June 07-11, 2004, San Diego, CA, USA
[doi> 10.1145/996566.996634]
|
| |
6
|
Matthew R. Guthaus, Jeffrey S. Ringenberg, Dan Ernst, Todd M. Austin, Trevor Mudge, and Richard B. Brown. MiBench: A Free, Aommercially Representative Embedded Benchmark Suite. In Proceedings of the 4th Annual Workshop on Workload Characterization, December 1998.
|
| |
7
|
|
| |
8
|
Chunho Lee , Miodrag Potkonjak , William H. Mangione-Smith, MediaBench: a tool for evaluating and synthesizing multimedia and communicatons systems, Proceedings of the 30th annual ACM/IEEE international symposium on Microarchitecture, p.330-335, December 01-03, 1997, Research Triangle Park, North Carolina, United States
|
| |
9
|
M-Systems. Two Technologies Compared: NOR vs. NAND. White Paper, 91-SR-012-04-8L, Rev 1.1, July 2003.
|
| |
10
|
|
 |
11
|
Chanik Park , Jeong-Uk Kang , Seon-Yeong Park , Jin-Soo Kim, Energy-aware demand paging on NAND flash-based embedded storages, Proceedings of the 2004 international symposium on Low power electronics and design, August 09-11, 2004, Newport Beach, California, USA
[doi> 10.1145/1013235.1013317]
|
 |
12
|
Chanik Park , Jaeyu Seo , Sunghwan Bae , Hyojun Kim , Shinhan Kim , Bumsoo Kim, A low-cost memory architecture with NAND XIP for mobile embedded systems, Proceedings of the 1st IEEE/ACM/IFIP international conference on Hardware/software codesign and system synthesis, October 01-03, 2003, Newport Beach, CA, USA
[doi> 10.1145/944645.944684]
|
| |
13
|
Samsung Electronics Co. http://www.samsung.com/products/semiconductor/asic. 2004.
|
| |
14
|
|
 |
15
|
Tajana Simunic , Luca Benini , Peter Glynn , Giovanni De Micheli, Dynamic power management for portable systems, Proceedings of the 6th annual international conference on Mobile computing and networking, p.11-19, August 06-11, 2000, Boston, Massachusetts, United States
[doi> 10.1145/345910.345914]
|
| |
16
|
|
| |
17
|
|
 |
18
|
|
| |
19
|
Toshiba America Electronic Components, Inc. Cost Savings with NAND Shadowing Reference Design with Motorola MPC8260 and Toshiba CompactFlash. 2002.
|
| |
20
|
|
CITED BY 12
|
|
|
|
|
Bernhard Egger , Chihun Kim , Choonki Jang , Yoonsung Nam , Jaejin Lee , Sang Lyul Min, A dynamic code placement technique for scratchpad memory using postpass optimization, Proceedings of the 2006 international conference on Compilers, architecture and synthesis for embedded systems, October 22-25, 2006, Seoul, Korea
|
|
|
|
|
|
Yongsoo Joo , Yongseok Choi , Chanik Park , Sung Woo Chung , EuiYoung Chung , Naehyuck Chang, Demand paging for OneNAND™ Flash eXecute-in-place, Proceedings of the 4th international conference on Hardware/software codesign and system synthesis, October 22-25, 2006, Seoul, Korea
|
|
|
Hae-woo Park , Kyoungjoo Oh , Soyoung Park , Myoung-min Sim , Soonhoi Ha, Dynamic code overlay of SDF-modeled programs on low-end embedded systems, Proceedings of the conference on Design, automation and test in Europe: Proceedings, March 06-10, 2006, Munich, Germany
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
INDEX TERMS
Primary Classification:
C.
Computer Systems Organization
C.4
PERFORMANCE OF SYSTEMS
Subjects:
Design studies
Additional Classification:
D.
Software
D.3
PROGRAMMING LANGUAGES
D.3.4
Processors
Subjects:
Code generation;
Optimization;
Compilers
D.4
OPERATING SYSTEMS
D.4.2
Storage Management
Subjects:
Virtual memory;
Secondary storage;
Storage hierarchies
General Terms:
Algorithms,
Design,
Experimentation,
Management,
Measurement,
Performance
Keywords:
SRAM,
clustering,
compilers,
embedded systems,
flash memory,
heterogeneous memory,
paging,
post-pass optimization
|