KR20040065833A - Thin client system and method for transmitting an off-screen image of applets running between internet hosts and mobile devices over wireless data network - Google Patents

Thin client system and method for transmitting an off-screen image of applets running between internet hosts and mobile devices over wireless data network Download PDF

Info

Publication number
KR20040065833A
KR20040065833A KR1020030003021A KR20030003021A KR20040065833A KR 20040065833 A KR20040065833 A KR 20040065833A KR 1020030003021 A KR1020030003021 A KR 1020030003021A KR 20030003021 A KR20030003021 A KR 20030003021A KR 20040065833 A KR20040065833 A KR 20040065833A
Authority
KR
South Korea
Prior art keywords
client
server
applet
screen
image data
Prior art date
Application number
KR1020030003021A
Other languages
Korean (ko)
Inventor
정연억
Original Assignee
정연억
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 정연억 filed Critical 정연억
Priority to KR1020030003021A priority Critical patent/KR20040065833A/en
Publication of KR20040065833A publication Critical patent/KR20040065833A/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

PURPOSE: An applet execution image transmitting method and system is provided to display a GUI(Graphic User Interface) image of a JAVA applet, executed at a server, on a wireless terminal. CONSTITUTION: The method comprises several steps. Data on a screen size and a color model of a wireless terminal, where an applet is executed, is transmitted from the wireless terminal located at a remote place(S12). A virtual graphic device, having an environment of the same as the screen size and the color model, is generated(S13). Screen image data to be buffered at a memory of the virtual graphic device is obtained(S14-S17). The image data is transmitted to the wireless terminal over a network(S18). The data on a user event transmitted by the wireless terminal is analyzed and returned to the applet(S19).

Description

가상장치를 통한 서버 무선단말기간의 애플릿의 실행 이미지 전송방식에 관한 방법 및 시스템{Thin client system and method for transmitting an off-screen image of applets running between internet hosts and mobile devices over wireless data network}Thin client system and method for transmitting an off-screen image of applets running between internet hosts and mobile devices over wireless data network}

본 발명은 화면 입출력 정보만을 전송하는 씬 클라이언트 시스템 및 그 방법에 관한 것으로, 더욱 상세하게는 서버측에서 실행되는 자바 애플릿의 GUI 화면 이미지 데이터를 무선단말기 기반의 클라이언트에 그대로 보여주는 것을 요지로 하는 씬 클라이언트의 시스템 및 그 방법에 관한 것이다.The present invention relates to a thin client system and method for transmitting only screen input / output information. More particularly, the present invention relates to a thin client, which is intended to show GUI screen image data of a Java applet executed on a server side to a client based on a wireless terminal. The system and method thereof.

초기의 컴퓨팅 환경은 하나의 메인프레임(mainframe) 컴퓨터에 단순한 입출력 장치를 가진 더미 터미널(dummy terminal)들이 연결되는 중앙 집중식이었다. 그 후 데스크탑, 랩탑, 노트북 등과 같은 일반의 PC가 등장하게 되었고, 사용자들은 GUI(Graphic User Interface)에 익숙해지면서 PC측에서 여러 가지 작업을 수행하는 것이 일반화되었다. PC의 사용자 층이 더욱 확대되고 수행하는 작업이 고도화되었고 근래에는 클라이언트/서버 모델의 네트워크 개념이 도입되어 광범위한 분야에서 시스템이 구축되었다.Early computing environments were centralized, with one mainframe computer connected to dummy terminals with simple inputs and outputs. Since then, general PCs such as desktops, laptops, notebooks, etc. have emerged. As users become familiar with the GUI (Graphic User Interface), it is common to perform various tasks on the PC side. The PC user base has been expanded and the work done has been advanced, and the network concept of the client / server model has been recently introduced to build a system in a wide range of fields.

그러나 이 같은 발전과 더불어 PC의 관리를 포함한 전체 비용(TCO: Total Cost of Ownership)의 증가가 큰 문제로 대두되었다. 즉, PC 하드웨어의 가격은 비교적 저렴하지만 운영체계(OS)와 응용프로그램의 설치, 셋업, 업그레이드에 드는 사용자의 부담이 가중되었다. 또한 하드웨어의 고장, 바이러스 감염 등 운영상의 문제가 그 PC를 사용하던 사용자를 비롯해 주위의 다른 사람들의 시간 및 노력의 손실을 초래하게 되었다.However, with these developments, the increase in total cost of ownership (TCO), including the management of PCs, has become a big problem. In other words, the price of PC hardware is relatively low, but the burden on users to install, set up, and upgrade operating systems and applications is increased. In addition, operational problems, such as hardware failures and virus infections, have resulted in loss of time and effort by users, including those who used the PC.

이러한 문제점의 해결 방안으로 근래에는 씬 클라이언트 개념이 등장하였다. 씬 클라이언트는 모든 어플리케이션을 100% 서버에서 실행하고, 클라이언트는 단지 서버의 실행 결과만을 보여주고 키보드, 마우스 등의 사용자 입력 수단만을 제공하는 단순한 터미널 역할을 수행하도록 하는 것이다. 따라서 새 어플리케이션을 도입하여 사용하고자 할 때 서버에만 설치하면 서버와 연계된 모든 클라이언트에서는 상기 어플리케이션의 사용이 가능하여 클라이언트에는 별도로 설치할 필요가 없다. 새 어플리케이션을 도입함으로 인해 클라이언트의 하드웨어 사양을 업그레이드 시킬 필요가 없고, 소프트웨어 배포나 설치에 신경 쓸 필요가 없어 클라이언트 가격 및 유지 보수 비용의 절감, 데이터 백업 및 관리의 용이성 등의 여러 장점을 갖는다.Recently, a thin client concept has emerged as a solution to this problem. The thin client runs all applications on a 100% server, and the client acts as a simple terminal that only shows the server's execution results and provides a means of user input, such as a keyboard or mouse. Therefore, if you want to introduce and use a new application and install only on the server, all the clients associated with the server can use the application and do not need to install separately on the client. The introduction of new applications eliminates the need to upgrade the client's hardware specifications and eliminates the need to worry about software deployment or installation, resulting in lower client prices, lower maintenance costs, and easier data backup and management.

씬 클라이언트 개념에 따른 하드웨어 구상으로는 오라클사와 선 마이크로시스템사 등이 개발한 네트워크 컴퓨터(NC), 인텔사와 마이크로소프트사 등이 개발한 넷 PC 등이 있으나 시장에서 각광을 받지 못하였다.Hardware initiatives based on the thin client concept include network computers (NCs) developed by Oracle and Sun Microsystems, and net PCs developed by Intel and Microsoft, but have not received much attention in the market.

기존의 하드웨어를 그대로 사용한 소프트웨어를 통한 구현으로는 유닉스의 사실상의 표준 윈도 시스템인 X 윈도 시스템(X Window System), 시트릭스(Citrix) 사의 ICA(Independent Computing Architecture), 마이크로소프트사의 Terminal Service 등이 있다.Software implementations using existing hardware intact include Unix's de facto standard Windows system, the X Window System, Citrix's Independent Computing Architecture (ICA), and Microsoft's Terminal Services.

이중에서, ICA, Terminal Service는 도 1에서 도시된 바와 같이 서버(200)의 그래픽 화면의 전체 또는 일부를 그대로 클라이언트(100)에 전송하고(300), 클라이언트에서의 사용자 입력을 다시 서버로 전송한다는(400) 점에서 유사성을 가지고 있다. 즉, 화면 이미지 데이터 전송 방식의 씬 클라이언트 구현이라고 할 수 있다.Among them, as shown in FIG. 1, the ICA and the Terminal Service transmit all or part of the graphic screen of the server 200 to the client 100 as it is (300), and transmit user input from the client back to the server. (400) has similarities. That is, the thin client implementation of the screen image data transmission method.

최근에는 무선 인터넷으로 연결된 휴대전화(100c)나 PDA(100b) 등의 무선 단말장치(Mobile device)가 씬 클라이언트로 사용될 수 있게 되면서 상기와 같은 화면 이미지 데이터 전송 방식의 씬 클라이언트 기술은 그 적용성이나 활용성이 크게 증대되었다. 이는 컴포넌트 기반의 클라이언트/서버 기술이 다양한 플랫폼을 가진 무선 단말장치들에 표준화되어 적용되기 어렵고, 화면 정보를 전송하기는 하지만 화면 이미지 데이터를 그대로 전송하는 방식이 아닌 씬 클라이언트에 비해 임의의 접속끊기 및 재접속이 서버에서의 세션의 상태(state)에 영향을 거의 미치지 않는다는 데에 기인한다.Recently, a wireless device such as a mobile phone (100c) or a PDA (100b) connected to the wireless Internet can be used as a thin client. As such, the thin client technology of the screen image data transmission method is applicable. Usability has been greatly increased. It is difficult to apply component-based client / server technology to wireless terminal devices with various platforms, and it is difficult to apply random disconnection and disconnection compared to the thin client. This is due to the fact that reconnection has little effect on the state of the session at the server.

그러나 상기ICA와 Terminal Service는 공통적으로 멀티 유저 시스템으로의 사용 또는 무선 단말장치를 클라이언트로 사용하기에는 다음과 같은 제약을 가지고 있다.However, the ICA and the terminal service have the following limitations in common to use a multi-user system or to use a wireless terminal as a client.

첫째, 운영체계 레벨에서 그래픽 연산을 가로채므로 특정 운영체계에 의존적이다. 모두 마이크로소프트의 윈도 운영체계 상에서만 동작이 가능하고 타 운영체계로의 이식이 불가능하다.First, it intercepts graphical operations at the operating system level and thus depends on the specific operating system. All work only on Microsoft's Windows operating system and are not portable to other operating systems.

둘째, 사용자의 응용프로그램을 별도의 프로세스로 동작시키기 때문에 서버의 자원을 많이 사용한다. 따라서 멀티 유저 서버 시스템으로의 사용이 어렵거나 제한적이다.Second, it uses a lot of server resources because it runs the user's application as a separate process. Therefore, use as a multi-user server system is difficult or limited.

셋째, 클라이언트가 특정 디스플레이 환경에 제한적이다. 윈도 운영체계의 선택적인 화면 크기와 색상을 지원하지 않는 클라이언트 단말, 특히 상이한 그래픽 환경을 가진 무선 단말장치들이 클라이언트로 사용되기 어렵다.Third, the client is limited to a particular display environment. Client terminals that do not support the optional screen size and color of the Windows operating system, particularly wireless terminals with different graphics environments, are difficult to use as clients.

한편 1996년 선 마이크로시스템사(Sun Microsystems)가 소개한 자바(Java)는 가상 머신 상에서 실행되어 플랫폼(운영체계 및 하드웨어 아키텍처)과 무관한 응용프로그램의 개발 도구로 각광을 받고 있다.Introduced by Sun Microsystems in 1996, Java runs on virtual machines and is emerging as a development tool for applications that are independent of the platform (operating system and hardware architecture).

자바 애플릿은 GUI 구축을 위한 클래스들의 모임이라고 할 수 있는 AWT(Abstract Window Toolkit)의 컴포넌트들로 구성되고, 웹 상에서 웹 페이지에 포함되어 다운로드 되어질 수 있도록 만들어진 작은 자바 프로그램이다.Java applets are small Java programs that are made up of components of the Abstract Window Toolkit (AWT), a collection of classes for building GUIs, and can be downloaded and included in web pages on the Web.

애플릿은 정적인 웹 문서에 동적인 프로그램을 실현시킴으로써 주목을 받은 한편, 또한 클라이언트 컴퓨터 설치 비용을 줄인다. 즉 애플릿을 이용하면, 클라이언트와 서버 구성 요소 모두가 서버 머신에만 설치되면 되고 클라이언트 구성 요소는 필요할 때 서버로부터 클라이언트 컴퓨터로 다운로드 되어, 클라이언트에 별도로 설치될 필요가 없다.Applets are attracting attention by enabling dynamic programs on static Web documents, while also reducing the cost of installing client computers. In other words, with an applet, both client and server components need only be installed on the server machine, and client components are downloaded from the server to the client computer when needed, and do not need to be installed separately on the client.

그러나 애플릿은 웹 브라우저를 통해서만 다운로드 되어 실행되는 것이 가능하다. 즉, 무선 단말장치와 같이 웹 브라우저가 없거나 그 기능이 제한적인 클라이언트 환경에서는 애플릿을 사용할 수 없는 한계가 있다.However, applets can only be downloaded and run through a web browser. That is, there is a limitation that applets cannot be used in a client environment in which there is no web browser or a limited function thereof, such as a wireless terminal device.

따라서 본 발명은 자바 애플릿을 어플리케이션으로 사용하여 무선단말기로 그 실행 화면을 전송하는 씬 클라이언트 시스템 및 방법을 제공함을 목적으로 한다.Accordingly, an object of the present invention is to provide a thin client system and method for transmitting an execution screen to a wireless terminal using a Java applet as an application.

본 발명은 또한 상기 씬 클라이언트 시스템에 있어, 자바애플릿을 이용하여 다양한 플랫폼의 무선 단말기를 클라이언트로 사용할 수 있고, 멀티 유저(Multi-user) 기능을 갖는 서버 장치 및 방법을 제공함을 목적으로 한다.Another object of the present invention is to provide a server apparatus and method for using a mobile terminal of various platforms as a client and having a multi-user function in the thin client system.

도 1은 씬 클라이언트/서버 환경 및 전송되는 데이터의 내용을 도시한 도면1 illustrates a thin client / server environment and the contents of data to be transmitted;

도 2은 본 발명에 따른 클라이언트-서버간 데이터 전송 플로우 및 각각의 내부 처리 과정을 도시한 도면2 is a diagram illustrating a client-server data transmission flow and respective internal processing according to the present invention.

도 3는 본 발명에 따른 씬 클라이언트 장치의 내부 블록도3 is an internal block diagram of a thin client device in accordance with the present invention;

본 발명은 자바의 AWT(Abstract Window Toolkit) 패키지에서 제공하는 기능을 이용한다. AWT 패키지는 자바 응용프로그램 또는 애플릿의 GUI 구축을 위해 사용되는 클래스(class)들의 모임이다.The present invention utilizes the functionality provided by the Abstract Window Toolkit (AWT) package of Java. The AWT package is a collection of classes used for building GUIs of Java applications or applets.

상기 기술한 바와 같이 애플릿은 AWT 컴포넌트로 GUI를 작성하고 웹을 통해 원격의 브라우저에 전송되어 실행되는 자바 응용프로그램이다. 원격의 브라우저는 웹 페이지에서 애플릿을 추출하여 실행을 위해 자바 가상 머신으로 보낸다. 애플릿은 자바 가상 머신 상에서 실행되는 것이고, 자바 가상 머신이 설치된 어느 머신 상에서도 실행이 가능하다.As described above, an applet is a Java application that creates a GUI with AWT components and sends it to a remote browser via the web for execution. The remote browser extracts the applet from the web page and sends it to the Java virtual machine for execution. Applets run on the Java virtual machine and can run on any machine that has a Java virtual machine installed.

본 발명은 애플릿의 실행을 서버가 담당하고, 그 실행된 결과의 GUI 화면의 이미지 데이터만을 클라이언트에 전송한다는 점에서 클래스를 다운로드하여 클라이언트(웹 블라우저)에서 실행하는 기존의 방식과 근본적인 차이를 가진다.The present invention is fundamentally different from the existing method of downloading a class and executing it in the client (web browser) in that the server is responsible for executing the applet and transmits only the image data of the GUI screen of the executed result to the client. .

또한 본 발명은 애플릿의 실행 시, 실행되는 머신의 운영체계(OS)와 물리적인 그래픽 장치에 영향을 받지 않도록 가상의 그래픽 디바이스를 생성하고, 그 디바이스의 그래픽 객체를 사용해 GUI 화면을 그리는 것에 그 기술적 요지가 있다.In addition, the present invention is to create a virtual graphics device so as not to be affected by the operating system (OS) and the physical graphics device of the machine running the applet, and to draw a GUI screen using the graphics object of the device There is a gist.

상기 가상의 그래픽 디바이스는 클라이언트 단말에서 보여질 화면 크기와 색상 모델(Color model)과 동일하게 구성된다. 따라서 상기 가상의 디바이스의 그래픽 객체를 사용한 애플릿의 GUI 화면은 클라이언트 단말에서 그대로 보여질 수 있다. 이는 다양한 플랫폼의 클라이언트 무선단말기가 본 발명이 제공하는 시스템의 클라이언트 장치로 사용될 수 있다는 의미를 가진다.The virtual graphic device is configured to have the same screen size and color model as seen on the client terminal. Therefore, the GUI screen of the applet using the graphic object of the virtual device can be seen as it is in the client terminal. This means that the client radio terminal of various platforms can be used as the client device of the system provided by the present invention.

상기 가상의 그래픽 디바이스는 자바 어플리케이션 수준에서 생성하는, 메모리 상에 존재하는 버퍼링(buffering) 된 이미지로, 물리적인 그래픽 화면에 보여질 필요가 없다. 이는 다수의 클라이언트 세션이 요청한 애플릿 실행을 처리함에 있어 운영 체계나 그래픽 장치에 완전히 비의존적이고 메모리를 포함한 시스템 자원의 사용이 최소화 됨을 의미한다. 상기 어플리케이션 수준에서 메모리 상에만 존재하는 가상의 그래픽 디바이스의 생성은 자바의 AWT 패키지의 기능을 통해 구현이 가능하다.The virtual graphics device is a buffered image existing in memory created at the Java application level and does not need to be displayed on a physical graphic screen. This means that multiple client sessions are completely independent of the operating system or graphics device in processing the requested applet execution and minimize the use of system resources, including memory. The creation of a virtual graphics device that exists only in memory at the application level can be implemented through a function of Java's AWT package.

상기 다수의 클라이언트 세션이 요청하는 애플릿의 실행과 관련된 가상의 그래픽 디바이스 생성은 모두 자바 어플리케이션 수준에서 이루어지고, 하나의 자바 가상 머신 상에서 이루어진다. 이는 본 발명에서 제공하는 서버 장치가 멀티 유저 기능을 갖게 한다. 즉, 시스템 자원이 허락되는 한 다수의 클라이언트 세션을 생성할 수 있고, 이것은 운영체계 수준에서의 클라이언트 세션 수의 제한을 가지는 기존의 씬 클라이언트 시스템들과의 차이점이다.The virtual graphics device creation associated with the execution of the applet requested by the multiple client sessions is all done at the Java application level and on a single Java virtual machine. This allows the server device provided by the present invention to have a multi-user function. That is, it is possible to create as many client sessions as long as system resources are allowed, which is different from existing thin client systems that have a limitation of the number of client sessions at the operating system level.

이하에서는 본 발명의 실시 예를 첨부된 도면을 참조로 하여 상세히 설명한다.Hereinafter, with reference to the accompanying drawings an embodiment of the present invention will be described in detail.

도 2는 본 발명에 따른 클라이언트(100)-서버(200)간 데이터 전송 플로우(flow) 및 각 단계에서의 내부 처리 과정을 도시한 도면이다. 먼저, S10에서 클라이언트-서버간의 접속이 이루어진다. 이 단계에서 서버는 클라이언트 세션을 생성하고, 필요한 자원(Resource)을 할당한다.FIG. 2 is a diagram illustrating a data transmission flow between a client 100 and a server 200 and an internal processing procedure in each step according to the present invention. First, a client-server connection is made in S10. In this step, the server creates a client session and allocates the necessary resources.

다음에 클라이언트는 S11에서 자신의 화면 디스플레이 장치에서 보여줄 애플릿의 크기와 색상 모델을 결정하고, S12 단계에서 서버에 전달한다. S11 단계는 상기 클라이언트-서버 접속 단계(S10)의 이전에 이루어져도 상관없다.Next, in step S12, the client determines the size and color model of the applet to be displayed on its screen display device, and delivers it to the server. The step S11 may be performed before the client-server connection step S10.

서버는 S13 단계에서 클라이언트의 애플릿 크기 및 색상 모델과 동일한 환경의 가상의 그래픽 디바이스를 생성한다. 가상의 그래픽 디바이스는 상기 기술한 바와 같이 메모리상에 버퍼링된 이미지이다. S14 단계에서는 S13 단계에서 생성한 가상의 그래픽 디바이스의 그래픽 객체를 얻는 단계이다. S15 단계에서는 애플릿의 실행을 개시(애플릿의 init과 start 함수 호출)하게 되는 데 이 때 실행할 애플릿의 URL은 서버에서 미리 준비되어 있을 수도 있고, S11 단계에서 클라이언트의 요청에 의해 정해질 수도 있다.In step S13, the server creates a virtual graphic device having the same environment as the applet size and color model of the client. The virtual graphics device is an image buffered on memory as described above. In step S14, the graphic object of the virtual graphic device generated in step S13 is obtained. In step S15, execution of the applet is started (the applet's init and start functions are called). The URL of the applet to be executed at this time may be prepared in advance by the server, or may be determined by a client's request in step S11.

이어서 S16 단계는 S14 단계의 그래픽 객체를 이용해 S15 단계에서 실행이 개시된 애플릿을 그리는(paint) 단계이다. 이것은 애플릿의 paint 함수 호출 시 그 인자로 상기 그래픽 객체를 넘겨줌으로써 이루어진다.Subsequently, step S16 is to draw an applet whose execution is started in step S15 using the graphic object of step S14. This is done by passing the graphic object as its argument when calling the applet's paint function.

다음의 S17 단계는 S16 단계에서의 애플릿의 paint 함수 호출 시 S13의 버퍼링된 이미지의 데이터를 얻어 클라이언트에 전송하기 위한 영역 계산 및 데이터 압축을 행하는 단계이다. 이 단계가 상기 paint 함수 호출 시에만 일어나는 것은 paint 함수 호출이 일어나야만 화면에 변화가 생기기 때문이다. 또한 데이터를 가지고 영역을 계산하고 압축하는 것은 다음 단계인 S18에서 클라이언트로 화면 이미지 데이터 전송 시 전송할 데이터 량을 최소화 하기 위한 것이다.The next step S17 is to perform area calculation and data compression for obtaining the data of the buffered image of S13 and transmitting it to the client when calling the paint function of the applet in step S16. This step occurs only when the paint function is called because a change is made to the screen only when the paint function is called. In addition, calculating and compressing the area with the data is to minimize the amount of data to be transmitted when the screen image data is transmitted to the client in the next step S18.

S18 단계에서 서버는 영역 정보를 포함해 화면 이미지 데이터를 클라이언트에 전송하고, S19 단계에서 클라이언트는 전송받은 데이터를 복원하고 그래픽 화면에서 보여주게 된다.In step S18, the server transmits the screen image data including the area information to the client, and in step S19, the client restores the received data and displays it on the graphic screen.

도 3은 본 발명에 따른 클라이언트 장치의 내부 블록도를 도시한 도면이다. 스크린(110)은 일반적인 비트맵 디스플레이 장치이고, 입력장치(120)로는 키보드/키패드(120a), 마우스(120b), 포인팅 장치(120c)가 쓰일 수 있다.3 is a diagram illustrating an internal block diagram of a client device according to the present invention. The screen 110 is a general bitmap display device, and a keyboard / keypad 120a, a mouse 120b, and a pointing device 120c may be used as the input device 120.

서버로부터 압축된 화면 이미지 데이터를 수신하면 데이터 복원부(130)에서 복원 과정을 거쳐 원래의 이미지 데이터를 스크린의 버퍼에 옮김으로써 디스플레이 될 수 있다.When the compressed screen image data is received from the server, the data restoration unit 130 may display the image data by transferring the original image data to a buffer of the screen through a restoration process.

키보드,마우스 등의 사용자 입력 시 내부적으로 이벤트가 발생한다. 이 때 클라이언트 장치는 이벤트 처리부(140)에서 상기 이벤트를 서버가 해석할 수 있도록 정보화하여 서버에 전송한다.Event occurs internally when user input keyboard, mouse, etc. At this time, the client device transmits the information by the event processing unit 140 so that the server can interpret the event.

상기 이벤트를 전송받은 서버는 해당 애플릿에 이를 반환함으로써 애플릿이 사용자의 입력에 따라 상호작용할 수 있게 된다.The server receiving the event returns this to the applet so that the applet can interact with the user's input.

본 발명에 따른 씬 클라이언트 시스템은 자바 애플릿으로 작성된 응용프로그램을 다양한 무선 클라이언트 단말기에서 보여줄 수 있다. 이는 기존의 방식에서와 같이 클라이언트가 자바 애플릿의 클래스들을 서버로부터 다운로드하여 실행하지 않고도 사용자의 입장에서 기존과 동일한 애플릿 실행 결과를 얻을 수 있음을 의미한다.The thin client system according to the present invention can show an application written in a Java applet on various wireless client terminals. This means that the client can get the same applet execution results as the user without having to download and execute the Java applet classes from the server as in the conventional method.

근래의 무선 인터넷이 가능한 다양한 무선 단말장치들은 본 발명이 제공하는 시스템의 클라이언트 장치로 사용되어, 프로세싱 성능이나 저장 장치의 한계를 극복하고, 사용자에게 풍부한 응용프로그램을 제공할 수 있게 된다.Recently, various wireless terminal devices capable of wireless Internet can be used as client devices of the system provided by the present invention, thereby overcoming the limitations of processing performance or storage devices and providing a rich application program to a user.

Claims (5)

원격의 클라이언트로부터 애플릿이 실행될 화면 크기와 색상 모델에 대한 정보를 전송받는 단계;Receiving information about a screen size and a color model in which an applet is to be executed from a remote client; 상기 화면 크기와 색상 모델과 동일한 환경으로 상기 가상의 그래픽 디바이스를 생성하는 단계;Creating the virtual graphics device in the same environment as the screen size and color model; 상기 가상의 그래픽 디바이스의 메모리 상에 버퍼링된 화면 이미지 데이터를 얻는 단계;Obtaining screen image data buffered on a memory of the virtual graphics device; 상기 이미지 데이터를 네트워크를 통해 클라이언트에 전송하는 단계;Transmitting the image data to a client via a network; 상기 클라이언트가 전송한 사용자의 입력 이벤트를 해석하여 애플릿에 반환해주는 단계;Interpreting and returning an input event of a user transmitted by the client to an applet; 로 구성함으로써 서버에서 실행된 애플릿의 실행 결과가 클라이언트에 동일하게 나타날 수 있도록 하는 방법; Configuring the server to ensure that the execution result of the applet executed in the server is identical to the client; 제1항에 있어서The method of claim 1 자바 애플릿을 실행함에 있어 물리적인 그래픽 디바이스가 아닌 메모리상의 가상의 그래픽 디바이스를 생성하는 단계;Creating a virtual graphics device in memory that is not a physical graphics device in executing a Java applet; 상기 가상의 그래픽 디바이스의 그래픽 객체를 얻는 단계;Obtaining a graphic object of the virtual graphics device; 애플릿이 상기 그래픽 객체를 사용해 GUI 화면을 표현할 수 있도록 상기 그래픽 객체를 애플릿의 paint 함수에 인자로 넘겨주어 단계;Passing the graphic object as an argument to the applet's paint function so that the applet can present a GUI screen using the graphic object; 로 구성함으로써 물리적인 화면에 보여지지 않아도 애플릿 실행의 상태가 진행될 수 있도록 하는 방법.How to configure the applet execution status to proceed without being shown on the physical screen. 클라이언트/서버 시스템에 있어서,In a client / server system, 클라이언트의 요청에 따라 임의의 화면 크기와 색상모델 정보를 가지는 가상의 그래픽 디바이스를 생성하기 위한 수단과,Means for creating a virtual graphics device having arbitrary screen size and color model information at the client's request; 서로 의존적이지 않은 다수의 상기 가상의 그래픽 디바이스를 생성하기 위한 수단과,Means for creating a plurality of said virtual graphics devices that are not dependent on each other, 상기 가상의 그래픽 디바이스의 버퍼링된 이미지 데이터를 얻을 수 있는 수단과,Means for obtaining buffered image data of the virtual graphics device; 상기 이미지 데이터를 해당 클라이언트에 전송하기 위한 수단을 포함하는 서버 장치.Means for transmitting said image data to said client. 화면 이미지 데이터를 전송하는 서버 장치에 접속될 수 있는 클라이언트 장치에 있어서,A client device that can be connected to a server device that transmits screen image data, 로컬 그래픽 디스플레이 장치의 화면 크기와 색상모델의 정보를 응용프로그램이 알아낼 수 있는 수단과,Means for the application to determine the screen size and color model information of the local graphical display device; 상기 정보를 서버에 전송할 수 있는 수단과,Means for transmitting the information to a server; 서버로부터 전송받은 화면 이미지 데이터를 로컬 스크린에 보여주기 위한 수단을 포함하는 클라이언트 장치A client device comprising means for displaying the screen image data received from the server on a local screen 제4항에 있어서,The method of claim 4, wherein 사용자의 입력을 받아들이기 위한 수단과,Means for accepting user input, 상기 사용자 입력을 이벤트화하는 수단과,Means for eventing the user input; 상기 이벤트를 서버가 해석할 수 있는 정보로 변환하는 수단과Means for converting the event into information that the server can interpret; 상기 정보를 서버에 전송할 수 있는 수단을 더 포함하는 클라이언트 장치.Means for transmitting the information to a server.
KR1020030003021A 2003-01-16 2003-01-16 Thin client system and method for transmitting an off-screen image of applets running between internet hosts and mobile devices over wireless data network KR20040065833A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020030003021A KR20040065833A (en) 2003-01-16 2003-01-16 Thin client system and method for transmitting an off-screen image of applets running between internet hosts and mobile devices over wireless data network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020030003021A KR20040065833A (en) 2003-01-16 2003-01-16 Thin client system and method for transmitting an off-screen image of applets running between internet hosts and mobile devices over wireless data network

Publications (1)

Publication Number Publication Date
KR20040065833A true KR20040065833A (en) 2004-07-23

Family

ID=37355913

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020030003021A KR20040065833A (en) 2003-01-16 2003-01-16 Thin client system and method for transmitting an off-screen image of applets running between internet hosts and mobile devices over wireless data network

Country Status (1)

Country Link
KR (1) KR20040065833A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101467430B1 (en) * 2011-12-12 2014-12-01 주식회사 케이티 Method and system for providing application based on cloud computing
KR101480140B1 (en) * 2013-01-03 2015-01-07 주식회사 비티비솔루션 Multi injection server and method thereof

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101467430B1 (en) * 2011-12-12 2014-12-01 주식회사 케이티 Method and system for providing application based on cloud computing
US9721028B2 (en) 2011-12-12 2017-08-01 Kt Corporation Method and apparatus for providing cloud service
KR101480140B1 (en) * 2013-01-03 2015-01-07 주식회사 비티비솔루션 Multi injection server and method thereof

Similar Documents

Publication Publication Date Title
US8578333B2 (en) Method and system for client-side user interface enhancement to enable application integration and portalisation
EP1308844B1 (en) System and method for monitoring an application on a server
KR101740327B1 (en) Apparatus and system for providing software service using software virtualization and method thereof
US6434598B1 (en) Object-oriented system, method and article of manufacture for a client-server graphical user interface (#9) framework in an interprise computing framework system
EP2219109A1 (en) Interacting wth software applications displayed in a web page
US20020196279A1 (en) Interacting with software applications displayed in a web page
KR19980079592A (en) Remote operation method, a storage medium for storing a server and HTML file that is remotely operated from a terminal through a network
JPH10312287A (en) System/method/product directing object for moving client server application
JPH10228438A (en) Object oriented system, method and product for client server session management program in enterprise computing framework system
JPH10312285A (en) System/method/product directing object for client server event driving message framework in inter-prize computing framework station
JPH10312286A (en) System/method/product directing object for client sever communication framework
JPH10254702A (en) Object oriented system/method/product for client server state machine in enterprise computing frame work system
JPH10254705A (en) Object-oriented system, method and product for client-server session web access in enterprise computing system frame work system
JPH10171672A (en) Object directing system, method and product for client-server having client program cache
JPH10240532A (en) Object-oriented system, method, and product for client-server-center-interprise computing framework system
US20040049530A1 (en) Distributed computer system using a graphical user interface toolkit
US6381654B1 (en) Systems methods and computer program products for customized host access applications including user-replaceable transport code
US6738817B1 (en) System and method for enabling graphic applications in an interactive programming model
CN103677970A (en) System and method for achieving combination display of terminal local desktop and far-end virtual desktop
González-Castaño et al. Condor grid computing from mobile handheld devices
CN112000401B (en) Cloud desktop deployment method and cloud desktop system
KR20040065833A (en) Thin client system and method for transmitting an off-screen image of applets running between internet hosts and mobile devices over wireless data network
KR101316677B1 (en) Application service system based on user interface virtualization and method thereof
KR20020034347A (en) Server-thin client system
KR101430729B1 (en) Server and method for supporting software

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
NORF Unpaid initial registration fee