• Title/Summary/Keyword: Java Class File

Search Result 30, Processing Time 0.023 seconds

JarBot: Automated Java Libraries Suggestion in JAR Archives Format for a given Software Architecture

  • P. Pirapuraj;Indika Perera
    • International Journal of Computer Science & Network Security
    • /
    • v.24 no.5
    • /
    • pp.191-197
    • /
    • 2024
  • Software reuse gives the meaning for rapid software development and the quality of the software. Most of the Java components/libraries open-source are available only in Java Archive (JAR) file format. When a software design enters into the development process, the developer needs to select necessary JAR files manually via analyzing the given software architecture and related JAR files. This paper proposes an automated approach, JarBot, to suggest all the necessary JAR files for given software architecture in the development process. All related JAR files will be downloaded from the internet based on the extracted information from the given software architecture (class diagram). Class names, method names, and attribute names will be extracted from the downloaded JAR files and matched with the information extracted from the given software architecture to identify the most relevant JAR files. For the result and evaluation of the proposed system, 05 software design was developed for 05 well-completed software project from GitHub. The proposed system suggested more than 95% of the JAR files among expected JAR files for the given 05 software design. The result indicated that the proposed system is suggesting almost all the necessary JAR files.

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

Design and Implementation of Java Class File Browser (자바 클래스 파일 브라우저의 설계 및 구현)

  • 옥재호;김도우;정민수;진민
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 1998.10b
    • /
    • pp.419-421
    • /
    • 1998
  • 본 논문에서 소개하고 있는 자바 클래스 파일 브라우저는 자바 컴파일러에 의해 컴파일된 결과인 클래스 파일의 정보를 시각적으로 보여줌으로써 자바 클래스 파일의 상세한 분석과 자바 소스코드가 보여주지 못하는 클래스 파일내의 정보를 통해 자바 소스 프로그램에 대해 보다 명확하고 쉬운 이해가 가능하도록 한다.

A Java Virtual Machine for Sensor Networks (센서 네트워크를 위한 자바 가상 기계)

  • Kim, Seong-Woo;Lee, Jong-Min;Lee, Jung-Hwa;Shin, Jin-Ho
    • Journal of Institute of Control, Robotics and Systems
    • /
    • v.14 no.1
    • /
    • pp.13-20
    • /
    • 2008
  • Sensor network consists of a large number of sensor node distributed in the environment being sensed and controlled. The resource-constrained sensor nodes tend to have various and heterogeneous architecture. Thus, it is important to make its software environment platform-independent and reprogrammable. In this paper, we present BeeVM, a Java operating system designed for sensor networks. BeeVM offers a platform-independent Java programming environment with its efficiently executable file format and a set of class APIs for basic operating functions, sensing and wireless networking. BeeVM's high-level native interface and layered network subsystem allow complex program for sensor network to be short and readable. Our platform has been ported on two currently popular hardware platforms and we show its effectiveness through the evaluation of a simple application.

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 Code Concealment Method using Java Reflection and Dynamic Loading in Android (안드로이드 환경에서 자바 리플렉션과 동적 로딩을 이용한 코드 은닉법)

  • Kim, Jiyun;Go, Namhyeon;Park, Yongsu
    • Journal of the Korea Institute of Information Security & Cryptology
    • /
    • v.25 no.1
    • /
    • pp.17-30
    • /
    • 2015
  • Unlike existing widely used bytecode-centric Android application code obfuscation methodology, our scheme in this paper makes encrypted file i.e. DEX file self-extracted arbitrary Android application. And then suggests a method regarding making the loader app to execute encrypted file's code after saving the file in arbitrary folder. Encrypted DEX file in the loader app includes original code and some of Manifest information to conceal event treatment information. Loader app's Manifest has original app's Manifest information except included information at encrypted DEX. Using our scheme, an attacker can make malicious code including obfuscated code to avoid anti-virus software at first. Secondly, Software developer can make an application with hidden main algorithm to protect copyright using suggestion technology. We implement prototype in Android 4.4.2(Kitkat) and check obfuscation capacity of malicious code at VirusTotal to show effectiveness.

Java Class File Optimization (자바 클래스 파일 최적화)

  • 홍경표;이야리;오세만
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2001.04a
    • /
    • pp.55-57
    • /
    • 2001
  • 자바언어는 이질적인 네트워크 환경에서 프로그램 개발이 적합하도록 설계된 언어이다. 자바언어의 특징은 소프트웨어를 쉽게 개발하는데 유용한 것은 사실이지만, 성능상 제약이 따르게 된다. 즉 자바는 클래스 파일이 이동하여 JVM 환경에서 인터프리팅 되는 시스템이므로, 클래스 파일이 이동하며 실행되는 동안의 성능의 저하 없이 자바의 특징을 이용하려면 복잡한 최적화와 실행 시스템이 요구된다. 본 논문은 네트워크 상에서 동적으로 다운로드 되는 클래스 파일의 최적화에 있다. 클래스 파일이 인터프리팅 되는 시스템이 보다 적은 네트워크 로드를 가지고 실행할 수 있도록 하며, 효율적인 실행 속도를 보이도록 하는 것이다. 여기서는 Class Field Optimizer는 내부적으로 Bytecode Optimizer와 ClassGen을 이용하여 실행시간을 개선하고 전체 클래스 파일의 크기를 줄이게 된다. Bytecode Optimizer는 peephole 최적화를 수행하고, bytecode 의존적 최적화, 그리고 전역최적화를 행하게 된다. ClassGen은 클래스 파일의 포맷에 따라 bytecode를 분석하고 본래의 클래스 파일보다 작은 크기의 클래스 파일을 생성하게 된다. 최적화된 클래스 파일은 부분적으로 클래스 파일의 최적화를 가져와 전체 클래스 파일의 크기를 줄이고, 인터프리터를 통하여 실행될 때 수행 속도면에서 좀더 빠른 실행 속도를 가지게 된다.

Java Class File Execution Simulator (자바 클래스 파일 실행 분석기)

  • 박상필;고광만
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2003.10a
    • /
    • pp.262-264
    • /
    • 2003
  • 자바 언어에 대한 클래스 파일은 소스 프로그램의 의미를 자바 가상 기계에서 실행가능한 형식으로 변환된 형태이다. 이러한 클래스 파일의 구조 및 실질적인 실행 과정에 대한 분석은 디컴파일러 구성, 소스프로그램의 디버깅 등에 편리성을 지원할 수 있다. 본 논문에서는 이러한 클래스 파일에 대한 분석 및 실제로 실행 과정을 보다 시각적으로 표현하기 위한 실행 과정 분석기에 관한 연구이다. 이를 위해 클래스파일을 내용을 GUI 환경에서와 같이 접근 및 표현이 용이하도록 구현하였으며 이러한 클래스 파일의 실행 과정에서 핵심 정보를 저장하고 있는 메소드 영역 정보, 오퍼란드 스택 정보, 지역 변수의 정보를 시각적으로 표현하였다.

  • PDF

Estimation of Static Memory Usage for Embedded Java System by Class File Analysis (내장형 자바 시스템에서 클래스 파일의 분석을 통한 정적 메모리 사용량의 예측)

  • Yang, Hee-Jae
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2003.11a
    • /
    • pp.467-470
    • /
    • 2003
  • 한 개의 자바 프로그램은 다수 개의 클래스 파일로 구성된다. 자바 프로그램이 실행되기 위해서는 클래스 파일이 메모리에 적재되어져야 하는데, 본 논문에서는 개별 클래스들이 어느 정도의 메모리를 사용할지를 정적으로 예측할 수 있게 하는 방법에 대해 알아보았다. 본 논문의 관심은 클래스 영역의 메모리, 즉 정적 메모리에 맞추어져 있으며, 힙 영역의 메모리 등 동적 메모리에 대한 예측은 향후 연구로 남겨 두었다. 클래스를 이루는 필드와 메소드 등의 값들이 메모리 사용량에 미치는 영향을 수식으로 유도하였으며, 이 수식의 유효성을 실제 실험을 통해 확인하였다.

  • PDF

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

  • Choi, Won-Ho;Jung, Min-Soo;Kim, Do-Woo;Jin, Min;Yoon, Ki-Song
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 1999.10a
    • /
    • pp.418-420
    • /
    • 1999
  • 기존의 고급 언어들로 작성된 응용 프로그램들은 인터넷이나 다른 플랫폼(Platform)에서 수행되는 것이 어렵다. 본 논문에서는 자바의 플랫폼 독립적인 특성을 C언어와 같은 고급 언어에 적용해 보고자 한다. 즉 C 언어로 작성된 원시 코드(Source code)를 컴파일러를 이용해서 자바 가상 기계가 인식할 수 있는 목적 코드인 바이트 코드(Bytecode)로 변환하여 자바 가상 기계(Java Virtual Machine)가 탑재되어 있는 어떠한 플랫폼에서도 수행할 수 있도록 하는 것이다. 따라서, 본 논문에서는 C 언어로 작성된 응용 프로그램을 이기종 플랫폼 상에서 실행 가능하도록 바이트 코드를 생성하는 컴파일러를 설계하고자 한다.

  • PDF