Implementation of PersonalJave™ AWT using Light-weight Window Manager

경량 윈도우 관리기를 이용한 퍼스널자바 AWT 구현

  • 김태현 (서울대학교 컴퓨터공학부) ;
  • 김광영 (LG전자 DigitalTV 연구소 ASW그룹) ;
  • 김형수 ((주)네오싸이언) ;
  • 성민영 (서울대학교 컴퓨터공학부) ;
  • 장래혁 (서울대학교 컴퓨터공학부) ;
  • 신현식 (서울대학교 컴퓨터공학부)
  • Published : 2001.06.01

Abstract

Java is a promising runtime environment for embedded systems because it has many advantages such as platform independence, high security and support for multi-threading. One of the most famous Java run-time environments, Sun's ($PersonalJave^{TM}$) is based on Truffle architecture, which enables programmers to design various GUIs easily. For this reason, it has been ported to various embedded systems such as set-top boxes and personal digital assistants(PDA's). Basically, Truffle uses heavy-weight window managers such as Microsoft vVin32 API and X-Window. However, those window managers are not adequate for embedded systems because they require a large amount of memory and disk space. To come up with the requirements of embedded systems, we adopt Microwindows as the platform graphic system for Personal] ava A WT onto Embedded Linux. Although Microwindows is a light-weight window manager, it provides as powerful API as traditional window managers. Because Microwindows does not require any support from other graphics systems, it can be easily ported to various platforms. In addition, it is an open source code software. Therefore, we can easily modify and extend it as needed. In this paper, we implement Personal]ava A WT using Microwindows on embedded Linux and prove the efficiency of our approach.

자바는 플랫폼 독립성, 높은 보안성, 멀티쓰레드 지원 등의 다양한 장점을 가지고 있어서 내장형 시스템을 위한 실행 환경으로 기대를 모으고 있다. 널리 쓰이고 있는 자바 수행 환경 중 하나인 Sun사의 퍼스널자바 ($PersonalJave^{TM}$)는 다양한 GUI를 쉽게 생성할 수 있도록 Truffle이라는 AWT 구조를 제공하고 있어서 셋톱박스나 PDA 등의 다양한 내장형 시스템에 활발히 이식되고 있다. 기본적으로 Truffle은 기존의 마이크로소프트 Win32 API나 X 윈도우 API를 기반으로 하고 있다. 그러나, 이러한 윈도우 관리기들은 많은 양의 디스크나 메모리 공간을 요구하므로 시스템 자원이 한정된 내장형 시스템에는 적합하지 않다. 본 연구에서는 내장형 시스템의 요구조건을 만족시킬 수 있도록 내장형 리눅스 상에서 경량 윈도우 관리기인 마이크로윈도우즈(Microwindows)를 플랫폼 그래픽 시스템으로 채택하고 퍼스널자바 AWT API를 구현하였다. 마이크로윈도우즈(Microwindows)는 경량이면서도 기존의 윈도우 관리기들과 유사한 기능을 제공하며, 별도의 그래픽 시스템 지원을 필요로 하지 않아서 다양한 플랫폼 상에 쉽게 이식될 수 있다. 또한, 소스 코드가 공개되어 있어서 응용에 따라 수정 및 확장이 용이하다. 본 연구에서는 내장형 리눅스 상에서 동작하는 마이크로윈도우즈를 이용하여 퍼스널자바 AWT를 구현하였으며 다양한 응용프로그램을 이용하여 그 효용성을 입증하였다.

Keywords

References

  1. Sun Microsystems Inc. The Java Language Environment : A White Paper. 1995
  2. Personal Java, http://java.sun.com/products/personaljava/index.html
  3. Truffle Graphical Toolkit Customization Guide, http://java.sun.com/products/personaljava/truffle/index.html
  4. Personal JWorks, http://www.windriver.com/products/html/persjwks_ds.html
  5. Greg Haerr, Microwindows Architecture, http://microwindows.censoft.com/microwindows_architecture.html. 2000
  6. 강경태, 김태웅, 박상수, 신현식, 장래혁, 'Power PC에 기반한 내장형 시스템을 위한 리눅스의 이식', 한국정보과학회 27회 추계학술발표회, 2000년 10월
  7. Frequently Asked Questions about $PersonalJava^{TM}$ Technology, http://java.sun.com/products/personaljava/faq.html