Secure Internet Programming
* History
* People
* Partners
* Research
* Publications
* Links
Experience with Secure Multi-Processing in Java

Dirk Balfanz
Li Gong

As Java is the preferred platform for the deployment of network computers, it is appealing to run multiple applications on a single Java desktop. We experimented with using the Java platform as a multi-processing, multi-user environment. Although the Java Virtual Machine (JVM) is not inherently a single-application design, we have found that the implementation of the Java Development Kit (JDK) often implicitly assumes that the Java Virtual Machine runs exactly one application at any one time. In this paper, we report the limitations we encountered and propose improvements to several aspects of the Java architecture, including its security features. We have implemented all the proposed changes in a prototype based on the in-house beta version of JDK 1.2. Our prototype uses a Bourne shell-like command line tool to launch multiple applications (such as Appletviewer) within one JVM.

Technical Report 560-97, Department of Computer Science, Princeton University, September 1997

GZip'ed Postscript (164k)
PDF (Adobe Acrobat) (2904k)

See Also
Tech Report 560-97
A slightly shorter version of this paper has appeared in the proceedings of ICDCS'98. It is available as GZip'ed Postscript and PDF.

Princeton University
Department of Computer Science