• Title/Summary/Keyword: 자바 가상 기계

Search Result 86, Processing Time 0.032 seconds

PersonalJavaTM on the Embedded Linux (내장형 리눅스 상에서의 퍼스널자바 플랫폼의 개발)

  • 성민영;김태현;김소영;김광영;김형수;장래혁;신현식
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2000.10c
    • /
    • pp.91-93
    • /
    • 2000
  • 자바는 플랫폼 독립성, 높은 보안 수준, 멀티 쓰레드 지원 등의 다양한 장점을 가진 언어로서 인터넷 응용에서 이제 차세대 내장형 시스템을 위한 실행 환경으로 기대를 모으고 있다. 특히 퍼스널자바는 셋톱박스나 PDA 등의 내장형 응용을 위해 경량화된 자바 가상 기계로서 현재 다양한 운영체제 및 하드웨어에 활발히 이식되고 있다. 본 논문은 내장형 시스템을 위한 플랫폼으로서 내장형 리눅스상에서의 퍼스널자바 수행 환경을 제안하고 그 개발 내용을 기술한다. 내장형 리눅스는 기존 상용 실시간 운영체제에 비해 비용이 매우 저렴하며 소스 코드가 공개되어 있어 다양한 수준의 수정 및 개발이 가능하다는 장점을 가진다. 본 논문에서는 이러한 내장형 리눅스에 퍼스널자바를 이식함에 있어 구축된 개발 환경 및 이식에 적용된 개발 방법과 내용을 소개한다.

  • PDF

Energy Efficiency of Iteration Statement in Java (자바 반복문의 에너지 효율성)

  • Yang, Hee-Jae
    • Proceedings of the Korean Institute of Information and Commucation Sciences Conference
    • /
    • v.9 no.2
    • /
    • pp.816-819
    • /
    • 2005
  • In Java virtual machine which is the running environment of Java programs, almost every bytecode execution requires data transfers in memory. Data transfer incurs energy consumption and hence minimizing the transfer operation is very important for improving the energy efficiency of JVM. As the number of data transfers for a Java iterative statement is directly proportional to the iteration count, improving the energy efficiency of iterative statement is crucial to keep the energy efficiency of JVM high. This paper analyzes Java iterative statement at bytecode level and proposes some points how to improve the energy efficiency.

  • PDF

evelopment of Java Class Library For E-Book Reader Systems on Embedded Linux Environment (내장형 리눅스 환경의 전자책 리더 용 자바 클래스 라이브러리 개발)

  • Lee, Eun-Jeong;Jo, Su-Seon
    • The KIPS Transactions:PartA
    • /
    • v.8A no.4
    • /
    • pp.399-410
    • /
    • 2001
  • We developed a Java library Xeni for e-book reader systems on embedded Linux environment. Xeni is an API library providing functions such as rendering for XML-based e-book contents, navigation mechanism for readers and bookmark management. This library is developed in Java language, targeting java virtual machines on embedded Linux systems. We discuss design and structure of the developed library, and introduce the reference implementation of a reader system using this library. Also, virtual machines on Linux environment are briefly surveyed.

  • PDF

Multiple Fixed-Size Memory Allocation Scheme for Embedded Java Virtual Machine (내장형 자바가상기계를 위한 다중 고정크기 메모리 할당 기법)

  • 김세영;지정훈;양희재
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2003.10a
    • /
    • pp.229-231
    • /
    • 2003
  • 내장형 실시간 시스템에서는 메모리 관리시스템의 구현에 있어 메모리 단편화와 시간 결정성 (determinism)의 문제를 해결하기 위한 방법 중의 하나로 고정크기의 메모리를 할당하는 기법이 사용되어진다 내장형 자바가상기계에서도 객체를 관리하는 메모리 구조인 힙에 이를 적용하여 활용할 수 있으며 실제 구현으로는 simpleRTJ가 있다. 고정크기의 메모리 할당기법은 구현이 간단하기 때문에 시스템이 단순해지고 실행에서의 오버헤드도 작아지는 장점이 있다. 하지만 고정크기의 객체할당 방식은 가장 큰 객체의 크기를 이용하여 모든 객체를 할당하기 때문에 내부단편화를 발생시키는 단점이 있다. 본 논문에서는 내부 단편화를 최소화하면서 고정크기 할당기법의 장점을 최대한 이용할 수 있도록 하기 위해 다수의 고정크기를 이용하여 객체를 할당하는 기법에 관해 설명하며 관련 실험을 통해 내부단편화 문제를 얼마나 해결할 수 있는지에 관해 기술한다.

  • PDF

An Efficient Memory Allocation Scheme for Real-Time Java Virtual Machine (실시간 자바가상기계를 위한 효율적인 메모리 할당 기법)

  • Kim, Seyoung;Yang, Heejae
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2004.05a
    • /
    • pp.1677-1680
    • /
    • 2004
  • 내장형 실시간 시스템에서는 메모리관리시스템의 구현에 있어 메모리 단편화와 시간 결정성의 문제를 해결하기 위한 방법 중의 하나로 고정크기의 메모리를 할당하는 기법이 사용된다. 내장형 자바가상기계에서도 객체를 관리하는 메모리 구조인 힙에 이를 적용하여 활용할 수 있으며 구현된 예로는 simpleRTJ가 있다. 고정크기 메모리 할당 기법은 구현이 간단하기 때문에 시스템이 단순해지고 실행 시 오버헤드의 발생이 줄어드는 장점이 있다. 하지만 실제 구현에 있어서 구현의 단순화에 초점을 맞추어 프리 리스트가 구성되지 않아 메모리할당에 있어 예상할 수 없는 시간 지연이 있을 수 있으며 이는 실시간성의 보장에 치명적인 결함이 될 수 있다. 또한 배열과 문자열의 구성에 있어 실제 크기를 그대로 사용함으로써 고정크기 할당방식의 장점을 완전히 이용되지 못하고 있다. 본 논문에서는 실질적인 고정크기 할당방식의 장점을 최대한으로 이용하기 위해 객체와 메소드의 구조, 그리고 힙을 재구성하였다.

  • PDF

Design and Implementation of the Visualized Browser for Java Class File (자바 클래스 파일에 대한 시각화 브라우저의 설계 및 구현)

  • 윤영수;박상필;고광만
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2003.04c
    • /
    • pp.157-159
    • /
    • 2003
  • 자바 언어는 빠른 속도로 인터넷 및 분산 응용 분야 등에서 활용되고 있으며 단순히 응용 소프트웨어를 개발할 수 있는 프로그래밍 언어 이상으로 활용 범위가 확대되고 있다. 특히, 실행 환경인 자바 가상 기계 에 연관되어 다양한 연구가 진행되고 있으며 자바 클래스 파일에 대한 분석 및 응용 분야에 적합한 형태로 정보를 활용할 수 있는 다양한 시도가 진행되고 있다. 본 연구에서도 자바 클래스 파일에 대한 분석을 보다 편리하게 진행하고 클래스 파일이 갖는 정보에 대한 접근을 용이하게 할 수 있는 클래스 파일에 대한 시각화 브라우저를 설계하고 구현하였다. 본 연구에서는 새로운 기술적인 방법론은 없지만 구현된 시각화 브라우저를 활용하여 클래스 파일에 대한 정보 접근 및 분석을 용이하게 할 수 있다.

  • PDF

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

  • 권혁주;김영근;이양선
    • Proceedings of the Korea Multimedia Society Conference
    • /
    • 2004.05a
    • /
    • 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

Design and Implementation of a Java Bytecode-to-SAF Translator for the Ubiquitous Game Platform (유비쿼터스 게임 플랫폼을 위한 Java Bytecode-to-SAF 번역기의 설계 및 구현)

  • Park, Sang-Hoon;Lee, Yang-Sun
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2007.05a
    • /
    • pp.1512-1515
    • /
    • 2007
  • 본 연구팀은 유비쿼터스 환경에서 다양한 분야의 콘텐츠를 보다 쉽게 개발하고 실행할 수 있는 통합 소프트웨어 개발 솔루션인 유비쿼터스 게임 플랫폼(Ubiquitous Game Platform)을 개발하였다. 유비쿼터스 게임 플랫폼은 C/C++ 언어와 자바 언어를 모두 지원하며, 가상기계 방식이기 때문에 여러 임베디드 기기에서 독립적으로 수행이 가능하다는 장점이 있다. 본 논문에서는 유비쿼터스 게임 플랫폼에서 자바 언어로 작성된 콘텐츠를 실행할 수 있도록 하기 위해 자바 바이트코드를 유비쿼터스 게임 플랫폼의 중간언어 형식인 SAF(Standard Assembly Format)로 변환해주는 Java Bytecode-to-SAF 번역기를 설계하고 구현하였다. Java Bytecode-to-SAF 번역기를 통해 C/C++ 콘텐츠뿐만 아니라 자바 콘텐츠도 하나의 플랫폼에서 실행이 가능해져서 개발자에게 효율적이며, 능률적인 개발 환경을 제공하고, 한번 개발한 콘텐츠를 타 기종으로 이식하기 위한 시간과 비용 소모를 줄여 생산성을 높일 수 있다.

  • PDF

Java Applet Security by Bytecode Modification (바이트코드 수정을 통한 자바 애플릿보안)

  • 박상길;노봉남
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2000.04a
    • /
    • pp.166-168
    • /
    • 2000
  • 자바가상기계(JVM : Java Virtual Machine)는 실행전에 바이트코드를 확인하는 바이트코드 검증기와 실행환경에서 점검하는 바이트코드 인터프리터를 포함한다. 자바 애플릿은 서비스 거부 공격이나, 사용자를 속이기 위한 조작한 링크 정보를 상태바에 보인다거나, 전자메일을 위조하여 보내는 등의 사용자에 유해한 행위를 할 수 있다. 웹브라우저를 통해 유해한 행동을 하는 클래스에 대해 사전에 바이트코드 수정을 통하여 안전한 클래스로 대체한다. 바이트코드 수정에는 클래스 수준 수정과 메소드 수준 수정이 있다. 클래스 수준 수정은 자바의 상속성을 이용하고. final 클래스나 인터페이스처럼 상속되지 않는 클래스는 메소드 수준에서 바이트 코드 수정을 한다. 메소드 수준 수정은 바이트코드 명령과 Constant Pool을 수정한다. 바이트 코드 수정을 적용하면 웹서버, 클라이언트, 브라우저에 대해 어떠한 별도의 작업도 필요없이 프락시 서버에서 유해클래스를 Safe 클래스로 수정한 후 브라우저에 보인다.

  • PDF

Design and Implementation of the Execution File Format Translator (실행 파일 포맷 변환기의 설계 및 구현)

  • Kim Seong-Jin;Ko Kwang-Man
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2004.11a
    • /
    • pp.685-688
    • /
    • 2004
  • 자바 클래스 파일은 플랫폼 독립성을 보장하면서 다양한 애플리케이션의 실행 파일 포맷으로 사용되고 있으며 실행 효율성을 높이기 위해 파일 형식의 변환 연구, 압축 기법 연구 등이 진행되고 있다. 본 연구에서는 임베디드 시스템에 적합한 가상기계(EVM)을 개발하기 위해 기존의 자바 클래스 파일형식을 간결한 형태로 재구성한 실행 파일 포맷($^{\ast}.evm$)에 대한 실행 환경 모델을 구축하기 위해 본 논문에서 자바 클래스 파일을 $^{\ast}.evm$ 형식으로 변환하는 변환기를 설계하고 구현하였다. 자바 클래스 파일로부터 변환된 $^{\ast}.evm$ 형식에 대한 검증은 현재 구현중인 로더/링커 및 실행 시간 엔진 등을 통한 실험 결과의 정확성을 통해 증명하였다.

  • PDF