$\require{mediawiki-texvc}$

연합인증

연합인증 가입 기관의 연구자들은 소속기관의 인증정보(ID와 암호)를 이용해 다른 대학, 연구기관, 서비스 공급자의 다양한 온라인 자원과 연구 데이터를 이용할 수 있습니다.

이는 여행자가 자국에서 발행 받은 여권으로 세계 각국을 자유롭게 여행할 수 있는 것과 같습니다.

연합인증으로 이용이 가능한 서비스는 NTIS, DataON, Edison, Kafe, Webinar 등이 있습니다.

한번의 인증절차만으로 연합인증 가입 서비스에 추가 로그인 없이 이용이 가능합니다.

다만, 연합인증을 위해서는 최초 1회만 인증 절차가 필요합니다. (회원이 아닐 경우 회원 가입이 필요합니다.)

연합인증 절차는 다음과 같습니다.

최초이용시에는
ScienceON에 로그인 → 연합인증 서비스 접속 → 로그인 (본인 확인 또는 회원가입) → 서비스 이용

그 이후에는
ScienceON 로그인 → 연합인증 서비스 접속 → 서비스 이용

연합인증을 활용하시면 KISTI가 제공하는 다양한 서비스를 편리하게 이용하실 수 있습니다.

[국내논문] 자바 바이트코드로부터 JNI를 사용한 C 코드의 변환
Translation of Java Bytecode into C code with the JNI 원문보기

情報學硏究 = The studies of information technology, v.4 no.1, 2001년, pp.1 - 7  

권혜은 (세명대학교 대학원 전산정보학과) ,  김상훈 (세명대학교 소프트웨어학과)

초록
AI-Helper 아이콘AI-Helper

자바 프로그램은 플랫폼 독립적이라는 장점을 갖는 반면에 그의 실행이 가상 기계를 통하여 이루어지기 때문에 실행 시간의 비효율성을 가진다. 이러한 문제를 극복하기 위해 just-in-time(JIT) 컴파일러, 오프라인 바이트코드 컴파일러와 같은 다양한 해결 방법이 제안되어 왔다. 그러나 JIT 컴파일러는 실행시간에 바이트코드로부터 네이티브 코드로의 번역이 일어나므로 실행시간 부담을 가진다. 그리고 순수 오프라인 바이트코드 컴파일러는 동적 클래스 적재(dynamic class loading)의 어려움을 가진다. 본 논문에서는 동적으로 바이트코드를 적재학 수 있는 능력을 유지하면서, JIT 보다 더 효율적 실행이 가능한 방법을 제안한다. 또한 기존의 bytecode-to-C 번역기와는 달리, 우리의 번역기는 자바 네이티브 인터페이스(JNI)를 사용함으로서 JDK 실행 환경과의 완벽한 호환성을 유지한다. 본 연구의 결과로 바이트코드를 JNI를 사용한 C 코드로 변환하기 위한 번역기를 설계하고 구현하였다.

Abstract AI-Helper 아이콘AI-Helper

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 no...

AI 본문요약
AI-Helper 아이콘 AI-Helper

* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.

제안 방법

  • 이러한 문제점을 해결하기 위해 제안된 방법이 바이트코드를 C 코드로 변환하여 실행시키는 방법이다. 이와 관련된 기존 연구에는 Harissa[l], Toba[3], TurboJ[4], Jolt[5] 등이 있다.
  • 본 논문에서는 자바의 각 메소드들을 네이티 브 메소드로 변환하여 향상된 실행속도를 가질 수 있는 변환기(이하 MyJNItool)를 설계하고 구 현하였다. 네이티브 메소드를 생성을 위한 C 프 로그램은 표준화된 JNI(Java Native Interface) 기술을 사용하여 전형적인 오프라인 바이트코드 컴파일러와는 달리 자바가상머신에 독립적이며, 동적 클래스 적재를 지원한다.
  • JIT컴파일러는 실 행시간에 컴파일과 최적화에 대한 부담을 갖기 때문에 MyJNItool에 의해 생성된 프로그램보다 실행속도가 떨어진다. 루프의 횟수 체크, 피보나 치 수열, 버블정렬, 완전 수를 구하는 예제를 통하여 이를 확인하였다.
본문요약 정보가 도움이 되었나요?

저자의 다른 논문 :

활용도 분석정보

상세보기
다운로드
내보내기

활용도 Top5 논문

해당 논문의 주제분야에서 활용도가 높은 상위 5개 콘텐츠를 보여줍니다.
더보기 버튼을 클릭하시면 더 많은 관련자료를 살펴볼 수 있습니다.

관련 콘텐츠

저작권 관리 안내
섹션별 컨텐츠 바로가기

AI-Helper ※ AI-Helper는 오픈소스 모델을 사용합니다.

AI-Helper 아이콘
AI-Helper
안녕하세요, AI-Helper입니다. 좌측 "선택된 텍스트"에서 텍스트를 선택하여 요약, 번역, 용어설명을 실행하세요.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.

선택된 텍스트

맨위로