• Title/Summary/Keyword: JNI Code

Search Result 7, Processing Time 0.021 seconds

Translation of Java Bytecode into C code with the JNI (자바 바이트코드로부터 JNI를 사용한 C 코드의 변환)

  • 권혜은;김상훈
    • The Journal of Information Technology
    • /
    • v.4 no.1
    • /
    • pp.1-7
    • /
    • 2001
  • The well-known tradeoff of Java's portability is the inefficiency of its basic execution model, which relies on the interpretation of an virtual machine. Many solutions have been proposed to overcome this problem, such as just-in-time(JIT) and offline bytecode compilers. However, JIT compiler can not avoid the overhead of runtime. since it translate bytecode into native code at runtime. And, pure offline bytecode compiler limits the ability of dynamic class loading. In this paper, we present an approach which preserves the ability to dynamically load bytecode, and is more efficient than JIT. In contrast to existing bytecode-to-C translator using the old NMI, our translator maintain complete compatibility and portability through using the Java Native Interface(JNI) standard. We have designed and implemented an translator for converting bytecode to C code with JNI.. named MyJNItool.

  • PDF

Java and C/C++ Mixed Programming (자바와 C/C++의 혼합 프로그래밍)

  • Kim, Sang-Hoon
    • Journal of Korea Multimedia Society
    • /
    • v.13 no.10
    • /
    • pp.1514-1524
    • /
    • 2010
  • The standard Java class library does not support the platform-dependent features needed by the application. Therefore, the Java application including the platform -dependent features must supplement the required features by invoking native functions using JNI. The native language programmer has to explicitly specify how to connect to various Java objects and later to disconnect from them. In this paper, I suggest a way to avoid these annoying works. The native method in the pure java class can not contain a native code block. By providing a native code block for the native method, it is possible for programmer to write a native code without being aware of JNI. To achieve this, I introduced the native class that is a java class on the native environment, and made it possible to interchange data by placing an arbitrator between the java class and the native class.

Mixed-mode execution environment using the JNI (JNI를 사용한 혼합형 실행 환경)

  • Kim Sang-Hoon
    • The Journal of Information Technology
    • /
    • v.5 no.4
    • /
    • pp.35-44
    • /
    • 2002
  • The tradeoff of Java's portability is the inefficiency of interpretation. Also, the standard Java class library may not support the platform-dependent features needed by your application. Several solutions have been proposed to overcome these problems, such as JNI, JIT, off-line bytecode compilers. In this paper, we present an mixed-mode execution model which Java virtual machine executes together with native code. This execution model and its translator preserves the ability to dynamically load bytecode, and reduce the difficulties of JNI usages. Our system is more efficient than JIT, and helps programmer to write C implementation for the native method without the concept of JNI.

  • PDF

Implementation of Android-Based Applications that can Select Motion Gestures In Up, Down, Left, and Right Directions (안드로이드 기반 상하좌우 방향의 동작 제스처를 선택할 수 있는 응용 프로그램 구현)

  • Yeong-Nam Jeon
    • The Journal of the Korea institute of electronic communication sciences
    • /
    • v.18 no.5
    • /
    • pp.945-952
    • /
    • 2023
  • In this paper, GRS chip driven JNI code application SW design based on Android platform was designed and fabricated as motion gesture frame module based on Android platform. The serial data reception module design proposed by the application-based network support API technology was designed with Android-based module design, Android-based module implementation, and Android-based function module implementation design. The data information of the sensor could be checked through Android applications such as classes of serial communication drivers, libraries, and frameworks for receiving data from wireless communication devices through Android OS applications. In addition, applications in Android implement application SW that can judge motion gestures in four directions using Java.

Java Native Method Generating System (자바 네이티브 메소드 생성 시스템)

  • 김도영;김상훈
    • The Journal of Information Technology
    • /
    • v.3 no.2
    • /
    • pp.13-21
    • /
    • 2000
  • Java native method is proposed for the efficient execution of time-critical code, running of platform dependent job, and reuse of established libraries. If the writing of the Java native method is the speedup of execution time, you must use a compiled language not java language to write native method. Also, you must know the usage of the Java native interface to use native method. To reduce these difficulties, we proposed java native method generator that changes java method into native method automatically. Also, NMG helps programmer to write C implementation for the native method because there Is no need for the concept of JNI.

  • PDF

An Empirical Study of Diversity and Interoperability of Programming Languages (프로그래밍 언어의 다원성과 상호운영성의 실증적 분석)

  • Ko, Bongsuk;Lee, Byeongcheol
    • KIISE Transactions on Computing Practices
    • /
    • v.23 no.5
    • /
    • pp.304-309
    • /
    • 2017
  • Programmers use multiple languages to reuse legacy code best suited to their problems. However, it is quite challenging to develop error-free multilingual programs because new types of bugs occur since misunderstanding about language interfaces such as Java Native Interface (JNI) and Python/C. There is a considerable amount of research to overcome multilingual program bugs and errors but these researches have less consideration about substantiality of programming languages, language interfaces, and bugs to evaluate their analyses and tools. In this paper, we have identified and establish substantiality of multilingual programming research with empirical study about diversity and interoperability of programming languages in Ubuntu software ecosystem based on real-world statistical data.

Adaptable I/O System based I/O Reduction for Improving the Performance of HDFS

  • Park, Jung Kyu;Kim, Jaeho;Koo, Sungmin;Baek, Seungjae
    • JSTS:Journal of Semiconductor Technology and Science
    • /
    • v.16 no.6
    • /
    • pp.880-888
    • /
    • 2016
  • In this paper, we propose a new HDFS-AIO framework to enhance HDFS with Adaptive I/O System (ADIOS), which supports many different I/O methods and enables applications to select optimal I/O routines for a particular platform without source-code modification and re-compilation. First, we customize ADIOS into a chunk-based storage system so its API semantics can fit the requirement of HDFS easily; then, we utilize Java Native Interface (JNI) to bridge HDFS and the tailored ADIOS. We use different I/O patterns to compare HDFS-AIO and the original HDFS, and the experimental results show the design feasibility and benefits. We also examine the performance of HDFS-AIO using various I/O techniques. There have been many studies that use ADIOS, however our research is expected to help in expanding the function of HDFS.