• Title/Summary/Keyword: JVM(Java Virtual Machine)

Search Result 60, Processing Time 0.029 seconds

Design and Implementation of Thread Class Library Based On Embedded Java Virtual Machine (임베디드 자바가상머신을 위한 쓰레드 클래스 라이브러리 설계 및 구현)

  • 정명조;차태성;조희남;백대현;이철훈
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2002.04b
    • /
    • pp.358-360
    • /
    • 2002
  • 자바 기술의 특성은 자바가상머신(Java Virtual Machine 이하 JVM)이 탑재되어 있다면 어떤 환경에서라도 동일하게 수행되는 플랫폼 독립성과 온라인 서비스 상에서 신뢰성이 없는 정보로부터 사용자를 보호해 주는 강력한 보안성, 객체 직렬화와 원격 메소드 호출을 통한 네트워크 mobility 로 요약할 수 있다. 이 특성 중에 플랫폼 독립성은 자바 기술의 가장 큰 장점이라 할 수 있다. 그러나 플랫폼 독립성이 보장되기 위한 전제 조건이 있는데 JVM을 어느한 플랫폼에 탑재하기 위해 플랫폼에 의존적인 부분(입출력, 쓰레드, 그랙픽등)을 JVM 계층과 클래스 라이브러리 계층에서 구현해야 한다는 것이다. 이런 점은 자바 기술의 본 소유회사인 SUN 사에서 제공하는 specification 에서도 제대로 다루어지지 않아서 실제로 JVM 개발자나 클래스 라이브러리 개발자에게 아주 힘든 작업을 요한다. 본 논문에서는 플랫폼에 의존적인 부분 중 쓰레드를 지원하기 위한 클래스 라이브러리를 구현하고자 한다.

  • PDF

Intermediate Language Translator for Execution of Java Programs in .NET Platform

  • Lee, Yang-Sun;Na, Seung-Won;Hwang, Dae-Hoon
    • Journal of Korea Multimedia Society
    • /
    • v.7 no.6
    • /
    • pp.824-831
    • /
    • 2004
  • This paper presents the java bytecode-to-.NET MSIL intermediate language translator which enables the execution of the java program in .NET environments without JVM(java Virtual Machine), translating bytecodes produced by compiling java programs into MSIL codes. Java, one of the most widely used programming languages recently, is the language invented by James Gosling at Sun Microsystems, which is the next generation language independent of operating systems and hardware platforms. Java source code is compiled into bytecode as intermediate code independent of each platform by compiler, and also executed by JVM. .NET language such as C# and .NET platform in Microsoft Corp. has been developed to meet the needs of programmers, and cope with Java and JVM platform of Sun Microsystems. After compiling, a program written in .NET language is converted to MSIL code, and also executed by .NET platform but not in JVM platform. For this reason, we designed and implemented the java bytecode-to-.NET MSIL translator system for programs written in java language to be executed in the. NET platform without JVM. This work improves the execution speed of programs, enhances the productivity, and provides a environment for programmers to develop application programs without limitations of programming languages.

  • PDF

Design and Implementation of CVM on Real-Time Operating System, UbiFOSTM (실시간 운영체제 UbiFOSTM에서의 CVM 설계 및 구현)

  • Choi, chan-woo;Lee, cheol-hoon
    • Proceedings of the Korea Contents Association Conference
    • /
    • 2007.11a
    • /
    • pp.812-816
    • /
    • 2007
  • Having been speedy development of the IT industry, devices such as set-top box and smart phone are used in the broad filed. Because Java has merits that are platform independency, security and mobility, that is important software platform to offer stable services in the small device. This needs JVM(Java Virtual Machine) to execute Java application in the small device. CVM(Classic Virtual Machine) which is the kind of JVM is designed for embedded device to have limited resources. In this paper, CVM which is defined by CDC has designed and implemented on the Real-Time Operating System, UbiFOS$^{TM}$.

  • PDF

Applet Control using Java Bytecode Modification on the Internet Communication (인터넷 통신상에서 자바 바이트 코드 수정을 이용한 애플릿 제어)

  • 김광준;나상동;배용근
    • Journal of the Korea Institute of Information and Communication Engineering
    • /
    • v.7 no.1
    • /
    • pp.90-99
    • /
    • 2003
  • Java applets are downloaded from web server through internet and executed in Java Virtual Machine of clients' browser. Before execution of java applets, JVM checks bytecode program with bytecode verifier and performs runtime tests with interpreter. However, these tests will not protect against undesirable runtime behavior of java applets, such as denial of service attack, email forging attack, URL spoofing attack, and annoying sound attack. In order to protect malicious applets, a technique used in this paper is java bytecode modification. This technique is used to restrict applet behavior or insert code appropriate to profiling or other monitoring efforts. Java byte modification is divided into two general forms, class-level modification involving subclassing non-final classes and method-level modification used when control over objects from final classes or interface. This paper showed that malicious applets are controlled by java bytecode modification using proxy server. This implementation does not require any changes in the web sever, JVM or web browser.

A Study on Applet Control on the Internet Communication using Java Bytecode (자바 바이트 코드를 이용한 인터넷 통신의 애플릿 제어)

  • 김문환;나상동
    • The Journal of Korean Institute of Communications and Information Sciences
    • /
    • v.28 no.5C
    • /
    • pp.523-531
    • /
    • 2003
  • Java applets are downloaded from web server through internet and executed in Java Virtual Machine of clients'browser. Before execution of java applets, JVM checks bytecode program with bytecode verifier and performs runtime tests with interpreter. However, these tests will not protect against undesirable runtime behavior of java applets, such as denial of service attack, email forging attack, URL spoofing attack, or annoying sound attack. In order to protect malicious applets, a technique used in this paper is java bytecode modification. This technique is used to restrict applet behavior or insert code appropriate to profiling or other monitoring efforts. Java byte modification is divided into two general forms, class-level modification involving subclassing non-final classes and method-level modification used when control over objects from final classes or interface. This paper showed that malicious applets are controlled by java bytecode modification using proxy server. This implementation does not require any changes in the web sever, JVM or web browser.

The Structure of Java-to-C Compiler for Mobile Computing Environment (모바일 환경을 위한 Java-to-C 컴파일러 구조)

  • 한영선;박인호;황석중;김선욱
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2004.10c
    • /
    • pp.82-84
    • /
    • 2004
  • Java's performance is sometimes not acceptable due to interpretation overhead by the Java Virtual Machine (JVM). In this paper, we present a compiler structure of Java-to-C translator for high performance on resource limited environment like mobile devices. Our compiler framework translates Java into C codes to preserve Java's programming semantics such as inheritance, method overloading, virtual method invocation, and so on. Also our compiler fully supports Connected Limited Device Configuration (CLDC) 1.0 API's. We show that our compiler improves the speedup by up to eleven times more than JVM-only execution in measured benchmarks.

  • PDF

Design and Implementation of Java Crypto Provider for Android Platform (안드로이드 플랫폼을 위한 자바 보안 프로바이더 설계 및 구현)

  • Son, Mikyung;Kang, Namhi
    • The Journal of Korean Institute of Communications and Information Sciences
    • /
    • v.37C no.9
    • /
    • pp.851-858
    • /
    • 2012
  • Java crypto library such as SUN JCA/JCE or BC JCE is generally used to implement secure applications for smart devices using Android platform. Programming functions written by Java language are launched and executed inside Java Virtual Machine (JVM), thereby difficult to use system hardware specific functionalities and degrading performance as well. In case of crypto primitive, few secure applications can use crypto primitive executing in JVM because both amount of computing and complexity of such primitives are very high. From the aspect of performance, in particular, time sensitive real time applications such as streaming services or secure application frequently applying public key based crypto algorithm cannot use Java crypto library. To solve the problem, we design and implement crypto library which employ JNI and NDK methods to directly access functions that implemented by native language such as C or C++. The proposed Java Crypto provider supports faster execution. Also developer can use our provider in the same way by writing traditional Java crypto library.

Design and Implementation of GUI in CVM on Real-Time Operating System, iRTOS (실시간 운영체제에서 iRTOS에서의 CVM GUI 설계 및 구현)

  • Choi, chan-woo;Lee, cheol-hoon
    • Proceedings of the Korea Contents Association Conference
    • /
    • 2008.05a
    • /
    • pp.551-554
    • /
    • 2008
  • JVM(Java Virtual Machine) has GUI(Graphical User Interface) facility and Platform Independance and is used on the embedded device such as set-top box and smart phone. This needs JVM to execute Java application in the embedded device. CVM(Classic Virtual Machine) which is the kind of JVM is designed for embedded device to have limited resources. To support GUI facility of JAVA uses PBP(Personal Basis Profile) which is included on CVM. The PBP defines the GUI Stardard API to support GUI facility. When the GUI Stardard API is implemented, JNI(Java Native Interface) is used to connect between Java Native Method and Native function in Operating System. In this pater, PBP which is defined by CVM has designed and implemented on the Real-Time Operating System, iRTOS.

  • PDF

Analysis of Data Transfers in Java Virtual Machine (자바가상기계에서 데이터 이동 분석)

  • Yang, Hee-jae
    • Proceedings of the Korean Institute of Information and Commucation Sciences Conference
    • /
    • v.9 no.1
    • /
    • pp.835-838
    • /
    • 2005
  • It is widely known that most operations performed in JVM belongs to data transfers at all times as JVM is based on abstract stack machine. Hence it is necessary to analyze the fashion of internal data transfers in JVM to develop a more efficient machine. We have analyzed in this paper the data transfer operations between operand stack, local variable array, heap, and constant pool in bytecode level.

  • PDF

Design and Implementation of the MSIL-to-Bytecode Translator to Execute .NET Programs in JVM Platform (JVM 플랫폼에서 .NET 프로그램을 실행하기 위한 MSIL-to-Bytecode 번역기의 설계 및 구현)

  • Lee, Yang-Sun;Whang, Dae-Hoon;Na, Seung-Won
    • Journal of Korea Multimedia Society
    • /
    • v.7 no.7
    • /
    • pp.976-984
    • /
    • 2004
  • C# and .NET platform in Microsoft Corp. has been developed to meet the needs of programmers, and cope with Java and JVM platform of Sun Microsystems. After compiling, a program written in .NET language is converted to MSIL code, and also executed by .NET platform but not in JVM platform. Java, one of the most widely used programming languages recently, is the language invented by James Gosling at Sun Microsystems, which is the next generation language independent of operating systems and hardware platforms. Java source code is compiled into bytecode as intermediate code independent of each platform by compiler, and also executed by JVM. This paper presents the MSIL-to-Bytecode intermediate language translator which enables the execution of the program written in .NET language such as C or C# in JVM(Java Virtual Machine) environment, translating MSIL code produced by compiling .NET program into java bytecode. This work provides an environment for programmers to develop application programs without limitations of programming languages.

  • PDF