Operating systems (2nd ed.): design and implementation
Operating systems (2nd ed.): design and implementation
Generational garbage collection and the radioactive decay model
Proceedings of the ACM SIGPLAN 1997 conference on Programming language design and implementation
IEEE Transactions on Software Engineering
Overlapping execution with transfer using non-strict execution for mobile programs
Proceedings of the eighth international conference on Architectural support for programming languages and operating systems
The anatomy of a context-aware application
MobiCom '99 Proceedings of the 5th annual ACM/IEEE international conference on Mobile computing and networking
A hardware mechanism for dynamic extraction and relayout of program hot spots
Proceedings of the 27th annual international symposium on Computer architecture
Controlling garbage collection and heap growth to reduce the execution time of Java applications
OOPSLA '01 Proceedings of the 16th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Linkers and Loaders
Java Virtual Machine Specification
Java Virtual Machine Specification
XMILE: An XML Based Approach for Incremental Code Mobility and Update
Automated Software Engineering
Uniprocessor Garbage Collection Techniques
IWMM '92 Proceedings of the International Workshop on Memory Management
Adding Hardware Support to the HotSpot Virtual Machine for Domain Specific Applications
FPL '02 Proceedings of the Reconfigurable Computing Is Going Mainstream, 12th International Conference on Field-Programmable Logic and Applications
UbiComp '01 Proceedings of the 3rd international conference on Ubiquitous Computing
To Collect or Not to Collect? Machine Learning for Memory Management
Proceedings of the 2nd Java Virtual Machine Research and Technology Symposium
WATCHMAN: A Data Warehouse Intelligent Cache Manager
VLDB '96 Proceedings of the 22th International Conference on Very Large Data Bases
Exploiting program hotspots and code sequentiality for instruction cache leakage management
Proceedings of the 2003 international symposium on Low power electronics and design
CODEWEAVE: Exploring Fine-Grained Mobility of Code
Automated Software Engineering
CARISMA: Context-Aware Reflective mIddleware System for Mobile Applications
IEEE Transactions on Software Engineering
Planning for code buffer management in distributed virtual execution environments
Proceedings of the 1st ACM/USENIX international conference on Virtual execution environments
Hi-index | 0.00 |
The progress of mobile device technology unfolds a new spectrum of applications that challenges conventional infrastructure models. Most of these devices are perceived by their users as "appliances" rather than computers and accordingly the application management should be done transparently by the underlying system unlike classic applications managed explicitly by the user. Memory management on such devices should consider new types of mobile applications involving code mobility such as mobile agents, active networks and context aware applications. This paper describes a new code management technique, called "code collection" and proposes a specific code collection algorithm, the Adaptive Code Collection Algorithm (ACCAL). Code collection is a mechanism for transparently loading and discarding application components on mobile devices at runtime that is designed to permit very low memory usage and at the same time good performance by focusing memory usage on the hotspots of the application. To achieve these goals, ACCAL uses properties specific to executable code and enhances conventional data management methods such as garbage collection and caching. The results show that fine-grained code collection allows large applications to execute by using significantly less memory while inducing small execution time overhead.