Skip to main content

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 2889))

  • 461 Accesses

Abstract

This paper describes JuNI++, a C++ native interface for interpreted Java Virtual Machines. While JuNI++ was initially designed in order to integrate the RTSJ implementation jRate with Juice, a virtual machine for small footprint environments, its engineering and performance advantages outlived the initial goal. The main contribution of this paper is to show how a C++ based native interface can fully and efficiently support the Java mapping in interpreted environments without requiring any cooperation from the C++ compiler.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Kaffe Virtual Machine Home Page (2002), http://www.kaffe.org

  2. NUXI Home Page (2002), http://nuxi.iit.unict.it

  3. Superwaba Home Page (2002), http://www.superwaba.org

  4. Stefano, A.D., Santoro, C.: A Java Kernel for Embedded Systems in Distributed Process Control. IEEE Concurrency, special issue on Operating Systems Research & Development 8(4) (2000)

    Google Scholar 

  5. Stefano, A.D., Santoro, C.: Java Devices for Distributed Process Control. In: Proc. of 2000 IEEE International Symposium on Industrial Electronics (ISIE 2000). IEEE, Los Alamitos (2000)

    Google Scholar 

  6. Bollella, G., Gosling, J., Brosgol, B., Dibble, P., Furr, S., Hardin, D., Turnbull, M.: The Real-Time Specification for Java. Addison-Wesley, Reading (2000)

    Google Scholar 

  7. Corsaro, A., Cytron, R.K.: Efficient Memory-Reference Checks for Real-Time Java. In: Proceedings of the 2003 ACM SIGPLAN conference on Language, compiler, and tool for embedded systems, pp. 51–58. ACM Press, New York (2003)

    Chapter  Google Scholar 

  8. Corsaro, A., Schmidt, D.C.: Evaluating Real-Time Java Features and Performance for Real-time Embedded Systems. In: Proceedings of the 8th IEEE Real-Time Technology and Applications Symposium, San Jose. IEEE, Los Alamitos (September 2002)

    Google Scholar 

  9. Corsaro, A., Schmidt, D.C.: The Design and Performance of the jRate Real- Time Java Implementation. In: Meersman, R., Tari, Z., et al. (eds.) CoopIS 2002, DOA 2002, and ODBASE 2002. LNCS, vol. 2519, pp. 900–921. Springer, Heidelberg (2002)

    Chapter  Google Scholar 

  10. Czaenwcki, K., Eisenecker, U.W.: Generative Programming: Methods, Tools, and Applications. Addison-Wesley, Reading (2000)

    Google Scholar 

  11. Gamma, E., Helm, R., Johnson, R., Vlissides, R.: Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley, Reading (1994)

    Google Scholar 

  12. GNU is Not Unix. The Cygnus Native Interface for C++/Java Integration, http://gcc.gnu.org/java/papers/cni/t1.html

  13. GNU is Not Unix. GCJ: The GNU Complier for Java (2002), http://gcc.gnu.org/java

  14. IBM. WebSphere Studio Device Developer (2003), http://www-3.ibm.com/software/wireless/wsdd/

  15. Lindholm, T., Yellin, F.: The Java(TM) Virtual Machine Specification, 2nd edn. Addison-Wesley, Reading (1999)

    Google Scholar 

  16. Lutz, M.: Programming Python, 2nd edn. O’Reilly, Sebastopol (2001)

    MATH  Google Scholar 

  17. Santoro, C.: An Operating System in a Nutshell. Internal Report, Dept. of Computer Engineering and Telecommunication, UniCT, Italy (2002)

    Google Scholar 

  18. Sun Microsystems inc. Java Micro Edition Documentation (2002), http://java.sun.com/j2me

  19. Sun Microsystems inc. Java Native Interface Documentation (2002), http://java.sun.com/j2se/1.4.2/docs/guide/jni/index.html

  20. Sun Microsystems inc. KVM White Paper (2002), http://java.sun.com

  21. The AspectJ Organization. Aspect-Oriented Programming for Java (2001), http://www.aspectj.org

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2003 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Corsaro, A., Santoro, C. (2003). A C++ Native Interface for Interpreted JVMs. In: Meersman, R., Tari, Z. (eds) On The Move to Meaningful Internet Systems 2003: OTM 2003 Workshops. OTM 2003. Lecture Notes in Computer Science, vol 2889. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-39962-9_60

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-39962-9_60

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-20494-7

  • Online ISBN: 978-3-540-39962-9

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics