Skip to main content

A Java Card Virtual Machine Design Based on Off-card/On-card Co-design Pre-processing

  • Conference paper
  • First Online:
Computer Engineering and Technology (NCCET 2017)

Part of the book series: Communications in Computer and Information Science ((CCIS,volume 600))

Included in the following conference series:

  • 510 Accesses

Abstract

The design of Java Card Virtual Machine (JCVM) is the critical part in Java Card development. One of the evaluation standards on Java card is the fast response rate. Embedded a high performance JCVM on the memory constrained devices such as smart card is a great challenge. This paper presents an implementation of JCVM and an off-card/on-card co-design pre-processing approach to speed up the interpreter in JCVM. In the off-card domain, we propose moving part of instruction interpreting off card, performing a static analysis on applet files before downloaded. In the on-card domain, a dynamic analysis for external items reference is adopted with a small amount of addition code. The experiment result shows that our proposed scheme has an improvement of 36.3% on execution rate, therefore it is effective to speed up JCVM and it is available for Java card to raise its responsive efficiency.

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 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.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

References

  1. Oracle, Java Card 3 Platform: Runtime Environment Specification, Classic Edition. Version 3.0.4. Oracle, September 2011

    Google Scholar 

  2. Oracle, Java Card 3 Platform: Virtual Machine Specification, Classic Edition. Version 3.0.4. Oracle, September 2011

    Google Scholar 

  3. Oracle, Java Card 3 Platform: Application Programming Interface Specification, Classic Edition. Version 3.0.4. Oracle, September 2011

    Google Scholar 

  4. Chen, Z.: Java Card™ Technology for Smart Cards. Java Card Technology for Smart Cards: Architecture and Programmer’s Guide. Addison-Wesley Longman Publishing Co. Inc (2000)

    Google Scholar 

  5. Ertl, M.A.: Threaded code variations and optimizations. In: EuroForth 2001 Conference Proceedings, pp. 49–55 (2001)

    Google Scholar 

  6. Gregg, D., Ertl, M.A., Krall, A.: A fast Java interpreter. In: Proceedings of the Workshop on Java Optimization Strategies for Embedded Systems (JOSES), Citeseer, Genoa (2001)

    Google Scholar 

  7. Jin, M.-S., Choi, W.-H., Yang, Y.-S., Jung, M.-S.: A study on fast JCVM with new transaction mechanism and caching-buffer based on Java card objects with a high locality. In: Enokido, T., Yan, L., Xiao, B., Kim, D., Dai, Y., Yang, Laurence T. (eds.) EUC 2005. LNCS, vol. 3823, pp. 91–100. Springer, Heidelberg (2005). https://doi.org/10.1007/11596042_10

    Chapter  Google Scholar 

  8. Zilli, M., Raschke, W., Weiss, R., et al.: Hardware/software co-design for a high-performance Java card interpreter in low-end embedded systems. Microprocess. Microsyst. 39(8), 1076–1086 (2015)

    Article  Google Scholar 

  9. Liu, T., Zhang, D., Jiang, Y.: Research and Implementation of Bytecode Instruction Folding on Java Card (2014)

    Google Scholar 

  10. Cao, X., Ying, L.I.: Feedback-based JCVM instruction prescheduling scheme. Comput. Eng. 40(1), 78–82 (2014)

    Google Scholar 

Download references

Acknowledgments

The research was supported by the National Natural Science Foundation of China (No. 61402546). The project has also been supported by two Technology Projects of Guangzhou (No. 201604016126) and (No. 201604010110).

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Jiaxin Hong .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2018 Springer Nature Singapore Pte Ltd.

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Hong, J., Hu, J., Lin, G. (2018). A Java Card Virtual Machine Design Based on Off-card/On-card Co-design Pre-processing. In: Xu, W., Xiao, L., Li, J., Zhang, C., Zhu, Z. (eds) Computer Engineering and Technology. NCCET 2017. Communications in Computer and Information Science, vol 600. Springer, Singapore. https://doi.org/10.1007/978-981-10-7844-6_2

Download citation

  • DOI: https://doi.org/10.1007/978-981-10-7844-6_2

  • Published:

  • Publisher Name: Springer, Singapore

  • Print ISBN: 978-981-10-7843-9

  • Online ISBN: 978-981-10-7844-6

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics