• 제목/요약/키워드: 실행 가능 목적 코드

검색결과 24건 처리시간 0.04초

자바 바이트코드를 GVM 코드로 번역하기 위한 언어적 특성 처리 (Han fling the Language Dependent Features for Translating Java Bytecode to GVM Code)

  • 고영관;고석훈;오세만
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2002년도 봄 학술발표논문집 Vol.29 No.1 (B)
    • /
    • pp.337-339
    • /
    • 2002
  • 휴대용 무선기기의 성능 향상과 동적인 응용프로그램 실행의 필요성에 따라 모바일 응용프로그램은 기존의 네이티브 애플리케이션 제작 방법에서 가상기계(Virtual Machine)를 탑재하여 실행하는 가상기계애플리케이션 제작 방법으로 변환하였다. 가상기계를 이용한 애플리케이션의 실행은 플랫폼 독립적인 실행이 가능하며 또한 효과적인 다운로드 솔루션을 통한 동적인 응용프로그램의 실행이 가능하다. 이러한 배경으로 KVM과 CVM(General Virtual Machine)등의 가상기계가 출현하였다. 그러나 각 플랫폼에서 맞는 애플리케이션은 서로 호환되지 않으므로 가상기계 언어간의 번역을 통해 목적 가상기계에서의 실행이 요구되며 자바 바이트코드를 순수 국내 기술로 개발된 GVM 코드로 번역하는 것이 바람직하다. 본 논문에서는 KVM에서 실행가능한 자바 바이트코드를 CVM에서 실행하기 위해 바이트코드를 GVM코드인 SAL(Sinji Assembly Language)로 번역하는 번역기를 설계하고 구현한다. 이를 위해 자바의 언어 독립적 특성 외에 언어 의존적인 특성을 처리하기 위한 방법을 제안하며 언어 의존적인 특성을 배열과 문자열, 클래스와 객체, 예외, 스레드로 분류하여 처리한다.

  • PDF

실행가능 목적 코드를 기반으로 하는 자동 테스트 데이터 생성 (Automated Test Data Generation based on Executable Object Codes)

  • 정인상
    • 한국인터넷방송통신학회논문지
    • /
    • 제12권2호
    • /
    • pp.189-197
    • /
    • 2012
  • 고수준의 명세나 고수준의 프로그래밍 언어로 작성된 원시 코드를 이용하여 테스트 데이터를 생성하는 것이 일반적이다. 그러나 어떤 상황에서는 이러한 테스트 데이터 생성 정보가 항상 이용가능하지 않을 수 있다. 이 논문에서는 실행가능 목적코드를 바탕으로 테스트 데이터를 생성하는 방법을 제안한다. 제안된 방법은 정교한 목적 코드 분석을 필요로 하지 않은 매우 간단한 함수 최소화 기법을 사용하여 동적으로 테스트 데이터를 생성한다. 삼각형 분류 프로그램에 대한 실험을 통하여 분기 커버리지를 매우 효과적으로 달성함을 보인다.

재목적 Oolong-to-SIL 중간 언어 번역기 (Retargetable Oolong-to-SIL IL Translator)

  • 권혁주;김영근;이양선
    • 한국멀티미디어학회:학술대회논문집
    • /
    • 한국멀티미디어학회 2004년도 춘계학술발표대회논문집
    • /
    • pp.310-313
    • /
    • 2004
  • 자바는 컴파일러에 의해 아키텍처 독립적인 바이트코드로 구성된 바이너리 형태의 클래스 파일을 생성하면 JVM에 의해 하드웨어와 운영체제에 상관없이 실행이 가능한 플랫폼 독립적인 언어로 현재 가장 널리 사용되는 범용 프로그램 언어중 하나이다. EVM(Embedded Virtual Machine)은 Microsoft사의 .NET 언어와 SUN사의 Java 언어등을 모두 수용할 수 있는 임베디드 시스템을 위한 가상기계이며, SIL(Standard Intermediate Language)은 EVM에서 실행되는 중간언어로 다양한 프로그래밍 언어를 수용하기 위해서 객체지향 언어와 순차적 언어를 모두 수용하기 위한 연산 코드 집합을 갖고 있다. 본 논문에서는 자바 프로그램을 EVM에서 실행 될 수 있도록 자바 프로그램을 컴파일하여 생성된 클래스 파일로부터 Oolong 코트를 추출하고 추출된 Oolong 코드를 EVM의 SIL 코드로 변환하는 Oolong-to-SIL 번역기 시스템을 구현하였다. 번역기 시스템을 정형화하기 위해 Oolong 코드의 명령어 등을 문법으로 작성하였으며, PGS를 통해 생성된 어휘 정보를 가지고 스캐너를 구성하였고, 파싱테이블을 가지고 파서를 설계하였다 파서의 출력으로 AST가 생성되면 번역기는 AST를 탐색하면서 의미적으로 동등한 SIL 코드를 생성하도록 번역기 시스템을 컴파일러 기법을 이용하여 모듈별로 구성하였다. 이와 같이 번역기를 구성함으로써 목적기계의 중간언어 형태에 따라 중간언어 번역기를 자동으로 구성할 수 있어 재목적성(Retargetability)을 높일 수 있다.

  • PDF

안드로이드 프로그램 정적 분석 고찰 (A Static Analysis of Android Programs)

  • 이호석
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2012년도 한국컴퓨터종합학술대회논문집 Vol.39 No.1(C)
    • /
    • pp.227-229
    • /
    • 2012
  • 본 논문은 Android 프로그램의 정적 분석 방법을 논의한다. Android 프로그램 정적 분석의 목적은 오류발견, 개인정보 해킹 코드 발견, 바이러스 발견, 프로그램 분류 등등이다. 본 논문에서는 Android 프로그램의 분석을 위하여 구문 패턴 정적 분석과 프로그램으로부터 객체 다이아그람과 Flowchart 를 생성하여 프로그램 동적 실행을 추정하여 분석하는 통합된 정적 분석 방법을 논의한다. 프로그램 실행 추정 분석은 프로그램에서 객체 생성, 메소드 호출, 데이터 흐름, 실행 흐름, API 호출과 진행 과정 등을 추정하여, 구문 패턴 정적 분석만으로는 파악하지 못하는 프로그램 실행의 동적 분석이 가능하도록 한다.

전범위 실시간 시뮬레이션 환경개발 (Development of the Environment for Full-Scope Simulator)

  • 홍진혁
    • 한국시뮬레이션학회:학술대회논문집
    • /
    • 한국시뮬레이션학회 2003년도 춘계학술대회논문집
    • /
    • pp.121-126
    • /
    • 2003
  • 본 논문은 시뮬레이터 각 계통 모델을 개발하고, 개발된 각 모델링 실행파일을 실시간으로 실행하며, 각 계통 모델의 건전성 시험을 용이하게 수행하기 위해 개발중인 시뮬레이션 환경을 소개하는 것을 목적으로 하고 있다. 개발중인 시뮬레이션 환경은 울진 표준형원전 시뮬레이터의 전 계통을 모델로 하고 있으며, 현재 각 계통 변수 데이터베이스 제어프로그램, 멈춤/실행 (Freeze/Run), 운전상태의 저장 (Snapshot), 임의의 변수에 대한 동적인 변수값 도시 (Display), 각 계통 실행파일들의 실시간 제어, 3차원 실시간 형상화 툴 등 여러 기능이 있으며, 영광1호기 최적운전분석기 등의 시스템에 이미 활용중이다. 본 시스템의 구축으로 모든 시뮬레이션 모델 및 각종 코드의 실시간 실행/빠른실행/느린실행 등의 개별 운전모드 시간조정도 가능해져 시뮬레이터 모델 이외에도 기존의 사용 프로그램의 통합등 다양한 응용이 가능할 것으로 기대된다.

  • PDF

실시간 확장 윈도우 운영체제에서의 소프트 타이머 인터럽트 UML-RT모델의 구현과 성능 분석 (The Implementation and Performance Analysis of Soft Timer Interrupt UML-RT Model on a Windows Platform with Real-Time Extension)

  • 최진호;심재익;임승철
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2005년도 가을 학술발표논문집 Vol.32 No.2 (1)
    • /
    • pp.841-843
    • /
    • 2005
  • 본 논문에서는 UML-RT(Real-Time) 모델에서 태스크를 직접 제어하기 위한 목적으로 일정 시간마다 틱을 발생하는 소프트 타이머 인터럽트 모델을 구현하였으며 생성된 모델 코드의 실행 성능 결과를 제시하였다. 그리고 소프트 타이머 인터럽트 모델 코드의 실시간 실행이 가능하도록 UML-RT 도구의 TargetRTS 라이브러리를 실시간 확장 윈도우 환경에 맞게 수정하였다. 실시간 확장 윈도우 운영체제와 UML-RT 개발 환경에서 설계, 구현한 소프트 타이머 인터럽트 모델의 성능 측정 결과 실시간으로 동작 가능함을 보여주었다.

  • PDF

빠른 명령어 처리가 가능한 EIS 프로세서 구조 (EIS Processor Architecture for Enhanced Instruction Processing)

  • 지승현;전중남;김석일
    • 한국통신학회논문지
    • /
    • 제25권12B호
    • /
    • pp.1967-1978
    • /
    • 2000
  • 본 논문에서는 실행 시에 긴명령어를 구성하는 각 단위 명령어를 독립적으로 스케줄링할 수 있는 EIS 프로세서 구조를 제안하였다. 단위 명령어별 독립적인 수행을 위해서, EIS 프로세서 구조는 여러 개의 연산처리기와 스케줄러의 쌍으로 구성된다. EIS 프로세서 구조내의 모든 스케줄러는 독립적으로 자료종속성이나 자원충돌 여부를 검사하여 단위 명령어를 실행할지 혹은 다음 파이프라인 사이클동안 실행을 지연시킬지를 결정한다. 또한 EIS프로세서용 목적코드는 단위 명령어들간 동기화를 위해서 모든 단위 명령어에 종속성정보를 삽입하는 특징을 지닌다. 즉, EIS 프로세서 구조는 긴명령어내의 각 단위 명령어를 독립적으로 실행시킬 수 있으므로 기존의 VLIW 프로세서 구조나 SVLIW 프로세서 구조에서의 실행지연 시간을 제거할 수 있다. 시뮬레이션을 통해서도 EIS 프로세서 구조의 실행사이클이 VLIW 프로세서 구조나 SVLIW 프로세서 구조에서의 경우보다 더 빠름을 입증할 수 있었다. 특히 실수 명령어 분포가 높은 프로그램에서 EIS 프로세서에서의 실행사이클이 다른 프로세서 구조의 경우에 비하여 현저하게 줄어드는 것을 확인할 수 있었다.

  • PDF

임베디드 시스템의 동일기능 소스코드 유사도 분석 요구사항 (Object Material Confirmation for Source Code Comparison on Embedded System)

  • 김도현;이규대
    • 한국소프트웨어감정평가학회 논문지
    • /
    • 제17권1호
    • /
    • pp.25-30
    • /
    • 2021
  • 임베디드 시스템 소스코드 감정목적물의 유사성을 판단하는 경우, 제공된 소스코드가 컴파일이 가능한 상태인지, 실행이 정상적으로 되는 것인지, 하드웨어와의 인터페이스가 일치하는지 등의 확인이 되지 않은 상태로 제공되는 경우가 지속적으로 발생하고 있다. 분쟁을 제기하는 측에서는 동작의 특성이 유사하고, 나타나는 기능의 효과가 유사한 이유로 소스코드의 많은 부분이 유사할 것으로 판단하고, 감정을 요청하게 되지만, 위의 여러 가지 상황으로 유사성 분석 결과가 기대와 다르게 나타나는 가능성이 우려된다. 본 연구에서는 감정사례를 통해 소스코드의 분석 과정과 검증되지 않은 소스코드의 유사성 도출의 개선방향을 제시한다.

폴리몰픽 쉘코드 탐지 기술 동향 (The Recent Trends of Polymorphic Shellcodes Detection Technologies)

  • 김대원;김익균;오진태;장종수
    • 전자통신동향분석
    • /
    • 제23권1호통권109호
    • /
    • pp.145-152
    • /
    • 2008
  • 공격자의 주요 목적은 원격 호스트의 제어 권한을 얻는 것이다. 이것은 공격자가 원격호스트의 컨트롤 플로를 변경시켜 악의적인 코드를 임의로 실행시킬 수 있는 취약한 서비스가 존재하기 때문에 가능하다. 공격자들이 원격 호스트의 제어 권한을 얻기 위한 일반적인 방법은 취약한 서비스를 대상으로 쉘코드(shellcode) 전송을 통해서이다. 네트워크 기반 최신의 공격 탐지 기술들이 점점 사용영역을 넓혀가면서 이를 회피하기 위해 쉘코드들도 진화를 계속하고 있으며, 최근 2~3년 전부터 폴리몰픽(polymorphism)과 메타몰픽(metamorphism) 기법의 사용이 활발해지고 있다. 본 고에서는 이중, 쉽게 이용할 수 있는 엔진들이 많이 알려져 있어 그 예상 피해가 심각하리라 생각되는 폴리몰픽 형태의 쉘코드가 가지는 특징 및 이를 탐지하기 위한 최신 기술들을 소개한다.

자바 네이티브 메소드 생성기의 설계 및 구현 (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