• 제목/요약/키워드: 네이티브 코드 생성

검색결과 13건 처리시간 0.025초

자바 네이티브 메소드 생성기의 설계 및 구현 (Design and Implementation of the Java Native Method Generator)

  • 김도영;김상훈
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2000년도 제13회 춘계학술대회 및 임시총회 학술발표 논문집
    • /
    • pp.127-132
    • /
    • 2000
  • 자바 네이티브 메소드(Java Native Method)는 시간 소모적인 작업의 효율적 실행, 플랫폼 종속적인 작업의 수행, 기존에 구성된 라이브러리들의 재사용 등을 위해 제안되었다. 자바 네이티브 메소드의 사용 목적이 실행속도 향상에 있는 경우에는 네이티브 메소드를 구현하기 위해 자바 언어가 아닌 컴파일 방식의 다른 언어를 사용해야한다. 또한 네이티브 메소드를 사용하기 위해서는 자바 네이티브 인터페이스(Java Native Interface)의 개념을 습득해야한다. 이러한 부담을 경감시키기 위해 본 논문에서는 자바 메소드를 네이티브 메소드로 자동 변환하여 주는 자바 네이티브 메소드 생성기(Java Native Method Generator)를 제안하였다. 자바 메소드의 네이티브 메소드 변환은 번역된 바이트 코드로부터 C 언어로 구성된 네이티브 메소드를 자동 생성하도록 구현되었다. 그리고 플랫폼 종속적인 프로그램 작성 시에 있어 생성된 C 코드의 내부에 프로그램을 삽입하는 것만으로 가능하므로 사용자는 자바 네이티브 인터페이스에 대해서는 인식할 필요가 없다.

  • PDF

패턴 매칭 기법을 이용한 자바 바이트코드 변환기의 설계 및 구현 (Design and Implementation of Java Bytecode Translator usin Pattern Matching Technique)

  • 고광만
    • 전자공학회논문지CI
    • /
    • 제39권4호
    • /
    • pp.1-9
    • /
    • 2002
  • 자바 언어의 실행 속도를 개선하기 위해 전통적인 컴파일 방법을 사용하여 바이트코드를 특정 프로세서에서 수행될 수 있는 목적기계 코드로 변환하는 다양한 연구가 진행중이다. 패턴 매칭 이용한 코드 생성 기법은 코드 확장 기법에 비해 양질의 코드를 생성할 수 있는 장점을 가지고 있다. 본 연구에서는 바이트코드로부터 효과적으로 네이티브 코드를 생성하기 위해 레지스터 기반의 중간 언어를 효율적으로 생성할 수 있는 정형화된 패턴 기술 방법과 패턴 매칭 기법에 대해 제시한다. 또한 기술된 정형화 패턴을 활용하여 양질의 레지스터 기반 중간 코드를 생성하는 중간 코드 변환기를 설계하고 구현하였다.

바이트코드로부터 네이티브 코드 생성을 위한 중간 코드 변환기의 설계 및 구현 (Design and Implementation of Intermediate Code Translator for Native Code Generation from Bytecode)

  • 고광만
    • 한국멀티미디어학회논문지
    • /
    • 제5권3호
    • /
    • pp.342-350
    • /
    • 2002
  • 자바 프로그래밍 언어는 웹 브라우저에서 실행되는 작은 크기의 응용 프로그램 수행에서는 실행 속도 문제가 중요한 요소가 아니지만 대형 프로그램의 수행에서는 실행 속도가 현저히 저하되는 단점을 지니고 있다. 이러한 문제점을 해결하기 위해 전통적인 컴파일 방법을 사용하여 바이트코드를 특정 프로세서에서 수행될 수 있는 목적기계 코드로 변환하는 다양한 연구가 진행중이다. 본 연구에서도 자바 응용 프로그램의 실행 속도의 개선을 위해 바이트코드로부터 직접 i386코드를 생성하는 네이티브 코드 생성 시스템을 위한 중간 코드 변환기를 설계하고 구현한다. 중간 코드 변환기는 자바 언어 의 중간 코드인 *.class 파일을 입력으로 받아 레지스터 기반의 중간 코드로 변환한다.

  • PDF

타임드 오토마타 모델 기반 산업 자동화 응용 자동생성 프레임워크 (Automated Code Generation Framework for Industrial Automation Applications based on Timed Automata Model)

  • 이경현;김익환;김태현
    • 정보과학회 논문지
    • /
    • 제44권12호
    • /
    • pp.1307-1312
    • /
    • 2017
  • ICT 기술과의 융합으로 인해 산업 자동화 시스템은 복잡도와 신뢰성 요구 수준이 급격히 증가하고 있다. 최근에는 이러한 요구에 대응하기 위해 응용 개발 초기 과정에서부터 정형 기법을 활용하는 연구들이 주목받고 있다. 본 논문에서는 산업 자동화 응용을 위한 타임드 오토마타 모델 기반 네이티브 코드 자동 생성 프레임워크를 제안한다. 사례 연구로 산업용 네트워크를 사용하는 신호등 제어 시스템을 모델링하고, 탑재되는 응용의 타이밍 속성을 검증하였다. 제안하는 프레임워크의 유효성을 검증하기 위해 자동 변환된 네이티브 코드를 사용하여 EtherCAT 네트워크 기반 테스트베드의 동작을 확인한 결과, 모델 명세와 동일하게 동작하는 것을 확인하였다.

스트링 패턴 매칭 기법을 이용한 중간 코드 변환기의 설계 및 구현 (Design and Implementation of Intermediate Code Translator using String Pattern Matching Technique)

  • 고광만
    • 인터넷정보학회논문지
    • /
    • 제3권3호
    • /
    • pp.1-9
    • /
    • 2002
  • 자바 언어의 실행 속도를 개선하기 위해 전통적인 컴파일 방법을 사용하여 바이트 코드를 특정 프로세서에서 수행될 수 있는 목적기계 코드로 변환하는 다양한 연구가 진행중이다. 패턴 매칭을 이용한 코드 생성 기법은 코드 확장 기법에 비해 양질의 코드를 생성할 수 있는 장점을 가지고 있다. 본 연구에서는 바이트 코드로부터 효과적으로 네이티브 코드를 생성하기 위해 레지스터 기반의 중간 언어를 효율적으로 생성할 수 있는 정형화된 패턴 기술 방법과 패턴 매칭 기법에 대해 제시한다. 또한 기술된 정형화 패턴을 활용하여 양질의 레지스터 기반 중간 코드를 생성하는 중간 코드 변환기를 설계하고 구현하였다.

  • PDF

바이트코드로부터 코드 확장 기법을 이용한 중간 언어 변환개의 설계 및 구현 (Design and Implementation of Intermediate Language Translator using Code Expansion Technique from Bytecode)

  • 고광만
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2002년도 봄 학술발표논문집 Vol.29 No.1 (B)
    • /
    • pp.334-336
    • /
    • 2002
  • 자바 프로그래밍 언어는 웹 브라우저에서 실행되는 작은 크기의 응용 프로그램 수행에서는 실행 속도문제가 중요한 요소가 아니지만 대형 프로그램의 수행에서는 실행 속도가 현저히 저하되는 단점을 지니고있다. 이러한 문제점을 개선하기 위해 전통적인 컴파일 방법을 사용하여 바이트코드를 특정 프로세서에 적합한 목적기계 코드로 변환하는 다양만 연구가 진행중이다. ; 연구에서도 자바 응용 프로그램의 실행 속도의 개선을 위해 바이트코드로부터 직접 i386 코드를 생성하는 네이티브 코드 생성 시스템을 위한 중간 언어 변환기를 설계하고 구현한다. 중간 언어 변환기는 자바 언어의 중간 언어인 *.class 파일을 입력으로 받아 레지스터 기반의 중간 언어로 변환한다. 변환한다.

  • PDF

중간 코드를 스택-기반 코드로의 변환기 (Translator for Stack-Based Codes from Intermediated Codes)

  • 김영국;고훈준;유원희
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2005년도 한국컴퓨터종합학술대회 논문집 Vol.32 No.1 (B)
    • /
    • pp.895-897
    • /
    • 2005
  • 자바의 문제점은 실행속도의 저하이다. 실행속도 저하의 해결 방법으로 네이티브 코드로 변환, JIT컴파일러, 바이트코드 최적화등의 연구가 되어 왔다. 그 중에 바이트코드 최적화 방법을 사용하는 CTOC(Class To Optimized Classes)에서 중간코드로 사용하는 3-주소 코드를 스택-기반 코드로 코드 확장 기법으로 변환 시 불필요한 store/load 코드가 생성된다. 따라서 본 논문은 불필요한 store/load 코드를 제거하기 위해서 부분 중복 코드 제거 후 불필요한 store/load문을 제거함으로서 불필요한 store/load 코드의 양을 줄이는 변환기를 제안하고, 거기에 대한 간단한 예를 들어 설명한다.

  • PDF

3-주소 코드를 스택-기반 코드로의 변환기 (Translator for Stack-Based Codes from Three-Address Codes)

  • 김영국;고훈준;유원희
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2005년도 춘계학술발표대회
    • /
    • pp.369-372
    • /
    • 2005
  • 자바의 문제점은 실행속도의 저하이다. 실행속도 저하의 해결 방법으로 네이티브 코드로 변환, JIT컴파일러, 바이트코드 최적화등의 연구가 되어 왔다. 그중에 바이트코드 최적화 방법을 사용하는 CTOC(Class To Optimized Classes)에서 3-주소 코드를 스택-기반 코드로 코드 확장 기법으로 변환 시 불필요한 store/load 코드가 생성된다. 따라서 본 논문은 불필요한 store/load 코드를 제거하기 위해서 부분 중복 코드 제거 후 불필요한 store/load문을 제거함으로서 불필요한 store/load 코드의 양을 줄이는 변환기를 제안하고, 거기에 대한 간단한 예를 들어 설명한다.

  • PDF

카테고리 빌더와 하이브리드앱 생성기를 통한 모바일앱 저작도구 (Mobile app authoring tool with category builder and hybrid app generator)

  • 현철;김상헌
    • 한국콘텐츠학회:학술대회논문집
    • /
    • 한국콘텐츠학회 2012년도 춘계 종합학술대회 논문집
    • /
    • pp.69-70
    • /
    • 2012
  • 본 연구는 콘텐츠 배포를 위한 앱 제작에 있어 모바일앱 개발의 어려움을 극복하기 위한 저작도구에 관한 것이다. 카테고리 빌더란 콘텐츠의 특성과 수요자의 특성을 분석한 카테고리를 기반으로 모바일웹을 생성할 수 있는 도구이며, 하이브리드앱 생성기는 모바일웹 코드를 기반으로 네이티브 코드와 통합된 하이브리드 모바일앱을 생성하는 도구이다. 모바일앱 저작도구는 모바일앱의 분류에 맞게 사전에 카테고리를 빌드 후 제공된 카테고리를 기반으로 콘텐츠의 세부 내용을 수정하여 저장하고, 저장된 내용은 HTML5 표준에 맞는 모바일웹페이지로 생성된 후 하이브리드앱으로 변환한다. 제안된 모바일앱 저작도구는 모바일앱 개발의 생산성을 높여줄 수 있으며 다양한 사용자 요구에 효율적으로 대응할 수 있다.

  • PDF

V8 자바스크립트 엔진 적시 컴파일러의 함수 호출 코드 생성 최적화 (Call Optimization on Just-in-Time Compiler of V8 JavaScript Engine)

  • 정원기;문수묵
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2011년도 한국컴퓨터종합학술대회논문집 Vol.38 No.1(A)
    • /
    • pp.135-138
    • /
    • 2011
  • 자바스크립트 언어는 클라이언트 사이드 웹 언어로서 지금까지 널리 사용되어 왔다. 그러나 최근에서야 내장형 시스템에서의 웹 브라우징이 보급되면서 그 성능이 이슈가 되고 있는데, 이를 위해 여러 오픈 소스 진영에서 적시 컴파일러를 탑재한 고성능의 자바스크립트 엔진이개발되고 있다. 그 중 V8 자바스크립트 엔진이 현재는 성능이 가장 좋은 것으로 알려져 있으나, 자바스크립트 언어의 극도로 동적인 특성으로 인하여 아직 성능의 최적화 여지가 많이 남아 있다. 본 논문에서는 V8 자바스크립트 엔진의 적시 컴파일러에서 함수 호출 코드 생성에 관한 최적화를 적용 하였다. 두 개의 명령어와 하나의 상수 풀을 사용하던 기존의 함수 호출 코드에서 하나의 명령어만으로 함수 호출을 하도록 구현함으로써 성능이 1.5% 개선되었고, 네이티브 캐시 사용량이 7.7% 감소하였다.