• Title/Summary/Keyword: 자바 클래스 파일

Search Result 74, Processing Time 0.024 seconds

Analysis of the simpleRTJ Class File Format (simpleRTJ 클래스 파일의 형식 분석)

  • 양희재
    • Proceedings of the Korean Institute of Information and Commucation Sciences Conference
    • /
    • 2002.11a
    • /
    • pp.373-377
    • /
    • 2002
  • Unlike desktop systems, embedded systems usually meet a strict restriction on using memory. It is required to allocate several class files on memory to run a Java program. A Java class file contains such data including a constant pool, class overview, fields information, and methods information. Some of them are used merely for a debugging purpose, others for a program execution. This paper analyzes the internal structure, or format of the class files used for embedded Java systems. We also investigate how much memory will be necessary for each part of the class files when the files are allocated in memory. The experiment was performed on the simpleRTJ, an open-source commercial embedded Java system.

  • PDF

JSize: A Java Equivalent of the UNIX size program (JSize: 유닉스의 size에 대응하는 자바 등가 프로그램)

  • 양희재
    • Proceedings of the Korean Institute of Information and Commucation Sciences Conference
    • /
    • 2003.10a
    • /
    • pp.548-551
    • /
    • 2003
  • JSize is a Java equivalent of the Unix size program. The Unix size program analyses an executable file and estimates the size of code and data segment when the file is loaded on memory. Likewise, JSize analyze a Java class file and estimates the size of class area when the file is loaded on memory. This paper presents the principles necessary to estimate the class area size with the information obtained from a class file. An experimental result is included to show the accuracy of estimation the JSize provides.

  • PDF

Analysis of the ROMizer of simpleRTJ Embedded Java Virtual Machine (simpleRTJ 임베디드 자바가상기계의 ROMizer 분석 연구)

  • Yang, Hee-jae
    • The KIPS Transactions:PartA
    • /
    • v.10A no.4
    • /
    • pp.397-404
    • /
    • 2003
  • Dedicated-purpose embedded Java system usually takes such model that all class files are converted into a single ROM Image by the ROMizer in the host computer, and then the Java virtual machine in the embedded system executes the image. Defining the ROM Image is a very important issue for embedded system with limited memory resource and low-performance processor since the format directly influences on the memory usage and effectiveness of accessing entries in classes. In this paper we have analyzed the ROMizer and especially the format of the ROM image implemented in the simpleRTJ embedded Jana virtual machine. The analysis says that memory space can be saved up to 50% compared to the original class file and access speed exceeds up to six times with the use of the ROMizer. The result of this study will be applied to develop a more efficient ROMizer for a ROM-based embedded Java system.

Tamper-Resistance of Watermark for Java Class Protect inn (자바 클래스 보호를 위한 워터마크 변경방지)

  • Cho, Ik;Lee, Su-Hyun
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2002.04b
    • /
    • pp.346-348
    • /
    • 2002
  • 자바는 플랫폼 독립적이라는 장점을 가지고 있지만, 쉽게 역-컴파일 하여 소스코드를 얻을 수 있기 때문에 악의 있는 사용자가 개발자의 모듈과 알고리즘, 데이터 구조를 쉽게 얻을 수 있고 불법 사공이 가능하다. 본 논문에서는 자바 클래스를 보호하기 위하여 소프트웨어에 저작권을 삽입하는 워터마킹 기술과 소스코드 변경을 방지하는 변경확인 기술 및 역-컴파일을 어렵게 하는 난독 기술을 적용한 클래스 단위의 자바 클래스 보호 시스템을 제안한다. 제안 시스템은 워터마크에 대만 왜곡 공격에 강하고, 워터마크에 변경확인 기술을 적용하여 워터마크의 변경을 방지하였다.

  • PDF

Design and Implementation of small sized (자바 플랫폼 지니 기반 소형 자바가상기계의 설계 및 구현)

  • 정준영;최원호;김도우;조증보;유홍식;정민수
    • Proceedings of the Korea Multimedia Society Conference
    • /
    • 2001.06a
    • /
    • pp.37-41
    • /
    • 2001
  • 모바일 인터넷 시대가 열리면서 언제, 어디서든지 네트워크에 연결될 수 있는 휴대용 디지털 기기의 인터넷에 대한 관심이 증대되고 있다. 모바일 단말기에서의 자바 플랫폼 기반 지니 홈네트워크 접속은 자바 기술의 특성을 가장 잘 살린 컴퓨팅 환경이다. 지니를 지원하기 위해서는 자바 가상 기계라는 소프트웨어가 실행을 하고 있는 환경이어야 하고 RMI를 지원해야 하는데 Java2ME의 K-자바 가상 기계는 이를 지원하지 못한다. 본 논문에서는 Java2ME CLDC를 기반으로 지니에 접속할 수 있는 자바 가상 기계에 대해 논의하였다. 지니 KVM 은 각 모바일 단말기에 맞는 프로그램을 하지 않아도 되는 환경을 제공 할 뿐만 아니라, 표준 자바 클래스 파일 포맷과 CLDC 클래스 파일을 지원하고, 지니에 접속할 수 환경을 제공함으로써, 모바일 단말기의 본격적인 네트워킹을 할 수 있도록 한다.

  • PDF

The Bytecode Optimizer (바이트코드 최적화기)

  • 이야리;홍경표;오세만
    • Journal of KIISE:Software and Applications
    • /
    • v.30 no.1_2
    • /
    • pp.73-80
    • /
    • 2003
  • The Java programming language is designed for developing effective applications in a heterogeneous network environment. Major problem in Java is its performance. many attractive features of Java make the development of software easy, but also make it expensive to support ; applications written in Java are often much slower than their counterparts written in C or C++. To use Java`s attractive features without the performance penalty, sophisticated optimizations and runtime systems are required. Optimising Java bytecode has several advantages. First, the bytecode is independent of any compiler that is used to generate it. Second, the bytecode optimization can be performed as a pre=pass to Just-In-Time(JIT) compilation. Many attractive features of Java make the development of software easy, but also make it expensive to support. The goal of this work is to develop automatic construction of code optimizer for Java bytecode. We`ve designed and implemented a Bytecode Optimizer that performs the peephole optimization, bytecode-specific optimization, and method-inlining techniques. Using the Classfile optimizer, we see up to 9% improvement in speed and about 20% size reduction in Java class files, when compared to average code using the interpreter alone.

A Design and Implementation of Java Class File Visual Analyzer (Java 클래스파일 비주얼 분석기의 구현)

  • 김진광;박우전
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2000.10a
    • /
    • pp.332-334
    • /
    • 2000
  • 본 논문에서는 자바 컴파일러에 의해 컴파일된 결과인 클래스파일을 효과적으로 분석할 수 있기 위한 비주얼 분석기의 구현에 대해 기술한다. 이 비주얼 분석기는 클래스파일의 모든 세부사항들을 시각적으로 표현하며 원하는 분석 결과를 저장할 수 있게 되어 프로그램의 이해 및 개발을 도와준다. 이 분석기의 구현에서 JDK1.3을 이용하였으며 화면구성은 JBuilder3.0을 사용한다.

  • PDF

A Definition of Loop Byteocode for Performance Improvement of Java Virtual Machine (루프 바이트코드의 정의를 통한 자바가상머신의 성능 개선)

  • Lee, Ji-Hyun;Won, Hee-Sun;Moon, Kyung-Doek;Kim, Young-Kuk
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2002.11b
    • /
    • pp.1387-1390
    • /
    • 2002
  • 자바가상머신은 플랫폼에 독립적인 실행을 위해서 바이트코드라고 하는 스택(stack) 기반의 가상 기계어를 사용하므로 실행 속도가 느리다는 단점이 있다. 특히 루프문을 포함하는 자바프로그램을 자바가상머신에서 수행 시키면 루프에 관련된 몇 개의 동일한 바이트코드가 루프의 실행 횟수만큼 반복적으로 인터프리트해서 수행하므로 상당한 성능 저하를 유발한다. 본 논문에서는 이런 비효율적인 성능상의 문제점을 개선하기 위해 루프를 수행하는 새로운 바이트코드를 정의 및 구현하고, 이를 실제 클래스 파일에 적용하기 위한 코드 변경 절차와 방법을 제시한다. 제안된 바이트코드를 사용해서 루프의 처리 속도를 개선할 경우, 클래스 파일의 크기를 줄일 수 있을 뿐만 아니라 간단한 성능 평가를 통해서 자바가상머신의 성능 개선 효과를 확인할 수 있다.

  • PDF

Test Data and Code Generation Tool based on JUnit and JTestCase Framework (JUnit과 JTestCase 프레임워크에 기반한 데스트 데이터 및 코드 생성 도구)

  • 이유정;최승훈
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2002.10d
    • /
    • pp.106-108
    • /
    • 2002
  • 신뢰성있는 소프트웨어의 개발을 위해 테스트의 중요성은 매우 크다. 특히, 최근에 점진적이고 반복적인 소프트웨어 개발 방법론이 각광을 받으면서 소프트웨어의 잦은 변경에 따른 회귀 테스트의 중요성이 점점 커지고 있다. 이에 따라 단위 데스트의 자동화에 대한 연구가 활발히 진행되고 있다. JUnit은 자바 클래스의 단위 레벨 테스팅을 도와 주는 테스트 지원 프레임워크이다. 또한, JTestCase는 테스트 데이터와 테스트 코드를 분리함으로써, 데이터 중심 테스팅(data-driven testing)을 지원하기 위해 개발된 JUnit 확장 프레임워크이다. 본 논문에서는, 이 두 개의 테스트 프레임워크와 자바 리플렉션 API를 이용하여, 하나의 클래스 파일을 읽어 들여 XML 형태의 테스트 데이터 파일과 테스트 드라이버 코드를 자동생성하는 도구를 제안한다. 그리고, 구체적인 예를 통해 본 논문에서 제안하는 도구의 유용성을 보여준다. 본 논문의 데스트 도구는 회귀 단위 테스트에 필요한 노력을 줄여주고, 자바 클래스 단위 테스트를 지원하는 도구 개발의 기반 기술을 제공하며, 궁극적으로 소프트웨어 개발의 생산성을 향상시켜 준다.

  • PDF

A Study on the protection technique of a Applet decompilation in Java Environment (자바 애플릿 보안을 위한 역컴파일 방지 기법에 관한 연구)

  • 손태식;서정택;장준교;김동규
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2000.10a
    • /
    • pp.626-628
    • /
    • 2000
  • Java는 간결하고 객체 지향적이며 플랫폼 독립적으로 실행 가능한 특성을 지니고 있어, 웹 상에서의 증대된 표현능력과 유연성을 제공해 왔다. 하지만 이렇게 개방적이고 넓은 수용 가능성은 보안에 있어 많은 위협 취약점을 발생시키게 한다. 특히 현재 네트웍을 통해 널리 사용되는 애플릿은 그 자체가 사용자의 시스템에 전송되어 실행되므로, 만일 악의의 사용자가 그 애플릿 파일을, 역 컴파일러를 사용해 소스 코드를 얻어낸다면, 애플릿 서비스를 하는 시스템 및 네트웍에 대한 보안 문제 및 경제적 피해는 물론이고, 애플릿 개발자 및 다른 사용자들에게 있어 많은 문제를 일으킬 수 있다. 따라서 본 논문에서는 현재 자바 애플릿 역컴파일에 의한 보안 취약성 및 문제점을 진단하고, 거기에 대처할 수 있는 대응 기법에 대한 연구를 통해 보다 나은 자바 애플릿 역컴파일 방지 기법을 제시하려고 한다. 본 논문에 제안된 방법은 역컴파일 방지를 위해 클래스 파일에 혼란 코드를 삽입하는 방법으로서, 그 기법 및 사용 방법을 제시하고 역컴파일 방지 도구의 모델을 제안한다. 또한 앞으로의 연구는 여기서 제안된 자바 애플릿 역컴파일 방지 도구 모델의 세부적 구현으로 진행되어야 하겠다.

  • PDF