• Title/Summary/Keyword: EVM(Embedded Virtual Machine)

Search Result 21, Processing Time 0.027 seconds

Translation Java Bytecode to EVM SIL Code for Embedded Virtual Machines

  • Lee, Yang-Sun;Park, Jin-Ki
    • Journal of Korea Multimedia Society
    • /
    • v.8 no.12
    • /
    • pp.1658-1668
    • /
    • 2005
  • This paper presents the bytecode-to-SIL translator which enables the execution of the java program in EVM(Embedded Virtual Machine) environment without JVM(java Virtual Machine), translating bytecodes produced by compiling java programs into SIL(Standard Intermediate Language) codes. EVM, what we are now developing, is a virtual machine solution that can download and execute dynamic application programs written in sequential languages like C language as well as object oriented languages such as C#, Java, etc. EVM is a virtual machine mounted on embedded systems such as mobile device, set-top box, or digital TV, and converts the application program into SIL, an assembly language symbolic form, and execute it. SIL is a virtual machine code for embedded systems, based on the analysis of existing virtual machine codes such as bytecode, MSIL, etc. SIL has such features as to accommodate various programming languages, and in particularly has an operation code set to accept both object-oriented languages and sequential languages. After compiling, a program written in java language is converted to bytecode, and also executed by JVM platform but not in other platform such as .NET, EVM platform. For this reason, we designed and implemented the bytecode-to-SIL translator system for programs written in java language to be executed in the EVM platform without JVM. This work improves the execution speed of programs, enhances the productivity, and provides an environment for programmers to execute application programs at various platforms.

  • PDF

Design and Implementation of a Virtual Machine for Embedded Systems (임베디드 시스템을 위한 가상기계의 설계 및 구현)

  • Oh Se-Man;Ko Kwang-Man;Lee Yang-Sun
    • Journal of Korea Multimedia Society
    • /
    • v.8 no.9
    • /
    • pp.1282-1291
    • /
    • 2005
  • This paper presents the EVM(Embedded Virtual Machine) which enables the execution of dynamic applications loaded in the embedded systems such as Mobile Devices(mobile phone, PDA), Set-Top Box, and Digital TV using downloading techniques. To accomplish this goal, we defined a SIL-(Standard Intermediate Language) code, and implemented a Bytecode-to-SIL translator which enables the execution of programs written in java language in the EVM platform without JVM, and a MSIL--to-SIL- translator which enables for programs written in .NET language to be executed in the EVM platform without .NET platform. Also, we developed a EFF(Executable File Format) builder as an assembler which translates SIL codes into an executable file, *.evm, and implemented the EVM which reads the *.evm file and executes it. The virtual machine for embedded systems developed in this paper is the software technologies that enable the execution of applications or contents without changes to when the platforms change. In fact, the virtual machine suggested here is not only usable as a standard model for existing virtual machines but also aid in more efficient execution of applications loaded in the embedded systems such as Mobile Devices, Digital TV, and Set-Top Box.

  • PDF

An Executable File formal for Embedded Virtual Machine (임베디드 가상 기계를 위한 실행파일포맷)

  • Cheong, Hang-Jong;Oh, Se-Man
    • Journal of Korea Multimedia Society
    • /
    • v.8 no.5
    • /
    • pp.721-728
    • /
    • 2005
  • A virtual machine is a conceptual computer with a logical system configuration, made of software unlike physical systems made of hardware. Virtual machine technology for embedded systems is a requisite software technology for download solutions such as mobile devices, digital TVs, etc. At present, a research of virtual machines for embedded systems named EVM(Embedded Virtual Machine) is in progress. As a part of the research, we define the EFF(Executable File Format) as a file format for embedded systems. We also prove completeness of EFF by structurally mapping class file widely used to EFF.

  • PDF

Protecting Technique for the Executable File of Virtual Machines (가상기계 실행파일을 위한 보호 기법)

  • Park, Ji-Woo;Yi, Chang-Hwan;Oh, Se-Man
    • Journal of Korea Multimedia Society
    • /
    • v.10 no.5
    • /
    • pp.668-678
    • /
    • 2007
  • The development of a wire and wireless communication technologies might permit easily accessing on various information. But, the easiness of accessing information has basically the problem of an unintended information outflow. An executable file which has key algorithms, data and resources for itself has very weak point in the security. Because the various information such as algorithms, data and resources is included in an executable file on embedded systems or virtual machines, the information outflow problem may appear more seriously. In this paper, we propose a technique which can be protecting the executable file contents for resolving the outflow problem through the encryption. Experimentally, we applied the proposed technique to EVM-the virtual machine for embedded system and verified it. Also, we tried a benchmark test for the proposed technique and obtained reasonable performance overhead.

  • PDF

Virtual Machine Code Optimization using Profiling Data (프로파일링 데이터를 이용한 가상기계 코드 최적화)

  • Shin, Yang-Hoon;Yi, Chang-Hwan;Oh, Se-Man
    • The KIPS Transactions:PartA
    • /
    • v.14A no.3 s.107
    • /
    • pp.167-172
    • /
    • 2007
  • VM(Virtual Machine) can be considered as a software processor which interprets the machine code. Also, it is considered as a conceptional computer that consists of logical system configuration. But, the execution speed of VM system is much slower than that of a real processor system. So, it is very important to optimize the code for virtual machine to enhance the execution time. Especially the optimizer for a virtual machine code on embedded devices requires the highly efficient performance to the ordinary optimizer in the respect to the optimized ratio about cost. Fundamentally, functions and basic blocks which influence the execution time of virtual machine is found, and then an optimization for them nay get the high efficiency. In this paper, we designed and implemented the optimizer for the virtual(or abstract) machine code(VMC) using profiling. Firstly, we defined the profiling information which is necessary to the optimization of VMC. The information can be obtained from dynamically executing the machine code. And we implemented VMC optimizer using the profiling information. In our implementation, the VMC is SIL(Standard Intermediate Language) that is an intermediate code of EVM(Embedded Virtual Machine). Also, we tried a benchmark test for the VMC optimizer and obtained reasonable results.

Pattern Matching Optimizer for Virtual Machine Codes (가상 기계 코드를 위한 패턴 매칭 최적화기)

  • Yi Chang-Hwan;Oh Se-Man
    • Journal of Korea Multimedia Society
    • /
    • v.9 no.9
    • /
    • pp.1247-1256
    • /
    • 2006
  • VM(Virtual Machine) can be considered as a software processor which interprets the abstract machine code. Also, it is considered as a conceptional computer that consists of logical system configuration. But, the execution speed of VM system is much slower than that of a real processor system. So, it is very important to optimize the code for virtual machine to enhance the execution time. In this paper, we designed and implemented the optimizer for the virtual(or abstract) machine code(VMC) which is actually SIL(Standard Intermediate Language) that is an intermediate code of EVM(Embedded Virtual Machine). The optimizer uses the pattern matching optimization techniques reflecting the characteristics of the VMC as well as adopting the existing optimization methodology. Also, we tried a benchmark test for the VMC optimizer and obtained reasonable results.

  • PDF

Covering Problem for Virtual Machine Code (가상기계 코드의 커버링 문제)

  • 남동근;오세만
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2003.10a
    • /
    • pp.247-249
    • /
    • 2003
  • 임베디드 시스템을 위한 가상기계 기술은 모바일 디바이스와 디지털 TV등의 다운로드 솔루션에 꼭 필요한 소프트웨어 기술이다. 현재 EVM(Embedded Virtual Machine)이라 명명되어진 임베디드 시스템을 위한 가상기계에 대한 연구가 진행 중이며, EVM의 중간 언어로 SIL(Standard Intermediate Language)이 설계되었다. 본 논문에서는 임베디드 시스템을 위한 가상기계의 표준 중간 언어로서 SIL의 완벽성을 증명한다. 기존에 이미 널리 사용되고 있는 가상기계 코드를 SIL 카테고리에 매핑시킴으로써 구조적으로 SIL의 완벽성을 증명한다. SIL은 표준 중간 언어로서의 요구 사항을 갖추고 있으며 6개의 메인 카테고리와 16개의 서브 카테고리로 나누어진다. Oolong과 .NET IL등 기존의 가상기계 코드들의 카테고리는 SIL카테고리에 매핑된다.

  • PDF

Decompiler for Executing Virtual Machine Code (가상기계 코드 실행을 위한 역컴파일러)

  • Ahn Duk-Ki;Oh Se-Man
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2006.05a
    • /
    • pp.383-386
    • /
    • 2006
  • 최근 가상기계 시스템은 임베디드 유비쿼터스 컴퓨팅의 필수적인 기술로서, 그 중요성이 더욱 강조되고 있으며, 컴파일러, 어셈블러 그리고 가상기계의 구현으로 구축된다. 이러한 시스템의 구축 과정에서 각 컴포넌트의 신뢰성을 위하여 정확한 검증 방법이 요구되며, 검증의 효율성을 위해서 순차적으로 진행되어야 한다. 본 논문에서는 가상기계 시스템의 컴파일러를 검증하기 위해서, 컴파일 된 가상기계 코드를 역컴파일하여 실행하는 기법을 제안하고, 그러한 기법에 따라 EVM(Embedded Virtual Machine) SIL(Standard Intermediate Language) 역컴파일러를 구현하였다. 구현된 역컴파일러는 EVM이 개발되기 전에 효율적인 실행 시스템으로 이용됨은 물론 EVM ANSI C 컴파일러의 검증 도구로서 이용될 수 있으며, EVM 시스템을 체계적으로 개발할 수 있도록 할 것이다.

  • PDF

Executing System of Virtual Machine Code using Decompiling Method (역컴파일링 기법을 이용한 가상기계 코드 실행 시스템)

  • Ahn, Duk-Ki;Yi, Chang-Hwan;Oh, Se-Man
    • The KIPS Transactions:PartA
    • /
    • v.14A no.2
    • /
    • pp.91-98
    • /
    • 2007
  • Generally, virtual machine platform is composed of a compiler, an assembler, and VM(Virtual Machine). To develop it, the design of VMC(Virtual Machine Code) is an essential task. And it is very important to verify the virtual machine platform. To do this and furthermore to execute VMC, it needs to implement VMC execution system using compiling method, interpreting method, or decompiling method. In this paper, we suggested and implemented the executing system of VMC using decompiling method out of three methods to execute the VMC. In our implementation, the VMC is SIL(Standard Intermediate Language) that is an intermediate code of EVM(Embedded Virtual Machine). Actually, we verified the usefulness of the decompiling method. And the decompiling method suggested in this paper can be used to minimize the mistake in developing Virtual machine platform.

Java Bytecode-to-SIL Translator using an Abstract Syntax Tree (구문 트리를 이용한 자바 바이트코드에서 SIL로의 번역기)

  • Kim, Young-Koun;Kwon, Hyeok-Ju;Lee, Yang-Sun
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2004.05a
    • /
    • pp.519-522
    • /
    • 2004
  • 자바는 현재 가장 널리 사용되는 범용 프로그래밍 언어중 하나로 컴파일러에 의해 중간언어인 바이트코드로 변환되며 JVM(Java Virtual Machine)에 의해 실행되는 플랫폼 독립적인 언어이다. SIL(Standard Intermediate Language)은 Microsoft사의 .NET 언어와 SUN사의 Java 언어 등을 모두 수용할 수 있는 임베디드 시스템을 위한 중간언어로 가상기계인 EVM(Embedded Virtual Machine)에서 실행된다. 본 논문에서는 자바 프로그램을 컴파일하여 생성된 클래스 파일에서 Oolong 코드를 추출하고 추출된 Oolong 코드를 EVM의 SIL 코드로 변환하여 자바로 구현된 프로그램이 EVM에서 실행되도록 하는 Bytecode-to-SIL 번역기 시스템을 구현하였다. 그리고 본 번역기 시스템을 다른 플랫폼에 용이하게 설치하기 위한 재목적성(retargetability)을 위해 단일패스(one-pass)을 사용하는 기존의 번역기들과 달리 AST를 이용한 컴파일러 기법을 사용하여 AST가 가지고 있는 정보에 대해 최적화 작업을 수행하여 보다 효과적인 코드 변환을 할 수 있도록 설계하였다.

  • PDF