skip to main content
10.1145/1176760.1176787acmconferencesArticle/Chapter ViewAbstractPublication PagesesweekConference Proceedingsconference-collections
Article

Protected heap sharing for memory-constrained java environments

Published: 22 October 2006 Publication History

Abstract

Multitasking is one of capabilities we often want to have in memory-constrained embedded systems. To support multiple address spaces within a small physical memory, a simple memory management frequently encounters the lack of available memory. Our paper presents an efficient heap memory management scheme that reduces memory footprints by adaptively sharing heaps among multiple tasks in JVM environments. We modified KVM from Sun Microsystems so that Java applications acquire or release heaps in a shared pool on an as-needed basis. To protect address spaces among tasks in the absence of virtual memory capabilities, we use memory protection units (MPUs) by incorporating them into our heap sharing scheme. Our experiments with J2ME MIDP applications show significant reductions by 33% on average, ranging from 6% to 50% in memory usage over the execution. The overheads of our scheme in garbage collection are kept low. The execution times in our scheme increase only by 0.2% on average.

References

[1]
R. Shaham, E. K. Kolodner, and M. Sagiv. On the Effectiveness of GC in Java. In Proc. of the 2nd International Symposium on Memory Management, pp. 12--17, 2000.]]
[2]
R. Shaham, E. K. Kolodner, and M. Sagiv. Heap Profiling for Space-Efficient Java. In Proc. of the ACM SIGPLAN 2001 conference on Programming language design and implementation, pp. 104--113, 2001.]]
[3]
A. Sloss, D. Symes, and C. Wright. ARM System Developer's Guide. Morgan Kaufmann Publishers, San Francisco, CA, 2004.]]
[4]
T. Yang,E. D. Berger, M. H. Hertz, S. F. Kaplan, and J. EB. Moss. Automatic Heap Sizing: Taking Real Memory Into Account. In Proc. of the 4th International Symposium on Memory Management, pp. 61--72, 2004.]]
[5]
G. Chen, R. Shetty, M. Kandemir, N. Vijaykrishnan, M. J. Irwin, and M. Wolczko. Tuning garbage collection for reducing memory system energy in an embedded Java environment. ACM Transactions on Embedded Computing Systems, 1(1): 27--55, 2002.]]
[6]
P. Griffin, W. Srisa-an, and J. M. Chang. An Energy Efficient Garbage Collector for Java Embedded Devices. In Proc. of the 2005 ACM SIGPLAN/SIGBED conference on Languages, compilers, and tools for embedded systems, pp. 230--238, 2005.]]
[7]
R. Johnes and R. Lins. Garbage Collection: Algoriths for Automatic Dynamic Memory management. John Wiley & Sons Ltd., West Sussex, England, 1996.]]
[8]
Connected, Limited Device Configuration (CLDC) 1.0.4. {Online}. Available: http://java.sun.com/javame]]
[9]
KVM Porting Guide, CLDC, Version 1.0.4, Java 2 Platform, Micro Edition, Santa Clara, CA, Sun Microsystems, Inc., 2002.]]
[10]
P. R. Wilson, M. S. Johnstone, M. Neely, and D. Boles. Dynamic Storage Allocation: A Survey and Critical Review. In Proc. of International Workshop on Memory Management, 1995.]]
[11]
J-P. Tual. MASSC: a generic architecture for multiapplication smart cards. IEEE Micro, 19(5): 52--61, 1999.]]
[12]
MacroExpress® {Online}. Available: http://www.macros.com]]
[13]
midlet.org -- Wireless Java Download. {Online}. Available: http://midlet.org]]
[14]
Minoraxis, Inc. {Online}. Available: http://www.minoraxis.com]]
[15]
Mobile Information Device Profile (MIDP) v2.0. {Online}. Available: http://java.sun.com/javame]]

Cited By

View all
  • (2008)Shared heap management for memory-limited java virtual machinesACM Transactions on Embedded Computing Systems (TECS)10.1145/1331331.13313377:2(1-32)Online publication date: 29-Jan-2008

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
CASES '06: Proceedings of the 2006 international conference on Compilers, architecture and synthesis for embedded systems
October 2006
448 pages
ISBN:1595935436
DOI:10.1145/1176760
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 22 October 2006

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. dynamic memory management
  2. garbage collection
  3. heap sharing
  4. memory protection unit

Qualifiers

  • Article

Conference

ESWEEK06
ESWEEK06: Second Embedded Systems Week 2006
October 22 - 25, 2006
Seoul, Korea

Acceptance Rates

Overall Acceptance Rate 52 of 230 submissions, 23%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)1
  • Downloads (Last 6 weeks)0
Reflects downloads up to 08 Mar 2025

Other Metrics

Citations

Cited By

View all
  • (2008)Shared heap management for memory-limited java virtual machinesACM Transactions on Embedded Computing Systems (TECS)10.1145/1331331.13313377:2(1-32)Online publication date: 29-Jan-2008

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media