• Title, Summary, Keyword: 자바 프로그래밍 언어

Search Result 101, Processing Time 0.031 seconds

Visualized Execution Analyzer for the Java Class File (자바 클래스 파일에 대한 시각화 실행 분석기)

  • Ko, Kwang-Man
    • The KIPS Transactions:PartA
    • /
    • v.11A no.5
    • /
    • pp.319-324
    • /
    • 2004
  • The Java language is rapidly being adopted in the Internet. The distributed applications and their application range are being expanded beyond just a programing language and developed Into software applications. A variety of researches are going on with regard to the Java Virtual Machine runtime environment and methods of analyzing the Java class files and utilizing the information for applications. A class file is a converted file that is executable by the Java virtual machine. Analysis on the class file structure and the runtime processes will be convenient in arranging the decompilers and debugging the source programs. This paper is about the runtime process analyzer that presents the runtime processes, including class files, more visually. The content of a class file will be easily accessed and expressed as in a graphic user interface. The information in the class file displayed is divided into Constant_Pool, Class_file, Interface, Field, Method and Attribute with information on method area, operand stack and local variables expressed visually.

An Explicit Dynamic Memory Management Scheme in Java Run-Time Environment (자바 실행시간 환경에서 명시적인 동적 메모리 관리 기법)

  • 배수강;이승룡;전태웅
    • Journal of KIISE:Software and Applications
    • /
    • v.30 no.1_2
    • /
    • pp.58-72
    • /
    • 2003
  • The objects generated by the keyword new in Java are automatically managed by the garbage collector Inside Java Virtual Machine (JVM) not like using the keywords free or delete in C or C++ programming environments. This provides a means of freedom of memory management burden to the application programmers. The garbage collector however. inherently has its own run time execution overhead. Thus it causes the performance degradation of JVM significantly. In order to mitigate the execution burden of a garbage collector, we propose a novel way of dynamic memory management scheme in Java environment. In the proposed method, the application programmers can explicitly manage the objects In a simple way, which in consequence the run-time overhead can be reduced while the garbage collector is under processing. In order to accomplish this, Java application firstly calls the APIs that arc implemented by native Jana, and then calls the subroutines depending on the JVM, which in turn support to keep the portability characteristic Java has. In this way, we can not only sustain the stability in execution environments. but also improve performance of garbage collector by simply calling the APIs. Our simulation study show that the proposed scheme improves the execution time of the garbage collector from 10.07 percent to 52.24 percent working on Mark-and-Sweep algorithm.

A Method to Forecast the Computer Technology Trends based on Computer Languages (컴퓨터 언어를 기반으로 한 컴퓨터기술의 발전방향 예측)

  • Choi, Se Ill
    • Smart Media Journal
    • /
    • v.5 no.3
    • /
    • pp.88-92
    • /
    • 2016
  • This paper proposes a method of forecasting the computer technology development direction. Most computer technology researches in Korea are developed from hot research issues. This approach to take research topics mostly produces less valuable results. In order to choose more valuable research topics, researchers should company with the technology development trends. This paper proposes a way to forecast the computer technologies on the way to the future. It analyzes the development history of programming languages, and forecasts future directions as extensions of the history.

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

  • Ko, Kwang-Man
    • Journal of the Institute of Electronics Engineers of Korea CI
    • /
    • v.39 no.4
    • /
    • pp.1-9
    • /
    • 2002
  • The various researches are investigated for translating Bytecode into native code which can be implemented in the specific processor using classical compiling methods to improve the execution speed of the Java application programs. The code generation techniques using pattern matching can generate more high-quality machine code than code expansion techniques. We provide, in this research, the standardized pattern describing methods and pattern matching techniques that can be used to generate the register-based intermediate code which is for the effective native code generation from Bytecode. And we designed and realized the intermediate code translator with which we can generate the high-quality register-based intermediate code using standardized pattern described formerly.

Development of a Garbage Collector for an Embedded Java Virtual Machine (임베디드 자바 가상머신을 위한 가비지 컬렉터 개발)

  • Cha Chang-Il;Kim Hyung-Jun;Hwang Gyu-Jeong;Kim Sang-Wook;Lee Sang-Yun;One Hui-Seon
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • /
    • pp.1321-1324
    • /
    • 2006
  • 자바 언어는 그 객체지향성, 안전성, 유연성으로 인하여 현재 가장 널리 쓰이는 프로그래밍 언어의 하나가 되었으며, 자바 가상머신이 제공해주는 가비지 컬렉터로 인하여 프로그래머는 메모리 관리에 관한 많은 고민이 줄어들었다. 임베디드 환경에서 역시 자바는 강세를 나타내고 있으며 임베디드 환경의 특성을 반영한 가상 머신과 가비지 컬렉션 기법이 요구되고 있다. 본 논문에서는 힙이라고 불리는 메모리 영역을 크게 젊은 세대와 늙은 세대의 두 부분으로 나누어서 관리하며 각 세대는 그 특성과 요구사항에 적합하도록 각기 다른 기법을 적용한 가비지 컬렉터를 제안한다. 더불어 효과적인 가비지의 식별을 위한 쓰기 장벽과 2중 필터링 기법을 제안하고 있으며, 일반적인 방법으로 회수가 불가능한 순환적 구조의 가비지를 검출하여 회수하기 위한 이중 검사 기법을 제안한다. 제안하는 기법은 임베디드 환경의 요구사항인 객체의 빠른 할당, 동작의 실시간성, 모든 가비지의 회수, 단편화 제거, 높은 지역성 등을 모두 만족한다.

  • PDF

Design and Implementation of the Virtual Machine for the Redesigned Java Class File (재설계된 자바 클래스 파일을 위한 가상기계의 설계 및 구현)

  • Ko Kwang-Man
    • The KIPS Transactions:PartA
    • /
    • v.12A no.3
    • /
    • pp.229-234
    • /
    • 2005
  • The virtual machine is a programming environment that supports device and platform independence. So far, virtual machines such as JVM and KVM have been used in a variety of environments for the Java language. Some virtual machines similar to them are also being developed and used. This paper Presents the experiences of extracting elements essential for small sized devices such as PDA from Java Class files(*.class) and designing a converted class file(*.rclass) for runtime efficiency by modifying its class file format and developing its translator. In addition, a virtual machine is developed to receive the translated class file entered and output the runtime results.

RBAC 모델의 Java 2 환경 적용연구 동향 및 활용연구

  • 이형효;이동익;노봉남
    • Review of KIISC
    • /
    • v.10 no.4
    • /
    • pp.69-82
    • /
    • 2000
  • 자바기술은 플랫폼에 독립적인 프로그래밍 언어와 실행환경 특성으로 인터넷의 확산과 함께 활용분야를 넓혀가고 있다. 초기의 매우 엄격한 자비 보안모델은 네트워크 환경에서 유용한 기능을 수행하는 프로그램 개발에 장애가 되었으나, 현재는 보안정책에 기반한 유연한 접근통제기능을 제공하도록 수정, 보완되었다. 그러나 현재의 자바 보안모델이 코드 기반의 접근통제기능만을 제공하고 있어 네트워크 환경에서 여러 사용자에 의해 수행되는 응용 프로그램 실행환경에 적합하지 않은 문제점이 있다. 본 논문에서는 이와 같은 문제점을 해결하기 위해 자바 환경에 역할기반 접근통제모델을 적용하는 연구들에 대해 살펴보고 역할기반 접근통제모델이 적용된 자바 기술이 활용될 수 있는 분야에 대해 기술한다.

  • PDF

Design of Java library base on pi-calculus (병행성 이론에 기반한 자바 라이브러리 설계)

  • Shin, Hyun-Sam;Kim, Jae-Woo;Kwon, Kee-Hang
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • /
    • pp.133-136
    • /
    • 2000
  • 자바에서 또한 이러한 병행성 프로그램을 지원하기 위한 다양한 언어적 지원과 병행적인 요건을 지원하고 있다. Thread class지원, Synchronized 예약어, 상호협동 관계를 표현하기위한 wait(), notify(), notifyAll() 메서드 , monitor 메커니즘등을 지원하고 있다. 하지만 이는 아주 저 수준의 지원형태이며 여러 가지 문제점을 야기할 수 있다. 이에 대해 병행적 이론의 정수라고 할 수 있는 pi-calculus의 이론과 기법을 도입하여 새로운 시각으로 병행성 프로그래밍에 대한 접근을 하고자 한다. 여기에 실용적으로 많이 사용되고 발전되어온 자바에서 적용하고자 한다. pi-calculus에 기반한 pict를 모델로 하여 pict에서 지원하는 아주 명료한 연산자와 current object를 도입함으로써 보다 표현력과 확장성, 검증성이 뛰어난 고 수준 자바 라이브러리를 설계하고자 한다.

  • PDF

An Internet-based Self-Learning Educational System for Efficient Learning of Java Language (효율적인 자바언어 학습을 위한 인터넷기반 자율학습시스템의 구현)

  • Kim Dong-Sik;Lee Dong-Yeop
    • Journal of Engineering Education Research
    • /
    • v.8 no.1
    • /
    • pp.71-83
    • /
    • 2005
  • This paper presents an internet-based self-learning educational system which can be enhancing efficiency in the learning process of Java language. The proposed self-learning educational system is called Java Web Player(JWP), which is a Java application program and is executable through Java Web Start technologies. Also, three important sequential learning processes : concept learning process, programming practice process and assessment process are integrated in the proposed JWP using Java Web Start technologies. This JWP enables the learners to achieve efficient and interesting self-learning since the learning process is designed to enhance the multimedia capabilities on the basis of various educational technologies. Furthermore, internet-based on-line voice presentation and its related texts together with moving images are synchronized for efficient language learning process. Also, a simple and useful Java compiler is included in the JWP for providing language practice environment such as coding, editing, executing and debugging Java source files. Finally, repeated practice can make the learners to understand easily the key concepts of Java language. Simple multiple choices are given suddenly to the learners while they are studying through the JWP and the test results are displayed on the message box. This assessment process is very essential to increase the learner's academic capability.

Design and Implementation of Distributed Pair Programming System based on IDE (IDE 기반의 분산 페어 프로그래밍 시스템의 설계 및 구현)

  • Park, Ji-Hoon;Lee, Kyung-Hwan
    • The KIPS Transactions:PartD
    • /
    • v.11D no.6
    • /
    • pp.1301-1310
    • /
    • 2004
  • In distributed office, the pairs can program together using a distributed pair programming system. Many CSCW tools featuring remote screen sharing function have insufficient usability, accessibility to introduce many developers to distributed pair programming. In this paper, we suggest a distributed pair programming system based on IDE, which many developers will accept and use easily. We have do#eloped a user scenario and GUI of the system, making distributed pair programming easier and designed with high extensibility by adapting design patterns and implemented in Java language. Our findings will be of significant help to developers dealing with implementation of distributed pair programming function into some commercial IDE.