• 제목/요약/키워드: 자바가상머신

검색결과 102건 처리시간 0.032초

컴포넌트 기반 파이프라인 자바가상머신 인터프리터 설계 (Design of Pipelined Java Virtual Machine Interpreter Based on Component)

  • 한상만;이승룡
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2002년도 추계학술발표논문집 (하)
    • /
    • pp.2095-2099
    • /
    • 2002
  • 최근 자바가상머신 인터프리터의 성능 개선을 위하여 파이프라이닝 기법에 대한 연구가 활발히 진행중이다. 반면, 내장형 시스템 환경에서는 급변하는 시장의 적시성 요구(time-to-market)와 저렴한 비용으로 다양한 사용자 요구사항을 효율적으로 반영하기 위하여 재구성 가능한 컴포넌트기반 소프트웨어 개발 방법이 점점 주목받고 있다. 따라서, 본 논문에서는 자바환경을 지원하는 내장형 시스템에 적합한 가상머신 인터프리터를 개발하기 위해, 재구성과 융통성을 제공하기 위한 컴포넌트기반 소프트웨어 개발 방법과, 성능향상을 위하여 파이프라이닝 기법을 혼합한 새로운 설계 기법을 소개한다.

  • PDF

자바 가상 머신에서 클래스 로딩에 관한 연구 (A Study on Class Loading in Java Virtual Machine)

  • 김기태;이갑래;유원희
    • 한국콘텐츠학회논문지
    • /
    • 제3권2호
    • /
    • pp.39-45
    • /
    • 2003
  • 자바의 동적인 클래스 로딩은 자바 플랫폼에서 실행시간에 소프트웨어 컴포넌트를 동적으로 로딩하기 위한 강력한 메커니즘이다. 다른 시스템에서도 동적 로딩과 링킹을 제공하지만 지연 로딩, 타입안전 링크, 사용자 정의 로딩정책, 다중 이름 공간 등은 자바가 가진 중요한 특징들이다. 클래스 로딩에서 핵심은 타입 안전을 보장하는 것이다. 타입 안전은 자바 보안에서 아주 중요한 부분을 차지한다. 하지만 자바 가상 머신에서 타입 안전에 대한 메커니즘은 매우 복잡하고, 접근이 명확하지 않아서 지금 까지 많은 버그가 발생하여 타입 안전에 문제가 되었다. 본 논문은 자바 가상 머신에서 동적인 클래스 로더의 동작을 분석하고, 연산적 의미론(operational semantics)으로 추상화하고 현재 로드되어진 클래스와 추가된 제한 등을 이용하여 이전에 제시되었던 타입 안전에 대한 문제를 분석한다.

  • PDF

자바 가상 머신에서 클래스 로딩에 관한 연구 (A Study on Class Loading in Java Virtual Machine)

  • 김기태;이갑래;유원희
    • 한국콘텐츠학회:학술대회논문집
    • /
    • 한국콘텐츠학회 2003년도 춘계종합학술대회논문집
    • /
    • pp.171-176
    • /
    • 2003
  • 클래스 로딩에서 핵심은 타입 안전을 보장하는 것이다. 타입 안전은 자바 보안에서 아주 중요한 부분을 차지한다. 하지만 자바 가상 머신에서 타입 안전에 대한 메커니즘은 매우 복잡하고, 접근이 명확하지 않아서 지금 까지 많은 버그가 발생하여 타입 안전에 문제가 되었다. 본 논문은 자바 가상 머신에서 동적인 클래스 로더의 동작을 분석하고, 연산적 의미론(operational semantics)으로 추상화하고 현재 로드되어진 클래스와 추가된 제한 등을 이용하여 이전에 제시되었던 타입 안전에 대한 문제를 분석한다.

  • PDF

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

  • 배수강;이승룡;전태웅
    • 한국정보과학회논문지:소프트웨어및응용
    • /
    • 제30권1_2호
    • /
    • pp.58-72
    • /
    • 2003
  • 자바 언어에서 new라는 키워드로 생성된 객체들은 C나 C++언어에서의 free 또는 delete와 같은 키워드를 사용하지 않고 자바가상머신의 쓰레기 수집기에 의하여 자동적으로 관리 (유지 또는 제거) 되어진다. 따라서. 응용프로그래머는 메모리 관리에 대한 부담을 전혀 가지지 않고 프로그래밍을 할 수 있다는 장점이 있다. 그러나, 쓰레기 수집기는 자체 실행시간 오버헤드로 인하여 자바가상머신의 성능을 저하시킨다. 이러한 점을 개선하기 위하여, 본 논문에서는 쓰레기 수집기를 사용하는 자바환경에서 프로그래머가 최소한의 프로그래밍 오버헤드를 가지고 명시적으로 객체를 수거함으로 쓰레기 수집기의 실행시간 오버헤드를 줄일 수 있는 방안을 제시한다. 이를 위하여, 제안된 기법에서는 자바 어플리케이션이 순수 자바로 자성된 API를 호출하고, 이것이 다시 가상머신의 종속적인 루틴을 호출함으로써 자바가 가지는 이식성을 그대로 유지하도록 하였다. 다시 말하면 어플리케이션 수행의 안정성은 유지하면서 프로그래머가 단순히 API만을 호출함으로 자바가상머신의 성능향상을 이룰 수 있게 하였다. 마크-수거(Mark-and-Sweep) 알고리즘에 제안한 방법을 적용한 결과 쓰레기 수집기만으로 작동되는 경우의 객체수거 시간에 비해 최저 10%에서 최고 52% 이상의 수행시간 향상을 보였다.

자바가상머신에서 다차원 배열의 효율적인 접근과 성능 개선 (Efficient Access and Performance Improvement of Multi-Dimensional Array in Java Virtual Machine)

  • 이지현;원희선;문경덕;김영국
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2003년도 춘계학술발표논문집 (중)
    • /
    • pp.1457-1460
    • /
    • 2003
  • 자바는 플랫폼에 독립적인 실행을 위해서 바이트코드를 사용하며, 자바가상머신에서 바이트코드를 해석하여 실행시키는 인터프리터 방식을 취하고 있으므로 느린 실행 시간을 갖는다. 이와 같은 느린 실행 시간에 영향을 주는 요인 중의 하나로써 다차원 배열(Multi-dimension Array)에 접근(Acess)할 때 비효율적인 방법으로 실행되는 것을 개선할 필요가 있다. 자바가상머신에서 오브젝트와 배열은 레퍼런스에 의해서 접근되어지고, 특히 다차원 배열은 배열 안에 또 다른 배열이 들어있는 자료구조를 취하기 때문에 다차원 배열의 크기가 커질수록 하나의 원소에 접근할 때 발생되는 레퍼런스(Reference)의 횟수가 많아질수록 성능 저하를 유발한다. 본 논문에서는 다차원 배열에 효율적으로 접근하기 위한 새로운 배열의 자료 구조를 제시하고, 다차원 배열에 접근하는 여러 개의 바이트코드 대신 이런 자료구조에 접근할 수 있는 새로운 바이트코드를 정의 및 구현하였다. 그리고 이를 실제 클래스파일에 적용하고, 간단한 성능 평가를 통해서 성능 개선 효과를 확인할 수 있다.

  • PDF

자바 Core API 변경 기반의 보안 체크 디버깅 환경 구축 (Constructing a security check debugging environment by modifying JAVA Core API)

  • 박철우;박효성;김기창
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2013년도 추계학술발표대회
    • /
    • pp.640-643
    • /
    • 2013
  • 자바의 가상머신(Virtual Machine)은 보안관리자(Security Manager)를 이용하여 악의적인 목적을 가진 프로그램으로부터 시스템을 보호한다. 하지만 최근에 자바 애플릿(Java Applet)을 통해 자바 API의 취약점을 이용한 시스템 공격 방법들이 공개되면서 자바 보안의 중요성이 높아지고 있다. 본 연구에서는 자바 보안관리자를 우회하는 자바 코드의 작동 원리를 분석하기 위한 기존의 디버깅 환경을 개선하기 위한 방안으로 자바 가상머신에서 사용되는 Core API 의 코드를 수정하고 새로운 API를 추가하였다. 이를 통해 보안 관련 문제로 인한 디버깅의 효율성과 편의성을 높였으며 본 연구가 자바 보안 문제를 해결하는데 기여 할 수 있기를 바란다.

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

  • 최찬우;이철훈
    • 한국콘텐츠학회:학술대회논문집
    • /
    • 한국콘텐츠학회 2007년도 추계 종합학술대회 논문집
    • /
    • pp.812-816
    • /
    • 2007
  • IT 산업이 빠르게 발전하면서 리소스가 제한된 셋탑박스와 스마트폰 같은 중소형 디바이스의 사용이 비약적으로 증가하는 추세이다. 자바는 플랫폼 독립성(Platform Independency), 보안성(Security), 이동성(Mobility) 등의 장점을 가지고 있기 때문에 안정된 서비스를 제공해야 하는 중소형 디바이스들에게 중요한 핵심 소프트웨어 플랫폼이 되어가고 있다. 이러한 디바이스에서 자바애플리케이션을 실행하기 위해서는 자바가상머신(Java Virtual Machine)이 필요하다. C 가상 머신(Classic Virtual Machine : CVM)은 리소스가 제한된 임베디드 디바이스를 위해 고안된 자바가상머신이다. 본 논문에서는 실시간 운영체제 UbiFOS$^{TM}$상에 CDC(Connected Device Configuration) 에서 정의하고 있는 CVM을 설계 및 구현하였다.

  • PDF

모바일 응용을 위한 자바 하드웨어 가속기의 설계 (Design of lava Hardware Accelerator for Mobile Application)

  • 최병윤;박영수
    • 한국정보통신학회논문지
    • /
    • 제8권5호
    • /
    • pp.1058-1067
    • /
    • 2004
  • 자바 가상 기계는 모바일 및 내장형 제어 디바이스와 같은 소형 디바이스에 적합한 간결한 코드, 단순한 수행 동작, 플랫폼 독립성의 특성을 제공하지만, 스택 기반 동작에 기인한 낮은 연산 효율이 라는 큰 문제점을 갖고 있다. 본 논문에서는 이러한 낮은 동작 속도 문제를 제거하여, 모바일 및 내장형 제어 분야용 자바 가속기를 설계하였다. 설계된 자바 가속기는 자바 가상머신 명령어 코드 중 81개를 구현하며, 효율적인 보조 프로세서 인터페이스와 명령어 버퍼를 사용하여 기존 32-비트 RISC 프로세서에 자바 보조 프로세서로 활용될 수 있도록 하였다. 자바 가속기는 14,300개의 게이트로 구성되며, 0.35um CMOS 공정 조건에서 약 50 Mhz의 동작 주파수를 갖는다.

내장형 자바 시스템을 위한 클래스파일의 프리레졸루션 (Glass File Pre-Resolution for Embedded Java System)

  • 강두진;맹혜선;이영민;한탁돈;김신덕
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 1999년도 가을 학술발표논문집 Vol.26 No.2 (1)
    • /
    • pp.385-387
    • /
    • 1999
  • 내장형 기기에서 자바를 제어 및 응용 프로그램으로 사용하는 경향이 증대하고 있다. 내장형 자바가상머신에서는 응용 프로그램과 관련 자바 API를 로딩된 형태로 롬에 적재하는 형태를 가진다. 따라서 응용프로그램은 필터링을 거쳐서 관련된 자바 API를 선별한 후 롬릿으로 만들어진다. 본 논문에서는 내장형 자바가상머신에 적재될 롬릿을 만드는 과정에서 사용될 수 있는 프리레졸루션 방법을 제시하고 이를 위한 컨스턴트풀 데이터 구조를 제안하였다. 프리레졸루션은 롬릿을 만드는 과정에서 미리 레졸루션을 수행한 결과를 저장하여, 실행 시 발생되는 레졸루션 시간을 제거할 수 있도록 한다. 또한 프리레졸루션은 메모리 접근 횟수를 감소시켜 내장형 기기에서 필요한 저전력 요구를 지원한다. 본 논문에서 제안한 컨스턴트풀 데이터 구조는 공용체 구조의 미사용 부분에 레졸루션 결과를 저장할 수 있도록 구성함으로써 추가적인 메모리 비용없이 프리레졸루션의 이득을 얻을수 있다.

  • PDF

non-Java디바이스를 위한 Jini-SNMP의 설계 및 구현 (Design and Implementation of Jini based SNMP system for non-Java device)

  • 손상혁;이성동;김원태;안광선
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2001년도 가을 학술발표논문집 Vol.28 No.2 (3)
    • /
    • pp.232-234
    • /
    • 2001
  • 네트워크 관리에 있어서 Jini 기반의 SNMP 관리 구조는 Java의 장점을 수용하면서 더 많은 특징을 제공한다. 우선 Jini의 네트워크 플러그 앤 플레이 특징을 이용하여 관리자가 명시적으로 관리하고자 하는 대상을 지정할 필요가 없이 자동적으로 인식할 수 있다 그리고 리스와 원격 이벤트를 사용하기 때문에 폴링으로 인한 자원의 낭비를 막을 수 있다 하지만 Jini 기반의 네크워크 관리 구조는 자바 가상 머신을 탑재한 Java 디바이스만을 대상으로 하고 자바 가상 머신을 가지지 않는 non-Java 디바이스를 고려하지는 않는다. 이미 개발된 기존의 시스템이나 시스템 자원의 부족으로 자바 가상 머신을 탑재하지 못하는 시스템까지도 수용할 수 있어야 한다. 따라서 이 논문에서는 non-Java 디바이스까지 수용할 수 있는 Jini 기반의 SNMP 시스템을 설계 하고 구현한다.

  • PDF