CE-11.14

Automatic Memory Management on IOS Devices for Cross Compiled Java Applications


Author(s): 

Joshua Melcon

Oral Defence Date: 

Wednesday, December 7, 2011 - 16:30

Location: 

HH 301

Time: 

4:30 PM

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.


Copyright: 
Joshua Melcon

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