Building a Flexible Java Runtime upon a Flexible Compiler

G. Thomas, F. Ogel, A. Galland, B. Folliot, and I. Piumarta


  1. [1] Java 2 Platform Micro Edition (J2ME), Connected Limited Device Configuration (CLDC) Specification,
  2. [2] Z. Chen, Java card technology for smart cards: Architecture and programmer’s guide, The Java Series, Addison-Wesley, 2000.
  3. [3] G. Michael, Design and implementation of a meta architecture for Java, Master’s thesis, University of Erlangen, January 1997.
  4. [4] M. Atkinson, L. Daynes, M. Jordan, T. Printezis, & S. Spence, An orthogonally persistent Java, ACM SIGMOD Record 25, December 1996, 4.
  5. [5] R. Fitzgerald, T.B. Knoblock, E. Ruf, B. Steensgaard, & D. Tarditi, Marmot: An optimizing compiler for Java, Software Practices and Experiences 30, 3 (March 2000).
  6. [6] J. Howell, M. Montague, & D. College, Hey, You got your compiler in my operating system! 7th IEEE Workshop on Hot Topics in Operating Systems (HotOS-VII), Rio Rico, Arizona, USA, March 1999. doi:10.1109/HOTOS.1999.798388
  7. [7] F. Ogel, G. Thomas, I. Piumarta, A. Galland, B. Folliot, & C. Baillarguet, Towards active applications: The Virtual Virtual Machine approach, New Trends in Computer Science and Engineering, A92 Publishing House, POLIROM Press, 2003.
  8. [8] C. Boyapati, JPS: A distributed persistent Java system, Master’s thesis, Massachussetts Institute of Technology (MIT), September 1998.
  9. [9] J. Gosling, G. Bollella, B. Brosgol, P. Dibble, S. Furr, & M. Turnbull, The real-time specification for Java, The Java Series, Addison-Wesley, 2000.
  10. [10] A.C. Myers, J.A. Bank, & B. Liskov, Parameterized types for Java, 24th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (POPL), Paris, France, January 1997. doi:10.1145/263699.263714
  11. [11] B.N. Bershad, S. Savage, P. Pardyak, E.G. Sirer, M.E. Fiuczynski, D. Becker, C. Chambers, & S. Eggers, Extensibility, Safety and Performance in the SPIN Operating System, the 15th ACM Symposium on Operating Systems Principles (SOSP), December 1995. doi:10.1145/224056.224077
  12. [12] M.I. Seltzer, Y. Endo, C. Small, & K.A. Smith, Dealing with disaster: surviving misbehaved kernel extensions, 2nd USENIX Symposium on Operating Systems Design and Implementation (OSDI), 1996.
  13. [13] D.R. Engler, M.F. Kaashoek, & J.W. O’Toole, Exokernel: An operating system architecture for application-level ressource management, the 15th ACM Symposium on Operating Systems Principles (SOSP), Copper Mountain Resort, Colorado, USA, December 1995. doi:10.1145/224057.224076
  14. [14] T.L. Harris, An extensible virtual machine architecture, Simplicity, Performance and Portability in Virtual Machine Design Workshop (OOPSLA Conference), Denver, Colorado, USA, November 1999.
  15. [15] S. Dobson, P. Nixon, V. Wade, S. Terzis, & J. Fuller, Vanilla: An open language framework, Generative and ComponentBased Software Engineering (GCSE), Vol. 1799 of LNCS (Denver, Colorado, USA: Springer-Verlag, September 28–30, 1999).
  16. [16] C. Rippert, A. Courbot, & G. Grimaud, A low-footprint class loading mechanism for embedded Java Virtual Machines, 3rd Principles and Practice of Programming in Java (PPPJ) (Las Vegas, USA: ACM Press, 2004).
  17. [17] U.P. Schultz, K. Burgaard, F.G. Christensen, & J.L. Knudsen, Compiling Java for low-end embedded systems, Language, compiler, and tool support for embedded systems (LCTES)—ACM SIGPLAN Notices 38, 2003, 7.
  18. [18] G. Muller & U.P. Schultz, Harissa: A hybrid approach to Java execution, IEEE Software 16, March/April 1999, 2. doi:10.1109/52.754052
  19. [19] Palm, PalmOS,
  20. [20] Microsoft, WindowsCE, embedded/.
  21. [21] Cygnus, eCos,
  22. [22] D. Deville, A. Galland, G. Grimaud, & S. Jean, Smart card operating systems: past, present and future, the 5th USENIX/NordU Conference, V¨aster˚as, Sweden, February 2003.
  23. [23] I. Piumarta, F. Ogel, & B. Folliot, YNVM: dynamic compilation in support of software evolution, Engineering Complex Object Oriented System for Evolution Workshop (OOPSLA Conference), Tampa Bay, Florida, USA, October 2001.
  24. [24] ISO International Organization for Standardization, Information Technology—Open Distributed Processing—Reference Model, ISO/IEC 10746-(1-4) ed., 1996–1998.
  25. [25] A. Senart, O. Charra, & J.-B. Stefani, Developing dynamically reconfigurable operating system kernels with the think component architecture, Engineering Context-aware ObjectOriented Systems and Environments Workshop (ECOOSE), in association with OOPSLA, Seattle, USA, November 2002.
  26. [26] J.-P. Fassino, J.-B. Stefani, J. Lawall, & G. Muller, THINK: A software framework for component-based operating system kernels, USENIX Annual Technical Conference, Monterey, CA, USA, June 2002.
  27. [27] T. Lindholm & F. Yellin, The Java Virtual Machine Specification, 2nd ed, The Java Series, Addison-Wesley, September 1996.
  28. [28] G. Kiczales, J. Lamping, A. Menhdhekar, C. Maeda, C. Lopes, & J.-M.L. John Irwin, Aspect-oriented programming, 11th European Conference on Object-Oriented Programming (ECOOP), Vol. 1241, Springer-Verlag, Jyväskylä, Finnland, 1997.
  29. [29] I. Piumarta, The virtual processor: fast, architecture-neutral dynamic code generation, 3rd USENIX symposium on Virtual Machine Research and Technology, San Jose, California, USA, May 2004.
  30. [30] J. Gosling, B. Joy, G.L. Steele, & G. Bracha, The Java Language Specification, 2nd ed, The Java Series, Addison-Wesley, 1996.
  31. [31] GNU, ClassPath 0.10. classpath/.
  32. [32] B. Blanchet, Escape analysis for Java: theory and practice, ACM Transactions on Programming Languages and Systems 25, November 2003, 6. doi:10.1145/945885.945886
  33. [33] EPCC, Edinburgh Parallel Computing Centre, Java grande forum benchmark suite—version 2.0, 2003, http://www.
  34. [34] M. Franz, V. Haldar, C. Krintz, & C.H. Stork, Online verification of offline escape analysis, Tech. Rep. 26-2002, Department of Computer Science University of California, Santa Barbara (UCSB), September 2002.
  35. [35] H.-J. Boehm, A.J. Demers, & S. Shenker, Mostly parallel garbage collection, Conference on Programming Languag Design and Implementation (PLDI)-ACM SIGPLAN Notices 26, 1991, 6. doi:10.1145/113445.113459

Important Links:

Go Back