In a second thread, I will talk about our approach for bringing mobile code to resource-constrained devices such as cellphones and PDAs. Rather than interpreting on the device (which requires high clock frequencies that eat up battery life) or compiling just-in-time into more efficient native code (which requires a substantial up-front investment and significant resources on the handheld that again cost battery life), we use a CODE GENERATING ROUTER to compile the code IN THE NETWORK (or on a wireless base station) while it is passing from the Internet to the handheld device. Interestingly, because the code generating router can perform rapid type analysis, we can reduce the amount of code that needs to be actually downloaded to the device by more than 90% in many cases. Hence, our approach can provide the FULL Java library functionality to such devices, instead of a severely limited "small device profile" subset.
In a third thread, I will talk about my vision of the "secure desktop computer system" of the future. We are in the process of creating such a system as a reference architecture, in which compilers play an essential part. The key is to use a hybrid between virtual machines and proof carrying code, which allows to invert the traditional relationship between the compiler and the operating system. In our approach, the operating system is no longer trusted, but it runs on top of a type-safe ultra-efficient virtual machine that is small enough to be manually certified for correctness.
This talk should interest anyone with interests in mobile code, dynamic compilation, and code safety/verification.
Prof. Michael Franz leads a research group of 14 Ph.D. students and two Post-Doctoral fellows at the University of California, Irvine. His current research focuses primarily on security and efficiency aspects of mobile code. Other research interests include code compression, dynamic compilation, compiling for low power use, and programming languages and architectures for component-based software construction. Franz received a Dr. sc. techn. degree in Computer Science and a Dipl. Informatik-Ing. degree, both from the Swiss Federal Institute of Technology, ETH Zurich.