• 제목/요약/키워드: Bytecode

검색결과 90건 처리시간 0.024초

자바바이트코드의 네트워크 기반 프로파일링 시스템 설계 및 구현 (Design and Implementation of Network-based Profiling System of Java Bytecode)

  • 정준영;정민수;이은정;정연정;윤기송
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 1999년도 가을 학술발표논문집 Vol.26 No.2 (1)
    • /
    • pp.415-417
    • /
    • 1999
  • 네트워크상에 바이트 코드로 존재하고 실행되는 자바 프로그램은 여러 가지 컴퓨팅 환경 요소로 인해 수행병목현상이 나타나고 있다. 더구나 프로그램 성능 향상을 위해 바이트코드를 해석한다는 것은 쉬운 일이 아니다. 본 논문은 자바 바이트코드를 소스코드로 디컴파일하고, 프로그램 문맥의 기본 블록과 제어 구조를 분석하여 프로파일 정보를 얻는다. 그리고 프로파일 정보를 바탕으로 사용자나 개발자에게 의미있는 정보를 제공하여 최적화된 프로그램을 개발할 수 있도록 하는 네트워크 기반 프로파일링 시스템과 프로파일 정보 시각화를 위한 시스템의 프로토타입 설계 및 구현을 다룬다.

  • PDF

자바클래스 파일을 생성하는 C컴파일러 설계 (Design of C Compiler to Generate Java Class File)

  • 최원호;정민수;김도우;진민;윤기송
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 1999년도 가을 학술발표논문집 Vol.26 No.2 (1)
    • /
    • pp.418-420
    • /
    • 1999
  • 기존의 고급 언어들로 작성된 응용 프로그램들은 인터넷이나 다른 플랫폼(Platform)에서 수행되는 것이 어렵다. 본 논문에서는 자바의 플랫폼 독립적인 특성을 C언어와 같은 고급 언어에 적용해 보고자 한다. 즉 C 언어로 작성된 원시 코드(Source code)를 컴파일러를 이용해서 자바 가상 기계가 인식할 수 있는 목적 코드인 바이트 코드(Bytecode)로 변환하여 자바 가상 기계(Java Virtual Machine)가 탑재되어 있는 어떠한 플랫폼에서도 수행할 수 있도록 하는 것이다. 따라서, 본 논문에서는 C 언어로 작성된 응용 프로그램을 이기종 플랫폼 상에서 실행 가능하도록 바이트 코드를 생성하는 컴파일러를 설계하고자 한다.

  • PDF

내장형 자바를 위한 클래스 파일의 바이트 코드 압축 (Bytecode Compression Method for Embedded Java System)

  • 이영민;맹혜선;강두진;김신덕;한탁돈
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 1999년도 가을 학술발표논문집 Vol.26 No.2 (1)
    • /
    • pp.424-426
    • /
    • 1999
  • 본 논문에서는 추후 여러 내장형 기기들을 대체하게 될 내장형 자바가상머신에서 효율적으로 메모리를 사용하기 위해 바이트코드 압축 방법을 제시하고 있다. 이 압축 방법은 기본 코드 블록을 내장형 자바가상머신에서 사용하지 않는 명령어군과 한 바이트의 인덱스를 이용하여 사전을 구축하고, 사전에 등록되어 있는 반복되는 기본 코드 블록들을 이 두 바이트로 대체함으로써 압축하는 것이다. 그러나, 압축하는데 있어서 압축효율 뿐만 아니라 바이트 코드의 수행 속도도 고려하여야 하므로 압축으로 인한 수행 오버헤드를 최소화하여 수행시간에 영향을 적게 주도록 압축 방법을 단순화하여 설계하였다. 본 논문에서 제시하고 있는 압축 방법을 사용하여 실제 사용되는 자바 API(Application Programming Interface)들을 압축함으로써 메모리에 적재되는 바이트 코드를 최대 36%까지 줄이는 결과를 얻어낼 수 있다.

  • PDF

에너지-지향 달빅 바이트코드 스케줄링 기술 (Energy-oriented Dalvik Bytecode Scheduling Technique)

  • 고광만;박희완;윤종희;최광훈
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2012년도 춘계학술발표대회
    • /
    • pp.101-102
    • /
    • 2012
  • 안드로이드 플랫폼에 적합한 어플리케이션 보급이 급증하면서 안드로이드 가상머신인 달빅(dalvik)의 성능 향상을 위한 연구가 다양하게 시도되고 있다. 전력 공급이 제한적인 모바일 기기에서 효율적인 어플리케이션 실행을 위한 플랫폼의 성능 향상과 더불어 전력 에너지의 최적화된 소비가 중요한 이슈가 되고 있다. 이 논문은 달빅에서 실행되는 dex 파일의 바이트코드를 에너지 소비 중심으로 스케줄링하여 Java 어플리케이션의 전력 에너지 소비를 최적화하고자 하는 시도이다. 에너지 지향적인 스케줄링 기법은 전통적인 리스트-인스트럭션 스케줄링 기법을 기반으로 하였으며 스케줄링 전 후의 실험 결과를 제시하여 이 연구의 효과를 입증한다.

양상논리를 포함한 BML 스펙 확장 (The Extension of BML Specification including Modal Logic)

  • 김선태;김제민;박준석;유원희
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2012년도 춘계학술발표대회
    • /
    • pp.265-268
    • /
    • 2012
  • 검증에 사용하는 명세는 대부분 1차 술어 논리(First Order Logic)로 이루어져 있다. 1차 술어 논리가 자연언어 대부분을 표현하지만 표현하지 못하는 부분도 존재한다. 이를 해결하기위해 양상논리(Modal Logic)를 추가한 명세방법이 존재하지만 간접적인 방법으로만 존재할 뿐 이다. 본 논문에서는, 양상논리를 이용한 명세의 직접적인 표현을 위해 BML(Bytecode Modeling Language)을 확장한다. 이를 통해, 명세정보 표현의 정확성을 향상시킨다.

정보흐름분석을 위한 BIRS의 확장 (The Expansion of BIRS for Information Flow Analysis)

  • 정지웅;김제민;김선태;박준석;유원희
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2012년도 춘계학술발표대회
    • /
    • pp.269-271
    • /
    • 2012
  • 프로그램에 대한 검증을 수행하기 위해서는 프로그램 안에서 여러 가지 분석이 이루어진다. 그 중에서 객체지향언어의 경우 분석을 위하여 객체지향적인 특성에 맞는 정보흐름분석을 사용해야 한다. 본 논문에서는 왜 객체지향언어의 특성에 맞는 정보흐름분석이 필요한지를 보이고, 객체지향적인 특성을 고려하지 않은 정보흐름분석 시에 어떤 문제가 생기는지 예시를 들어 설명한다. 그리고 자바의 검증도구인 BIRS(Bytecode Intermediate Representation with Specification)언어를 대상으로 하여 객체지향언어의 특성을 고려한 정보흐름분석이 가능하도록 새로운 명세를 추가하여 확장한다.

중간언어의 VC 생성을 통한 바이트코드 검증 (Verification of Bytecode by Generating Verification Condition for Intermediate Language)

  • 허혜림;김제민;박준석;유원희
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2011년도 춘계학술발표대회
    • /
    • pp.269-272
    • /
    • 2011
  • 프로그램 신뢰성을 높이기 위한 방법 중 하나로 쓰이는 것이 명세 된 언어의 검증이다. 명세 된 언어를 검증하기 위해 소스 프로그램을 논리식으로 바꾸어 검증하는 방법을 사용한다. 소스 프로그램 뿐만 아니라 바이트코드 역시 프로그램 신뢰성을 높이기 위해서 검증이 필요하다. 본 논문에서는 바이트 코드의 검증을 위해 바이트코드의 정보를 가지고 있는 중간언어의 verification condition을 생성하는 방법을 보인다.

SMT-Solver 를 사용한 자바바이트코드의 배열 오버플로우 검증 (A Verification of Array Overflow in Java Bytecode using SMT-Solver)

  • 이상협;김제민;박준석;유원희
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2011년도 춘계학술발표대회
    • /
    • pp.261-264
    • /
    • 2011
  • 자바프로그램 검증은 안전하고 정확한 프로그램을 만들기 위한 필수적인 조건이지만 자바언어로 작성된 프로그램은 바이트코드로 작성되어 있는 클래스 파일로 배포되기 때문에 바이트코드에 대한 검증이 필요하다. 하지만 자바 바이트코드는 가독성이 떨어져 중간언어로 변환을 하고 그 중간코드에서 검증에 필요한 조건들을 작성 해야 한다. 이 논문에서는 새로 정의된 중간언어인 BIRS을 통해 컴파일시 검증이 되지 않는 배열 오버플로우에 대한 정적검증을 설명하고 검증 절차에 필요한 명제의 정의와 검증 시 사용되는 SMT-Solver 인 Z3 의 사용법에 대하여 서술하였다.

자바 프로그램의 분석 및 검증을 위한 제어흐름그래프 시각화 (Visualization of Control Flow Graph for Analysis and Verification of JAVA Byte Code)

  • 정지웅;김제민;박준석;유원희
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2011년도 추계학술발표대회
    • /
    • pp.213-215
    • /
    • 2011
  • 프로그램에 대한 검증을 수행하기 위해서는 자료흐름을 알아야 하고, 입력된 프로그램에 대응하는 제어흐름그래프(control flow graph)가 필요하다. 이에 더하여 제어흐름 그래프를 시각화한다면 사용자 입장에서는 더 편한 프로그램이 될 것이다. 본 논문에서는 자바 프로그램의 검증도구에 사용하는 중간 표현 언어 중 하나인 BIRS(Bytecode Intermediate Representation with Specification)에 의해 생성되는 제어흐름그래프를 시각화하는 방법에 대해 제안한다.

CNN 모델을 이용한 사기 스마트 컨트랙트 탐지 (Fraudulent Smart Contract Detection Using CNN Models)

  • 박다은;박용범
    • 반도체디스플레이기술학회지
    • /
    • 제22권3호
    • /
    • pp.73-77
    • /
    • 2023
  • As the DeFi market continues to expand, fraudulent activities using smart contracts have also increased. HoneyPot and Ponzi schemes are well-known frauds that exploit smart contracts. While several studies have demonstrated the potential to detect smart contracts implementing these scams, there has been a lack of research focusing on simultaneously detecting both types of fraud. This paper addresses this gap by harnessing artificial intelligence to conduct experiments for the detection of both HoneyPot and Ponzi schemes. The study employs the CNN (Convolutional Neural Network) model, commonly used for malware detection. To effectively utilize CNN, the bytecode of smart contracts is transformed into visual representations. The experimental results showcase a recall rate of 0.89 and an F1 score of 0.85, indicating promising detection capabilities.

  • PDF