CE-11.14

Title: 

Automatic Memory Management on IOS Devices for Cross Compiled Java Applications

Author(s): 

Joshua Melcon

Oral Defence Date: 

12/07/2011

Location: 

HH 301

Committee: 

Professors Arno Puder and Hui Yang

Abstract: 

XMLVM allows developers to write Java programs that use the Apple iOS API and then cross-compile them to native Objective-C programs. To execute these programs on iOS devices the Java Virtual Machine's (JVM) memory managed model must be supported. This project describes two separate ways in which to achieve this goal. Â First, an algorithm which analyzes JVM instructions and automatically inserts code to reference count Java objects to allow for memory management. Â Second, the Boehm garbage collector is embedded into the iOS application to replace the JVM's garbage collector. Â Reference counting and garbage collection are explained, compared, and contrasted within the context of XMLVM. The JVM instruction-based reference counting algorithm is described.

Keywords: 

XMLVM, automatic reference counting, garbage collection, Cross-compilation to iPhone

Copyright: 

Joshua Melcon