• Title/Summary/Keyword: 자바 가상 머신

Search Result 102, Processing Time 0.029 seconds

Stack Allocation-based Memory Performance Improvement Technique on Android 2.3 Dalvik Virtual Machine (안드로이드 2.3 달빅 가상머신에서 스택 할당 기법을 통한 메모리 성능 향상 기법)

  • Lim, Yeong-Kyu;Kim, Cheong-Ghil;Kim, Shin-Dug
    • Journal of Digital Contents Society
    • /
    • v.12 no.4
    • /
    • pp.551-557
    • /
    • 2011
  • In this paper, we propose a stack allocation technique of Android Java objects in order to reduce the number of garbage collection which is one of major reason on Android performance degradation when running applications. The proposed technique is to allocate Java objects into stack rather than heap memory. To do so, stacked objects could escape the garbage collection process. We experiment the proposed technique in the latest Android 2.3 version. For the simulation, we take advantage of the well known Java benchmark, Caffeinemark, and our own. The result shows the performance degradation of Dalvik Virtual Machine execution time caused by the stack allocation of Java objects is very slight and the proposed method considerably reduces the frequency of garbage collection. This will increase application performance and give better user interfaces to Android phone users.

An Explicit Free Method for the Garbage Objects in Java-based Embedded System (자바기반 내장형 시스템에서 쓰레기 객체의 명시적 자유화 방법)

  • Bae, Soo-kang;Lee, Sung-young
    • The KIPS Transactions:PartA
    • /
    • v.9A no.4
    • /
    • pp.441-450
    • /
    • 2002
  • As the size of embedded system software increase bigger and bigger, and it's complexity is grower and grower, the usage of dynamic memory management scheme such collector also has been increased. Using the garbage collector, however, inherently lead us performance degradation. In order to resolve this kind of performance problem in the Java based embedded system. we introduce an explicit dynamic memory free method to the automated dynamic memory management environment. which can be performed by a programmer. In the worst case, the prosed scheme shows the same performance as the case of that only garbage collector is working, since the unclaimed garbage objects will eventually be collected later by the garbage collector. In the best case. our method is free from any runtime overhead because the applications can be implemented without any intervention of the garbage collector. Although the proposed method can be facilitated with all the existing garbage collection algorithms, it shows an outperform in the case of mark-and-sweep algorithm.

Efficient Exception Handling in Java Ahead-of-Time Compilation (자바 Ahead-of-Time 컴파일러에서의 효율적인 예외처리 방법)

  • Jung Dong-Heon;Park JongKuk;Lee Jaemok;Bae SungHwan;Moon Soo-Mook
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2005.11a
    • /
    • pp.823-825
    • /
    • 2005
  • 자바는 이식성과 보안의 장점으로 인하여 내장형 시스템에서 널리 사용되고 있으나 인터프리터를 통한 바이트코드의 수행으로 인하여 성능이 저하되는 문제를 포함하고 있다. 이를 해결하기 위한 한 방법으로 수행시간 전에 바이트코드를 기계어 코드로 미리 번역하여 수행시간에는 기계어 코드가 수행되도록 하는 Ahead-of-Time 컴파일러 (AOTC)가 사용되고 있다. 특히 바이트코드를 C코드로 변환한 다음 기존의 컴파일러를 이용하여 기계어 코드를 생성하는 방식을 많이 택하고 있다. 본 논문에서는 AOTC에서 효율적인 예외처리 (exception handling) 기법을 제안한다. 기존의 AOTC 에서는 예외를 발생하는 메쏘드와 예외를 처리하는 메쏘드가 다른 경우 setjmp/longjmp를 이용하여 예외처리를 수행하고 있으나 우리는 메쏘드 호출 후의 예외 검사를 통해 예외처리를 수행한다. 우리는 제안된 예외처리 방법은 Sun의 CDC 가상 머신을 위해 개발된 AOTC 에 구현되었으며 SPECjvm98 벤치마크에서의 실험을 통해 setjmp/longjmp 방식에 비해 $1.3\%$에서 $154\%$까지의 성능향상이 가능함이 확인되었다.

  • PDF

Development of eTV Binary Format Generator for User Interface of Data Broadcasting (데이터 방송의 사용자 인터페이스를 위한 eTV 바이너리 포맷 생성기의 개발)

  • Kim, Young-Keun;Kwon, Hyeok-Ju;Park, Jin-Ki;Lee, Yang-Sun
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2007.05a
    • /
    • pp.1469-1472
    • /
    • 2007
  • 최근의 방송은 A/V 프로그램만을 보내주던 기존의 방송에서 데이터를 연동하여 서비스하는 방송으로 변화하였다. 데이터 방송은 지상파, 위성, 케이블 등의 방송망을 이용하여 하나의 방송사가 다수의 시청자에게 디지털 멀티미디어 콘텐츠를 여러 종류의 단말기에 전송하는 것이다. 이러한 데이터 방송을 통해 시청자가 직간접적으로 프로그램에 참여할 수 있게 된다. 이러한 서비스를 위해 필요한 여러 기술 중에 사용자의 인터페이스를 제공하기 위한 콘텐츠 표현 기술이 필요하다. 대표적인 콘텐츠의 표현 기술은 HAVi UI와 eTV 시스템이 있다. HAVi UI는 자바 컴포넌트 API로 구성되어 있으며 HAVi 컴포넌트 API로 셋톱박스 어플리케이션(Xlet)을 개발한다. 개발된 Xlet 프로그램은 미들웨어 시스템에 탑재된 자바 가상 머신을 통해 실행된다. eTV 시스템은 범용 마크업 언어인 XML로 어플리케이션을 개발한다. 개발된 eTV 어플리케이션은 eTV 바이너리 생성기를 통해 EBIF가 생성되고 셋톱박스에 탑재된 eTV 리시버에서 실행된다. 본 논문에서는 eTV 시스템을 구성하기 위한 구성요소에서 서버 모듈인 eTV 바이너리 포맷 생성기를 개발하였다. eTV 시스템 개발을 통해서 데이터 방송을 위한 사용자 인터페이스의 기능을 확대 할 수 있으며, 시청자의 선택에 따른 방송을 보다 폭 넓게 제공할 수 있다.

  • PDF

Polygon based 3D graphic engine for interactive TV (Interactive TV를 위한 Polygon 기반의 3D Graphic Engine)

  • Kim, Jung-Hwan;Jung, Moon-Ryul
    • Proceedings of the Korean Society of Broadcast Engineers Conference
    • /
    • 2005.11a
    • /
    • pp.243-247
    • /
    • 2005
  • 디지털 방송은 비디오, 오디오와 더불어 데이터를 전송할 수 있다. 데이터 영역에는 셋톱박스(STB)에서 수행되는 애플리케이션(Xlet)이 포함된다. 디지털 방송은 애플리케이션을 이용해 보다 진보된 인터랙티브 프로그램을 제공할 수 있다. 그러나 이러한 인터렉티브 TV에서 3차원 객체의 활용은 아직 여러 제한사항으로 인해 어려움이 있다. 현재 제정된 DVB-MHP, SCTE-OCAP, ATSC-ACAP 등의 데이터 방송 표준은 3D 객체를 표현하기 위한 구체적인 방법을 기술하지 않고 있다. 또한, 상용셋톱박스에 탑재된 자바 가상 머신(Java Virtual Machine)은 3D 객체를 렌더링(Rendering)하기 위한 API를 제공하지 않고 있다. 그리고 이를 위한 별도의 플러그인(Plug-in)도 제공하지 않는다. 본 논문에서는 Interactive TV에서 3차원 객체를 표현하기 위해 필요한 기본개념과 기술 및 데이터 방송 표준을 분석하고, 이들을 통합하여 polygon 기반의 3D Graphic Engine을 제안한다. 특히, 본 논문에서 제안하는 3D Graphic Engine API는 각각의 표준에서 가용한 공통 API를 기반으로 설계 되었으며, Java Virtual Machine 1.1 환경에서 구동될 수 있도록 구현되었다.

  • PDF

Development of a Platform for Partial Discharge On-line Monitoring of Power Apparatus (전력기기 부분방전 온라인 감시를 위한 진단 플랫폼 개발)

  • Jeon, Jin-Hong;Kim, Kwang-Su;Lee, Sang-Hwa;Kim, Kwang-Hwa
    • Proceedings of the KIEE Conference
    • /
    • 2005.07e
    • /
    • pp.91-93
    • /
    • 2005
  • 본 논문에서는 전력기기의 온라인 진단을 위하여 개발된 모니터링 시스템에 대하여 소개하고자 한다. 개발된 진단 플랫폼은 전력기기의 온라인 진단을 위해 측정된 부분방전 신호를 이용하여 진단을 위한 파라미터를 추정하고 추정된 결과를 인터넷을 통해 실시간으로 모니터링 할 수 있도록 제작되었다. 개발된 진단 플랫폼은 연산처리를 위한 DSP 신호처리 부분과 웹서비스를 위한 VM부분으로 구성되어 있다. VM부분은 스트롱암 기반의 플랫폼을 적용하였으며 리눅스 환경에서 자바 가상머신을 이용하여 웹 서비스를 구현하였다. 본 논문에서 제시된 기술은 향후 산업용 장치들의 웹 기반 진단 및 모니터링 기술에 이용될 예정이며 또한 스마트 센서 모듈 및 분산 제어 시스템 모듈 개발에 응용될 수 있다.

  • PDF

Early Null Pointer Check using Predication in Java Just-In-Time Compilation (자바 적시 컴파일에서의 조건 수행을 이용한 비어 있는 포인터의 조기검사)

  • Lee Sanggyu;Choi Hyug-Kyu;Moon Soo-Mook
    • Journal of KIISE:Software and Applications
    • /
    • v.32 no.7
    • /
    • pp.683-692
    • /
    • 2005
  • Java specification states that all accesses to an object must be checked at runtime if object refers to null. Since Java is an object-oriented language, object accesses are frequent enough to make null pointer checks affect the performance significantly. In order to reduce the performance degradation, there have been attempts to remove redundant null pointer checks. For example, in a Java environment where a just-in-time (JIT) compiler is used, the JIT compiler removes redundant null pointer check code via code analysis. This paper proposes a technique to remove additional null pointer check code that could not be removed by previous JIT compilation techniques, via early null pointer check using an architectural feature called predication. Generally, null point check code consists of two instructions: a compare and a branch. Our idea is moving the compare instruction that is usually located just before an use of an object, to the point right after the object is defined so that the total number of compare instructions is reduced. This results in reduction of dynamic and static compare instructions by 3.21$\%$ and 1.98$\%$. respectively, in SPECjvm98 bechmarks, compared to the code that has already been optimized by previous null pointer check elimination techniques. Its performance impact on an Itanium machine is an improvement of 0.32$\%$.

Performance Comparison of Implementation Technologies for Image Quality Enhancement Operations on Android Platforms (Android 플랫폼에서 구현 기술에 따른 화질 개선 연산 성능 비교)

  • Lee, Ju-Ho;Lee, Goo-Yeon;Jeong, Choong-Kyo
    • Journal of Digital Contents Society
    • /
    • v.14 no.1
    • /
    • pp.7-14
    • /
    • 2013
  • As mobiles devices with high-spec camera built in are used widely, the visual quality enhancement of the high-resolution images turns out to be one of the key capabilities of the mobile devices. Due to the limited computational resources of the mobile devices and the size of the high-resolution images, we should choose an image processing algorithm not too complex and use an efficient implementation technology. One of the simple and widely used image quality enhancement algorithms is contrast stretching. Java libraries running on a virtual machine, JNI (Java Native Interface) based native C/C++, and NEONTM SIMD (Single Instruction Multiple Data) are common implementation technologies in the case of Android smartphones. Using these three implementation technologies, we have implemented two image contrast stretching algorithms - linear and equalized, and compared the computation times. The native C/C++ and the NEONTM SIMD outperformed the native C/C++ implementation by 56-78 and 50-76 time faster respectively.

Design and Implementation of JAIN SIP-based Softphone Client (JAIN SIP 기반 소프트폰 클라이언트의 설계 및 구현)

  • Kim, Byung-Ho
    • Journal of the Korea Institute of Information and Communication Engineering
    • /
    • v.12 no.12
    • /
    • pp.2301-2306
    • /
    • 2008
  • SIP(Session Initiation Protocol) has become an universal standard for multimedia communications for both wired and wireless networks since it has been adopted as a standard protocol for IMS platform in 3GPP standardization organization at November 2000. In this paper, we design and implement a SIP-based softphone client program which provides telephony service between internet users and a call center equipped with VoIP gateway. A softphone client based on PC-to-phone connection should guarantee to provide interoperability with various VoIP gateways and higher portability to be able to operate on different PC environments. The softphone client program in this paper has been developed with SIP 2.0 standard protocol to support interoperability and with JAIN SIP and JMF package to achieve higher portability.

Reference Implementation of WIPI Runtime Engine Supporting Multiple Platforms (다중 플랫폼을 지원하는 위피 실행 엔진 참조 구현)

  • Lee, Sang-Yun;Choi, Byung-Uk
    • Journal of the Institute of Electronics Engineers of Korea CI
    • /
    • v.44 no.4 s.316
    • /
    • pp.10-20
    • /
    • 2007
  • In this paper, we propose the reference implementation of WIPI runtime engine supporting various platforms such as REX OS, Qplus and Windows. We describe the architecture of WIPI runtime engine according to each platform, and introduce the method for avoiding repetitive develoment. And we explain the implementation of a linker and a loader on REX OS and describe the runtime engine structure on Qplus, a kind of embedded linux. And we introduce the implementation of the Jlet/MIDlet emulator based on a Java virtual machine and the Clet emulator based on Windows. Finally we verify the interoperability and the perfection of the proposed reference implementation through the result of the HCT and the PCT and the normal operation of the example programs.