KR100982511B1 - 원격 제어 장치 및 방법 - Google Patents

원격 제어 장치 및 방법 Download PDF

Info

Publication number
KR100982511B1
KR100982511B1 KR1020030070044A KR20030070044A KR100982511B1 KR 100982511 B1 KR100982511 B1 KR 100982511B1 KR 1020030070044 A KR1020030070044 A KR 1020030070044A KR 20030070044 A KR20030070044 A KR 20030070044A KR 100982511 B1 KR100982511 B1 KR 100982511B1
Authority
KR
South Korea
Prior art keywords
window
information
screen
received
screen update
Prior art date
Application number
KR1020030070044A
Other languages
English (en)
Other versions
KR20050034201A (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 KR1020030070044A priority Critical patent/KR100982511B1/ko
Priority to US10/951,823 priority patent/US8489996B2/en
Priority to EP04256157A priority patent/EP1531393A3/en
Priority to CN2004100805806A priority patent/CN1606309B/zh
Publication of KR20050034201A publication Critical patent/KR20050034201A/ko
Application granted granted Critical
Publication of KR100982511B1 publication Critical patent/KR100982511B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • 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
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/12Overlay of images, i.e. displayed pixel being the result of switching between the corresponding input pixels
    • G09G2340/125Overlay of images, i.e. displayed pixel being the result of switching between the corresponding input pixels wherein one of the images is motion video

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Accounting & Taxation (AREA)
  • Development Economics (AREA)
  • Theoretical Computer Science (AREA)
  • Finance (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Game Theory and Decision Science (AREA)
  • General Business, Economics & Management (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Human Computer Interaction (AREA)
  • General Engineering & Computer Science (AREA)
  • User Interface Of Digital Computer (AREA)
  • Information Transfer Between Computers (AREA)
  • Digital Computer Display Output (AREA)
  • Computer And Data Communications (AREA)
  • Telephonic Communication Services (AREA)

Abstract

본 발명은 원격 제어 장치 및 방법에 관한 것으로, 본 발명에 따른 클라이언트 측 원격 제어 장치는 서버로부터 윈도우 각각에 대한 속성 정보를 수신하는 윈도우 속성 정보 수신부; 속성 정보를 참조하여 윈도우 각각을 인식하는 윈도우 인식부; 속성 정보를 참조하여 윈도우 각각에 대한 화면 갱신 요청 주기를 결정하는 윈도우 화면 갱신 요청 주기 결정부; 및 서버로 속성 정보를 참조하여 화면 갱신 요청 주기마다 윈도우 각각에 대한 화면 갱신 요청을 송신하는 윈도우 화면 갱신 요청 송신부를 포함하며, 클라이언트 측에서 윈도우 각각을 인식할 수 있도록 함으로서, 클라이언트는 서버에 윈도우 위치 정보 및 크기 정보 대신 윈도우 아이디만을 전송하면 되기 때문에 네트워크를 통한 원격 제어에 있어서 데이터 전송량을 줄일 수 있다.

Description

원격 제어 장치 및 방법{Apparatus and method for remote controlling}
도 1은 종래의 원격 제어 장치를 도시한 도면이다.
도 2는 종래의 원격 제어 프로토콜에 따른 화면 갱신 방법을 도시한 도면이다.
도 3은 종래의 원격 제어 프로토콜에 따른 화면 갱신 요청 메시지의 포맷을 도시한 도면이다.
도 4는 종래의 원격 제어 프로토콜에 따른 화면 정보 메시지의 포맷을 도시한 도면이다.
도 5는 본 발명의 바람직한 일 실시예에 따른 원격 제어 장치의 구성도이다.
도 6은 본 발명이 적용되는 원격 제어 환경을 도시한 도면이다.
도 7은 본 발명에 사용되는 여러 가지 메시지의 포맷의 일례를 도시한 도면이다.
도 8은 본 발명의 바람직한 일 실시예에 따른 클라이언트 측 원격 제어 방법의 흐름도이다.
도 9는 본 발명의 바람직한 일 실시예에 따른 서버 측 원격 제어 방법의 흐름도이다.
도 10은 본 발명의 일 실시예에 따른 원격 제어 방법의 흐름도이다.
본 발명은 원격 제어 장치 및 방법에 관한 것이고, 보다 상세하게는 신 클라이언트 및 서버간의 원격 제어 장치 및 방법에 관한 것이다.
원격지에 있는 컴퓨터를 제어하기 위하여 사용되고 있는 프로토콜로는 VNC(Virtual Network Computing), RDP(Remote Desktop Protocol) 등이 있다. 이 프로토콜들의 기본 원리는 사용자의 위치에 있는 컴퓨터의 출력 장치 및 입력 장치를 원격지에 있는 컴퓨터의 출력 장치 및 입력 장치처럼 사용할 수 있도록 하는 것이다. 이를 위하여 원격지에 있는 컴퓨터의 화면을 네트워크를 이용하여 사용자의 위치에 있는 컴퓨터에 재현한다.
도 1은 종래의 원격 제어 장치를 도시한 도면이다.
도 1을 참조하면, 종래의 원격 제어 장치는 클라이언트(Client, 1) 및 서버(Server, 2)로 구성된다. 사용자의 위치에 있는 컴퓨터는 화면 갱신 요청을 하기 때문에 클라이언트(Client)라고 불리고, 원격지에 있는 컴퓨터는 화면 갱신 요청에 대한 응답으로서 화면 정보를 제공하기 때문에 서버(Server)라고 불린다. 이하, 사용자의 위치에 있는 컴퓨터를 클라이언트라고 하고, 원격지에 있는 컴퓨터를 서버라고 하기로 한다.
사용자는 클라이언트(1)에 재현된 서버(2)의 화면을 보면서 필요한 제어 행위(예를 들면, 키보드 입력, 마우스 클릭 등)를 한다. 사용자의 제어 행위에 따른 제어 정보는 다시 네트워크를 통하여 서버(2)로 송신된다. 서버(2)는 이 제어 정보를 처리하고, 그 결과로서 변경된 화면 정보를 다시 네트워크를 통하여 클라이언트(1)로 송신한다. 보통 원격 제어의 클라이언트를 특히 신 클라이언트(Thin Client)라고 하는데, 신 클라이언트는 휴대성을 높이기 위해 크기 및 무게를 줄이고, 가격을 낮추기 위해 원격 제어를 위한 최소한의 기능만을 갖춘 클라이언트를 말한다. VNC와 같은 신 클라이언트 용 원격 제어 프로토콜은 서버(2)와 클라이언트(1)간의 화면 정보와 제어 정보의 교환을 가능하게 하는 통신 규약이다. 그 주요 구성은 클라이언트의 화면 갱신 요청과 제어 정보 송신, 및 서버의 화면 정보 송신으로 이루어진다. 서버(2)의 화면을 클라이언트(1) 쪽에서 얼마나 잘 재현하느냐는 서버(2)와 클라이언트(2) 간의 네트워크 속도, 서버(2)와 클라이언트(1)의 처리 능력, 및 효율적인 데이터 교환 방법 등에 의존한다. 서버(2)와 클라이언트(1) 간의 데이터 량을 줄이기 위해 인코딩/디코딩(encoding/decoding)을 사용하기도 한다. 이때, 서버에는 인코딩 장치, 클라이언트에는 디코딩 장치가 추가된다. 하지만, 신 클라이언트는 보통 최소한의 기능만을 갖추고 있으며, 따라서 많은 계산이 수반되는 인코딩/디코딩 방식은 신 클라이언트 용 원격 제어 프로토콜에서는 보통 채택되지 않고 있으며, 서버의 프레임 버퍼(Frame Buffer)의 내용을 그대로 클라이언트에게 전달하거나(이것을 미 인코딩(Raw Encoding)이라 한다), 아주 원시적 수준의 인코딩/디코딩(예를 들면, Copy Rectangle Encoding 등)만이 사용된다.
도 2는 종래의 원격 제어 프로토콜에 따른 화면 갱신 방법을 도시한 도면이 다.
도 2를 참조하면, 종래의 원격 제어 프로토콜에 따라 다음과 같은 방식으로 클라이언트(1)의 화면을 갱신한다.
일단, 클라이언트(1)와 서버(2)가 네트워크를 통해 연결되고, 기본적인 데이터가 교환되고 나면, 클라이언트(1)는 사용자에 의해 입력 이벤트가 발생한 경우 또는 주기적으로 서버(2)로 화면 갱신 요청을 한다. 서버(2)는 화면 갱신 요청에 대한 응답으로서 클라이언트(2)로 화면 정보를 송신한다. 클라이언트(2)는 이 화면 정보를 사용하여 서버(2)의 화면을 자신의 디스플레이 패널에 재현한다. 이때, 화면 갱신 요청과 화면 정보 송신이 항상 일 대 일로 대응되는 것은 아니다. 즉, 서버(2)의 판단에 따라 화면 갱신 요청에 응답할 수도 있고, 몇 개의 화면 갱신 요청을 묶어서 응답할 수도 있고 무시할 수도 있다. 다만, 클라이언트(1)가 요청하지 않으면, 서버(2)는 화면 정보(2)를 송신하지 않는다.
도 3은 종래의 원격 제어 프로토콜에 따른 화면 갱신 요청 메시지의 포맷을 도시한 도면이다.
도 3을 참조하면, 종래의 원격 제어 프로토콜인 VNC에 따른 화면 갱신 요청 메시지는 증분(incremental) 필드, 화면의 위치(x-position, y-position) 필드, 및 화면의 크기(width, height) 필드로 구성된다.
클라이언트(1)는 도시된 화면 갱신 요청 메시지를 사용하여 화면 갱신 요청을 한다. 이때, 화면의 위치 필드와 화면의 크기 필드를 사용하여 갱신되어야할 화면의 위치 및 크기를 지정하고, 증분 필드를 이용하여 화면 전체에 대해 갱신할 것 인지, 아니면 변화된 부분에 대해서만 요청할 것인지를 지정한다.
도 4는 종래의 원격 제어 프로토콜에 따른 화면 정보 메시지의 포맷을 도시한 도면이다.
도 3을 참조하면, 종래의 원격 제어 프로토콜인 VNC에 따른 화면 정보 메시지는 화면의 위치(x-position, y-position) 필드, 화면의 크기(width, height) 필드, 인코딩 타입(encoding type) 필드, 및 화면 정보(display data) 필드로 구성된다.
클라이언트(1)는 서버(2)로부터 화면 정보 메시지를 수신하면, 화면의 위치 필드 및 화면의 크기 필드에 기록된 값을 확인하여 갱신될 화면의 영역을 결정하고, 결정된 영역에 화면 정보 필드에 기록된 값을 표시한다. 이때, 인코딩 타입 필드에 기록된 값이 미 인코딩임을 나타내는 경우에는 화면 정보 필드에 기록된 값을 자신의 프레임 버퍼에 직접 복사함으로써 서버(2)의 화면을 재현하고, 인코딩 타입 필드에 기록된 값이 인코딩임을 나타내는 경우에는 디코딩을 수행한 후 자신의 프레임 버퍼에 기록함으로써 서버(2)의 화면을 재현한다.
상기된 바와 같이, 종래의 원격 제어 방식에서는 클라이언트(1)는 단순히 서버(2)로부터 요청한 영역에 대한 화면 정보만을 수신하기 때문에 다음과 같은 문제점들이 있었다. 첫째, 클라이언트(1)에서 사용자가 특정 영역을 지정하여 그 영역에 대해서만 화면 갱신을 요청할 수 있지만, 사용자가 그 영역을 일일이 지정해 주어야 하는 불편함이 있었고, 게다가 그 영역 내의 윈도우가 다른 곳으로 이동되었을 경우마다 사용자가 다시 지정해 주어야 하는 불편함이 있었다. 둘째, 클라이언 트(1)가 서버에서 동작되는 어플리케이션에 대한 정보가 전혀 없기 때문에, 어플리케이션 각각에 대한 윈도우의 화면을 얼마나 자주 갱신해야 하는 지에 대한 기준을 서버(2)에게 제시할 수가 없다는 문제점이 있었다. 예를 들어, 서버(2)에서 동작되는 어플리케이션의 윈도우에서 동영상이 재생되고 있다면, 클라이언트(1)는 최대한 자주 화면 갱신을 요청해야 할 것이고, 사용자의 입력에 반응하는 어플리케이션이라면 사용자의 입력이 있을 경우에만 화면 갱신을 요청하면 되지만, 종래에는 사용자 입력 이벤트가 발생한 때, 또는 미리 정해진 주기마다 화면 갱신 요청을 할 수밖에 없기 때문에 동영상의 경우에는 화면 갱신 회수가 부족하여 부드러운 재생이 이루어지지 않고, 정지 영상의 경우에는 이전과 동일한 화면임에도 불구하고 계속 화면 갱신 요청을 하게 되는 문제점이 있었다. 셋째, 화면의 특정 영역에 대한 화면 갱신 요청은 가능하였으나, 특정 영역에 대한 화면 갱신을 중단시키기가 거의 불가능하다는 문제점이 있었다. 예를 들어, 클라이언트(1)의 사용자가 어떤 어플리케이션을 제어하고 있고, 그 어플리케이션의 윈도우가 화면의 일부를 가리고 있을 경우, 그 가려진 부분에 대한 화면 갱신을 중단할 것을 서버(2)에게 요청하기가 거의 불가능하다는 문제점이 있었다. 넷째, 두 개의 어플리케이션이 서버(2)에서 동작 중이라고 하고, 클라이언트(1)의 사용자는 하나의 어플리케이션에 대해서는 관심이 있고, 다른 어플리케이션에 대해서는 관심이 없다고 하자. 이때, 클라이언트(1)는 모든 자원을 관심 있는 어플리케이션에 집중하고, 다른 어플리케이션에 대해서는 자원이 남는 경우에만 처리하고 싶을 것이다. 종래의 경우, 상기한 바와 같은 사용자의 지정에 따른 어플리케이션마다의 자원 할당이 불가능하다는 문제점이 있었다.
본 발명이 이루고자 하는 기술적 과제는 클라이언트 측에서 윈도우 각각을 인식할 수 있도록 함으로서, 네트워크를 통한 원격 제어에 있어서 화면 정보를 효율적으로 송신할 수 있게 하는 장치 및 방법을 제공하는데 있다.
상기 기술적 과제를 해결하기 위한 본 발명에 따른 클라이언트 측 원격 제어 장치는 서버로부터 윈도우 각각에 대한 속성 정보를 수신하는 윈도우 속성 정보 수신부; 상기 윈도우 속성 정보 수신부에 수신된 속성 정보를 참조하여 상기 윈도우 각각을 인식하는 윈도우 인식부; 상기 윈도우 속성 정보 수신부에 수신된 속성 정보를 참조하여 상기 윈도우 인식부에서 인식된 윈도우 각각에 대한 화면 갱신 요청 주기를 결정하는 윈도우 화면 갱신 요청 주기 결정부; 및 상기 서버로 상기 윈도우 속성 정보 수신부에 수신된 속성 정보를 참조하여 상기 윈도우 화면 갱신 요청 주기 결정부에서 결정된 화면 갱신 요청 주기마다 상기 윈도우 인식부에서 인식된 윈도우 각각에 대한 화면 갱신 요청을 송신하는 윈도우 화면 갱신 요청 송신부를 포함한다.
상기 다른 기술적 과제를 해결하기 위한 본 발명에 따른 서버 측 원격 제어 장치는 클라이언트로 윈도우 각각에 대한 속성 정보를 송신하는 윈도우 속성 정보 송신부; 상기 윈도우 속성 정보 송신부에서 송신된 속성 정보를 수신한 클라이언트로부터 상기 윈도우 각각에 대한 화면 갱신 요청을 수신하는 윈도우 화면 갱신 요 청 수신부; 및 상기 윈도우 화면 갱신 요청 수신부에 수신된 화면 갱신 요청에 따라 상기 표시된 화면에 포함된 윈도우 각각에 대한 화면 정보를 송신하는 서버 화면 정보 송신부를 포함한다.
상기 다른 기술적 과제를 해결하기 위한 본 발명에 따른 클라이언트 측 원격 제어 방법은 (a) 서버로부터 윈도우 각각에 대한 속성 정보를 수신하는 단계; (b) 상기 (a) 단계에서 수신된 속성 정보를 참조하여 상기 윈도우 각각을 인식하는 단계; (c) 상기 (a) 단계에서 수신된 속성 정보를 참조하여 상기 (b) 단계에서 인식된 윈도우 각각에 대한 화면 갱신 요청 주기를 결정하는 단계; 및 (d) 상기 서버로 상기 (a) 단계에서 수신된 속성 정보를 참조하여 상기 (c) 단계에서 결정된 화면 갱신 요청 주기마다 상기 (b) 단계에서 인식된 윈도우 각각에 대한 화면 갱신 요청을 송신하는 단계를 포함한다.
상기 다른 기술적 과제를 해결하기 위한 본 발명에 따른 서버 측 원격 제어 방법은 (a) 클라이언트로 윈도우 각각에 대한 속성 정보를 송신하는 단계; (b) 상기 (a) 단계에서 송신된 속성 정보를 수신한 클라이언트로부터 상기 윈도우 각각에 대한 화면 갱신 요청을 수신하는 단계; 및 (c) 상기 (b) 단계에서 수신된 화면 갱신 요청에 따라 상기 윈도우 각각에 대한 화면 정보를 송신하는 단계를 포함한다.
이하에서는 도면을 참조하여 본 발명의 바람직한 실시예들을 상세히 설명한다.
도 5는 본 발명의 바람직한 일 실시예에 따른 원격 제어 장치의 구성도이다.
도 5를 참조하면, 원격 제어 장치는 클라이언트(3) 및 서버(4)로 구성된다.
클라이언트(3)는 사용자로부터 클라이언트(3)의 디스플레이 패널에 표시된 화면에 포함된 윈도우 각각에 대응되는 어플리케이션에 대한 제어 정보를 입력받고, 입력받은 제어 정보를 송신한다. 여기에서, 사용자는 클라이언트(3)의 키보드 또는 마우스 등을 이용하여 클라이언트(3)의 디스플레이 패널에 표시된 화면에 포함된 윈도우 각각을 조작함으로서, 윈도우 각각에 대응되는 어플리케이션을 제어한다. 이때, 어플리케이션에 대한 제어 정보는 네트워크를 통하여 서버(4)로 송신된다.
서버(4)는 송신된 제어 정보를 수신하고, 수신된 제어 정보에 따라 제어된 어플리케이션 각각에 대응되는 윈도우 각각에 대한 속성 정보를 송신한다. 여기에서, 서버(4)는 클라이언트(3)로부터 키보드 이벤트 또는 마우스 이벤트 등의 제어 정보를 수신하고, 수신된 제어 정보에 따라 해당 어플리케이션을 제어한다. 이때, 제어의 결과로서 어플리케이션이 변화하게 되고, 이에 따라 이 어플리케이션을 표현하는 윈도우도 변화하게 된다. 즉, 새로운 윈도우가 화면의 전체 또는 일부에 발생할 수도 있고, 화면의 전체 또는 일부를 점유하던 기존의 윈도우가 사라질 수도 있고, 기존의 윈도우의 위치나 크기가 조정될 수도 있다. 서버(4)는 이와 같이 변화된 윈도우에 대한 속성 정보를 클라이언트(3)로 송신한다. 여기에서, 속성 정보는 주로 윈도우 각각을 식별하기 위한 윈도우 아이디, 윈도우 화면의 변화의 정도를 나타내는 윈도우 변화 정보, 윈도우가 디스플레이 패널의 전체 화면 내에서 어느 부분에 위치하는 지를 나타내는 윈도우 위치 정보, 윈도우가 디스플레이 패널의 전체 화면 내에서 얼마만큼의 범위를 차지하는 지를 나타내는 윈도우 크기 정보를 포함한다.
클라이언트(3)는 송신된 속성 정보를 수신하고, 수신된 속성 정보를 참조하여 윈도우 각각을 인식한다. 여기에서, 클라이언트(3)는 속성 정보에 포함된 윈도우 위치 정보 및 윈도우 크기 정보를 참조하여 윈도우를 인식한다. 윈도우를 인식할 때, 윈도우 위치 정보 및 윈도우 크기 정보 대신, 훨씬 데이터 량이 적은 윈도우 아이디를 사용하기 위하여, 윈도우 위치 정보 및 윈도우 크기 정보를 참조하여 인식된 윈도우에 해당 윈도우 아이디를 대응시킨다. 즉, 윈도우를 속성 정보에 포함된 윈도우 아이디로서 인식한다. 이후, 화면에 포함된 윈도우 각각은 윈도우 아이디만을 사용하여 특정할 수 있게 된다. 이것으로 인하여, 사용자가 윈도우 영역을 일일이 지정하여 줄 필요가 없게 되고, 어떤 윈도우의 위치나 크기가 변화되더라도 동일한 윈도우 아이디로 인식되기 때문에 사용자가 변화된 부분을 새로 지정해줄 필요는 없게 된다. 또한, 클라이언트(1)와 서버(2)간 정보가 교환될 때, 윈도우 위치 정보 및 윈도우 크기 정보 대신, 윈도우 아이디만을 사용하면 되기 때문에 전송될 데이터 량이 감소하게 된다.
클라이언트(3)는 수신된 속성 정보를 참조하여 인식된 윈도우 각각에 대한 화면 갱신 요청 주기를 결정하고, 수신된 속성 정보를 참조하여 결정된 화면 갱신 요청 주기마다 인식된 윈도우 각각에 대한 화면 갱신 요청을 송신한다. 클라이언트(3)는 속성 정보에 포함된 윈도우 변화 정보를 참조하여 일반 동영상을 재생하는 윈도우인지, 반복적 동영상을 재생하는 윈도우인지, 정지 영상을 재생하는 윈도우인지, 또는 입력 이벤트에만 반응하는 윈도우인지를 인식하고, 인식된 결과를 바탕으로 화면 요청 주기를 결정한다. 일반 동영상을 재생하는 윈도우인 경우에는 화면 요청 주기가 짧을 것이고, 정지 영상을 재생하는 윈도우인 경우에는 화면 요청 주기가 길 것이고, 반복적 동영상을 재생하는 윈도우인 경우에는 화면 요청 주기가 일반 동영상인 경우와 정지 영상 윈도우인 경우의 중간 정도가 될 것이고, 입력 이벤트에만 반응하는 윈도우인 경우에는 화면 요청 주기가 필요 없을 것이다. 결정된 화면 갱신 요청 주기마다 인식된 윈도우 각각에 대한 화면 갱신 요청을 송신한다. 서버(4)는 송신된 화면 갱신 요청을 수신하고, 수신된 화면 갱신 요청에 따라 윈도우 각각에 대한 화면 정보를 송신한다. 클라이언트(3)는 송신된 화면 정보를 수신하고, 수신된 화면 정보를 이용하여, 윈도우 각각을 포함하는 화면을 표시하고, 다시 사용자로부터 표시된 화면에 포함된 윈도우 각각에 대응되는 어플리케이션에 대한 제어 정보를 입력받고, 입력받은 제어 정보를 송신한다.
또한, 클라이언트(3)는 수신된 속성 정보를 참조하여 인식된 윈도우 각각에 대한 화면 갱신이 필요 없는 특정 부분을 결정하고, 결정된 특정 부분에 대한 화면 갱신 중단 요청을 송신한다. 클라이언트(3)는 속성 정보에 포함된 윈도우 위치 정보, 윈도우 크기 정보를 참조하여, 화면 갱신이 필요 없는 특정 부분, 즉, 다른 윈도우에 의해 가려져 보이지 않는 부분을 결정하고, 결정된 특정 부분에 대한 화면 갱신 중단 요청을 송신한다. 여기에서, 특정 부분, 즉 다른 윈도우에 의해 가려져 보이지 않는 부분은 클라이언트(3)에서 지역적으로 동작하는 어플리케이션을 표현하는 윈도우가 서버(4)에서 제공된 화면 정보를 표현한 윈도우를 가릴 때 주로 발생한다. 만약, 이와 같은 원인이 사라지면, 화면 갱신 중단 요청을 해제하고, 윈도 우 각각에 대한 화면 갱신이 가능하도록 하여야 한다.
서버(4)는 송신된 화면 갱신 중단 요청을 수신하고, 수신된 화면 갱신 중단 요청에 따라 특정 부분에 대한 화면 정보 송신을 중단한다.
또한, 클라이언트(3)는 사용자로부터 인식된 윈도우 각각에 대한 자원 할당 정보를 입력받고, 입력받은 자원 할당 정보를 송신한다. 사용자는 클라이언트(3)의 디스플레이 패널에 표시된 화면에 포함된 여러 개의 윈도우 중, 관심 있는 윈도우에 대해서 양질의 화면을 제공받기 위해서, 관심 있는 윈도우에 키보드, 마우스 등의 입력 장치를 이용하여 윈도우 각각에 대한 자원 할당 정보를 입력한다. 클라이언트(3)는 이와 같이 입력받은 자원 할당 정보를 서버(4)로 송신한다. 서버(4)는 송신된 자원 할당 정보를 수신하고, 수신된 자원 할당 정보에 따라 표시된 화면에 포함된 윈도우 각각에 대하여 자원을 할당하고, 할당된 자원에 비례하는 회수로 할당된 자원을 갖는 윈도우 각각에 대한 화면 정보를 송신한다. 클라이언트(3)는 송신된 화면 정보를 수신하고, 수신된 화면 정보를 이용하여, 윈도우 각각을 포함하는 화면을 표시하고, 다시 사용자로부터 표시된 화면에 포함된 윈도우 각각에 대응되는 어플리케이션에 대한 제어 정보를 입력받고, 입력받은 제어 정보를 송신한다.
도 5를 참조하면, 클라이언트(3) 측 원격 제어 장치는 어플리케이션 제어 정보 입력부(31), 어플리케이션 제어 정보 송신부(32), 윈도우 속성 정보 수신부(33), 윈도우 인식부(34), 윈도우 화면 갱신 요청 주기 결정부(35), 윈도우 화면 갱신 요청 송신부(36), 윈도우 화면 특정 부분 결정부(37), 윈도우 화면 갱신 중단 요청 송신부(38), 윈도우 자원 할당 정보 입력부(39), 윈도우 자원 할당 정보 송신부(310), 서버 화면 정보 수신부(311), 및 클라이언트 화면 표시부(312)로 구성된다.
도 6은 본 발명이 적용되는 원격 제어 환경을 도시한 도면이다.
도 6을 참조하면, 클라이언트(3)의 디스플레이 패널에 표시된 화면은 동영상을 재생하는 동영상 윈도우(61), 정지 영상을 재생하는 이미지 윈도우(62), 반복적인 동영상을 재생하는 배너 광고 윈도우(63), 및 입력 이벤트에만 반응하는 윈도우(64)를 포함한다.
어플리케이션 제어 정보 입력부(31)는 사용자로부터 클라이언트(3)의 디스플레이 패널에 표시된 화면에 포함된 윈도우 각각에 대응되는 어플리케이션 각각에 대한 제어 정보를 입력받는다. 도 6에 도시된 화면은 클라이언트(3)의 디스플레이 패널에 표시된 화면이며, 사용자는 클라이언트(3)의 디스플레이 패널에 표시된 화면을 보고, 키보드, 마우스 등을 이용하여 제어 정보를 입력한다. 어플리케이션 제어 정보 송신부(32)는 서버(4)로 어플리케이션 제어 정보 입력부(31)에 입력받은 제어 정보를 네트워크를 통하여 송신한다. 윈도우 속성 정보 수신부(33)는 어플리케이션 제어 정보 송신부(32)에서 송신된 제어 정보를 수신한 서버(4)로부터 윈도우 각각에 대한 속성 정보를 수신한다.
도 7은 본 발명에 사용되는 여러 가지 메시지의 포맷의 일례를 도시한 도면이다.
도 7을 참조하면, 윈도우 속성 정보 메시지(71)는 윈도우 아이디(Window ID) 필드, 윈도우 변화 정보(Variation) 필드, 윈도우 위치 정보(x, y) 필드, 및 윈도 우 크기 정보(w, h) 필드로 구성된다. 여기에서, 윈도우 아이디 필드에는 윈도우 아이디 값이 기록되고, 윈도우 변화 정보 필드에는 윈도우 아이디 필드에 기록된 윈도우 아이디를 갖는 윈도우의 변화 정보 값이 기록되고, 윈도우 위치 정보 필드에는 윈도우의 좌상단의 좌표 값 (x, y)이 기록되고, 윈도우 크기 정보 필드에는 윈도우의 폭과 높이 값 (w, h)이 기록된다. 만약, (w, h) = (0, 0)이면 윈도우 아이디 필드에 기록된 윈도우 아이디를 갖는 윈도우는 더 이상 존재하지 않는다는 것을 나타낸다. 윈도우 속성 정보 수신부(33)는 서버(4)로부터 윈도우 아이디, 윈도우 변화 정보, 윈도우 위치 정보, 및 윈도우 크기 정보를 포함하는 윈도우 속성 정보 메시지(71)를 네트워크를 통하여 수신한다.
윈도우 인식부(34)는 윈도우 속성 정보 수신부(33)에 수신된 속성 정보를 참조하여 윈도우 각각을 인식한다. 윈도우 인식부(34)는 수신된 윈도우 속성 정보 메시지(71)에 포함된 윈도우 위치 정보 필드에 기록된 윈도우 위치 정보, 윈도우 크기 정보 필드에 기록된 윈도우 크기 정보를 참조하여 윈도우 각각을 윈도우 아이디 필드에 포함된 윈도우 아이디로서 인식한다. 도 6의 예를 들면, 동영상 윈도우(61)는 윈도우 아이디 00으로서, 이미지 윈도우(62)는 윈도우 아이디 01로서, 배너 광고 윈도우(63)는 윈도우 아이디 10으로, 입력 이벤트 윈도우(64)는 윈도우 아이디 11로 인식될 수 있다.
윈도우 화면 갱신 요청 주기 결정부(35)는 윈도우 속성 정보 수신부(33)에 수신된 속성 정보를 참조하여 윈도우 인식부(34)에서 인식된 윈도우 각각에 대한 화면 갱신 요청 주기를 결정한다. 윈도우 화면 갱신 요청 주기 결정부(35)는 수신 된 윈도우 속성 정보 메시지(71)에 포함된 윈도우 변화 정보 필드에 기록된 윈도우 변화 정보를 참조하여 윈도우 각각에 대한 화면 갱신 요청 주기를 결정한다. 도 6의 예를 들면, 윈도우 아이디 00인 동영상 윈도우(61)에 대해서는 화면 요청 주기를 짧게 결정하고, 윈도우 아이디 01인 이미지 윈도우(62)에 대해서는 화면 요청 주기를 길게 결정하고, 윈도우 아이디 10인 배너 광고 윈도우(63)에 대해서는 일반 동영상인 경우와 정지 영상 윈도우인 경우의 중간 정도로 화면 요청 주기를 결정하고, 윈도우 아이디 11인 입력 이벤트 윈도우(64)에 대해서는 화면 요청 주기를 결정하지 않는다.
도 7을 참조하면, 화면 갱신 요청 메시지(72)는 윈도우 아이디(Window ID) 필드 및 증분(Incremental) 필드로 구성된다. 여기에서, 증분(Incremental) 필드에는 윈도우 아이디 필드에 기록된 윈도우 아이디를 갖는 윈도우의 화면 전체에 대해 갱신할 것인지, 아니면 이 윈도우 화면의 변화된 부분에 대해서만 갱신할 것인지를 요청하는 값이 기록된다.
윈도우 화면 갱신 요청 송신부(36)는 서버(4)로 윈도우 속성 정보 수신부(33)에 수신된 속성 정보를 참조하여 윈도우 화면 갱신 요청 주기 결정부(35)에서 결정된 화면 갱신 요청 주기마다 윈도우 인식부(34)에서 인식된 윈도우 각각에 대한 화면 갱신 요청을 송신한다. 여기에서, 윈도우 화면 갱신 요청 송신부(36)는 수신된 윈도우 속성 정보 메시지(71)에 포함된 윈도우 위치 정보 필드에 기록된 윈도우 위치 정보, 윈도우 크기 정보 필드에 기록된 윈도우 크기 정보를 참조하여 윈도우 각각의 상관 관계를 확인한다. 도 6의 예를 들면, 윈도우 아이 디 00인 동영상 윈도우(61)가 윈도우 아이디 01인 이미지 윈도우(62)의 좌상단 부분을 가리고 있고, 윈도우 아이디 10인 배너 광고 윈도우(63)는 독립적으로 우상단에 위치하고, 윈도우 아이디 11인 입력 이벤트 윈도우(64)는 독립적으로 하단에 위치한다는 윈도우 각각의 상관 관계를 확인한다. 윈도우 화면 갱신 요청 송신부(36)는 확인된 상관 관계로부터 인식된 윈도우 중 제 1 윈도우의 갱신 부분에 대한 화면 정보가 필요한 경우에는 제 1 윈도우의 윈도우 아이디 및 제 1 윈도우의 갱신 부분에 대한 화면 정보 요청을 포함하는, 즉 증분 필드에 윈도우 화면의 변화된 부분에 대해서만 갱신할 것을 요청하는 값(예를 들면, 1)이 기록되어 있는 제 1 화면 갱신 요청 메시지를 송신하고, 인식된 윈도우 중 제 2 윈도우의 전체에 대한 화면 정보가 필요한 경우에는 제 2 윈도우의 윈도우 아이디 및 제 2 윈도우의 전체에 대한 화면 정보 요청을 포함하는, 즉 증분 필드에 윈도우 화면 전체에 대해서 갱신할 것을 요청하는 값(예를 들면, 0)이 기록되어 있는 제 2 화면 갱신 요청 메시지를 송신한다. 일반적으로는 효율적인 데이터 전송을 위하여 윈도우의 갱신된 부분만에 대한 화면 정보 요청인 제 1 화면 갱신 요청 메시지를 송신한다. 그러나, 윈도우의 전체에 대한 화면 정보가 필요한 경우에는 윈도우의 전체에 대한 화면 정보 요청인 제 2 화면 갱신 요청 메시지를 송신한다. 도 6의 예를 들면, 윈도우 아이디 00인 동영상 윈도우(61)가 사용자의 제어에 의해 좌상단으로 이동된 경우, 가려졌던 윈도우 아이디 01인 이미지 윈도우(62)의 좌상단 부분이 드러나게 된다. 이때, 드러난 부분에 대한 화면 정보가 없기 때문에 윈도우 아이디 01인 이미지 윈도우(62)에 대해서는 제 2 화면 갱신 요청 메시지를 송신하여야 한다.
윈도우 화면 특정 부분 결정부(37)는 윈도우 속성 정보 수신부(33)에 수신된 속성 정보를 참조하여 윈도우 인식부(34)에서 인식된 윈도우 각각에 대한 화면 갱신이 필요 없는 특정 부분을 결정한다. 여기에서, 윈도우 화면 특정 부분 결정부(37)는 속성 정보에 포함된 윈도우 위치 정보 및 윈도우 크기 정보를 참조하여, 윈도우 각각에 대한 화면 갱신이 필요 없는 특정 부분을 결정한다. 도 6의 예를 들면, 윈도우 아이디 00인 동영상 윈도우(61)가 클라이언트(3)에서 자체적으로 실행된 어플리케이션의 윈도우라고 가정하면, 동영상 윈도우(61)가 윈도우 아이디 01인 이미지 윈도우(62)의 좌상단 부분을 가리고 있고, 윈도우 아이디 10인 배너 광고 윈도우(63)는 독립적으로 우상단에 위치하고, 윈도우 아이디 11인 입력 이벤트 윈도우(64)는 독립적으로 하단에 위치한다는 윈도우 각각의 상관 관계를 확인한다. 확인된 상관 관계로부터 윈도우 아이디 01인 이미지 윈도우(62)의 가려진 좌상단 부분을 화면 갱신이 필요 없는 특정 부분으로 결정한다.
도 7을 참조하면, 화면 갱신 중단 요청 메시지(73)는 특정 부분 위치 정보(x, y) 필드, 특정 부분 크기 정보(w, h) 필드 및 가능(Enable) 필드로 구성된다. 여기에서, 특정 부분 위치 정보 필드에는 특정 부분의 좌상단의 좌표 값 (x, y)이 기록되고, 특정 부분 크기 정보 필드에는 특정 부분의 폭과 높이 값 (w, h)이 기록되고, 가능 필드에는 특정 부분의 화면의 갱신 중단을 요청하는 값이 기록된다.
윈도우 화면 갱신 중단 요청 송신부(38)는 윈도우 화면 특정 부분 결정부(37)에서 결정된 특정 부분에 대한 화면 갱신 중단 요청을 송신한다. 여기에 서, 윈도우 화면 갱신 중단 요청 송신부(38)는 특정 부분의 위치, 특정 부분의 크기, 및 특정 부분에 대한 화면 갱신 중단 요청을 포함하는, 즉 가능 필드에 윈도우 화면의 갱신 중단을 요청하는 값(예를 들면, 0)이 기록되어 있는 화면 갱신 중단 요청 메시지(73)를 송신한다. 상기한 바와 같이, 특정 부분, 즉 다른 윈도우에 의해 가려져 보이지 않는 부분은 클라이언트(3)에서 지역적으로 동작하는 어플리케이션을 표현하는 윈도우가 서버(4)에서 제공된 화면 정보를 표현한 윈도우를 가릴 때 주로 발생한다. 만약, 이와 같은 원인이 사라지면, 화면 갱신 중단 요청을 해제하고, 윈도우 각각에 대한 화면 갱신이 가능하도록 하여야 하는데, 가능 필드에 윈도우 화면의 갱신 가능을 요청하는 값(예를 들면, 1)이 기록되어 있는 화면 갱신 가능 요청 메시지(73)를 송신한다.
윈도우 자원 할당 정보 입력부(39)는 사용자로부터 윈도우 인식부(34)에서 인식된 윈도우 각각에 대한 자원 할당 정보를 입력받는다. 여기에서, 자원 할당 정보란 자원, 즉 데이터 전송 능력 및 작업 처리 능력 등을 윈도우 각각에 어떻게 할당할 것인가에 관한 정보이다. 만약, 어떤 윈도우에 자원이 100% 할당되었다면, 서버(4)는 오직 이 윈도우에 대해서만 화면 정보를 자주 송신해준다. 만약, 어떤 윈도우에 자원이 0% 할당되었다면, 서버(4)는 이 윈도우에 대해서는 화면 정보를 송신해주지 않는다. 만약, N 개의 윈도우 중 어느 하나에 자원이 x% 할당되었다면, 서버(4)는 나머지 N-1 개의 윈도우에 각각 (100-x)/(N-1)% 의 자원을 할당받는다.
도 7을 참조하면, 자원 할당 정보 메시지(74)는 윈도우 아이디(Window ID) 필드 및 자원 할당 정보(Resource Allocation) 필드로 구성된다. 여기에서, 자원 할당 정보 필드에는 윈도우 아이디 필드에 기록된 윈도우 아이디를 갖는 윈도우에 할당된 자원의 퍼센트 값이 기록된다.
윈도우 자원 할당 정보 송신부(310)는 윈도우 자원 할당 정보 입력부(39)에서 입력받은 자원 할당 정보를 송신한다. 여기에서, 윈도우 자원 할당 정보 송신부(310)는 윈도우 아이디 및 윈도우 아이디를 갖는 윈도우에 대한 자원 할당 정보를 포함하는 자원 할당 정보 메시지(74)를 송신한다. 도 6의 예를 들면, 사용자가 윈도우 아이디 00인 동영상 윈도우(61)에 대해서만 관심이 있는 경우, 사용자는 키보드, 마우스 등의 입력 장치를 이용하여 동영상 윈도우(61)에 자원을 100% 할당한다. 그러면, 자동적으로 윈도우 아이디 01인 이미지 윈도우(62), 윈도우 아이디 10인 배너 광고 윈도우(63), 및 윈도우 아이디 11인 입력 이벤트 윈도우(64)에는 자원이 할당되지 않을 것이다. 이와 같은 자원 할당 정보는 자원 할당 정보 메시지에 실려(74), 서버(4)로 송신된다.
서버 화면 정보 수신부(311)는 윈도우 화면 갱신 요청 송신부(35)에서 송신된 화면 갱신 요청 또는 윈도우 자원 할당 정보 송신부(310)에서 송신된 윈도우 자원 할당 정보를 수신한 서버(4)로부터 윈도우 각각에 대한 화면 정보를 수신한다. 클라이언트 화면 표시부(312)는 서버 화면 정보 수신부(311)에서 수신된 화면 정보를 이용하여, 윈도우 각각을 포함하는 화면을 표시한다.
도 5를 참조하면, 서버(4) 측 원격 제어 장치는 어플리케이션 제어 정보 수신부(41), 윈도우 속성 정보 송신부(42), 윈도우 화면 갱신 요청 수신부(43), 윈도우 화면 갱신 중단 요청 수신부(44), 윈도우 자원 할당 정보 수신부(45), 윈도우 자원 할당부(46), 및 서버 화면 정보 송신부(47)로 구성된다.
어플리케이션 제어 정보 수신부(41)는 클라이언트(3)로부터 윈도우 각각에 대응되는 어플리케이션 각각에 대한 제어 정보를 수신한다. 윈도우 속성 정보 송신부(42)는 어플리케이션 제어 정보 수신부(41)에 수신된 제어 정보에 따라 제어된 어플리케이션 각각에 대응되는 윈도우 각각에 대한 속성 정보를 송신한다. 여기에서, 윈도우 속성 정보 송신부(42)는 클라이언트(3)로 윈도우 아이디, 윈도우 변화 정보, 윈도우 위치 정보, 및 윈도우 크기 정보를 포함하는 윈도우 속성 정보 메시지(71)를 네트워크를 통하여 송신한다.
윈도우 화면 갱신 요청 수신부(43)는 윈도우 속성 정보 송신부(42)에서 송신된 속성 정보를 수신한 클라이언트(3)로부터 윈도우 각각에 대한 화면 갱신 요청을 수신한다. 여기에서, 윈도우 화면 갱신 요청 수신부(43)는 제 1 윈도우 아이디 및 갱신 부분에 대한 화면 갱신 요청을 포함하는 제 1 화면 갱신 요청 메시지(72) 및 제 2 윈도우 아이디 및 전체 부분에 대한 화면 갱신 요청을 포함하는 제 2 화면 갱신 요청 메시지(72)를 수신한다. 이때, 서버 화면 정보 송신부(47)는 윈도우 화면 갱신 요청 수신부(43)에 수신된 화면 갱신 요청에 따라 윈도우 각각에 대한 화면 정보를 송신한다. 여기에서, 서버 화면 정보 송신부(47)는 수신된 제 1 화면 갱신 요청 메시지(72)에 포함된 제 1 윈도우 아이디를 갖는 제 1 윈도우의 갱신 부분에 대한 화면 정보를 송신하고, 수신된 제 2 화면 갱신 요청 메시지(72)에 포함된 제 2 윈도우 아이디를 갖는 제 2 윈도우의 전체 부분에 대한 화면 정보를 송신한다.
윈도우 화면 갱신 중단 요청 수신부(44)는 윈도우 속성 정보 송신부(42)에서 송신된 속성 정보를 수신한 클라이언트로부터 특정 부분에 대한 화면 갱신 중단 요청을 수신한다. 여기에서, 윈도우 화면 갱신 중단 요청 수신부(44)는 특정 부분의 위치, 특정 부분의 크기, 및 화면 갱신 중단 요청을 포함하는 화면 갱신 중단 요청 메시지(73)를 수신한다. 이때, 서버 화면 정보 송신부(47)는 윈도우 화면 갱신 중단 요청 수신부(44)에 수신된 화면 갱신 중단 요청에 따라 특정 부분에 대한 화면 정보 송신을 중단한다. 여기에서, 서버 화면 정보 송신부(47)는 수신된 화면 갱신 중단 요청 메시지(73)에 포함된 특정 부분의 위치 및 특정 부분의 크기를 갖는 특정 부분에 대한 화면 정보 송신을 중단한다.
윈도우 자원 할당 정보 수신부(45)는 윈도우 속성 정보 송신부(42)에서 송신된 속성 정보를 수신한 클라이언트(3)로부터 윈도우 각각에 대한 자원 할당 정보를 수신한다. 여기에서, 윈도우 자원 할당 정보 수신부(45)는 소정의 윈도우 아이디 및 상기 윈도우 아이디를 갖는 윈도우에 대한 자원 할당 정보를 포함하는 자원 할당 정보 메시지(74)를 수신한다. 윈도우 자원 할당부(46)는 윈도우 자원 할당 정보 수신부(45)에 수신된 자원 할당 정보에 따라 윈도우 각각에 대하여 자원을 할당한다. 여기에서, 윈도우 자원 할당부(46)는 윈도우 자원 할당 정보 수신부(45)에 수신된 자원 할당 정보 메시지(74)에 포함된 윈도우 아이디를 갖는 윈도우에 대하여 수신된 자원 할당 정보 메시지(74)에 포함된 자원 할당 정보에 따른 자원을 할당한다. 이때, 서버 화면 정보 송신부(47)는 윈도우 자원 할당부(46)에서 할당된 자원에 비례하는 회수로 할당된 자원을 갖는 윈도우 각각에 대한 화면 정보를 송신한다. 도 6의 예를 들면, 윈도우 아이디 00인 동영상 윈도우(61)에 대해서 자원이 100% 할당되었음을 나타내는 정보를 포함하는 자원 할당 정보 메시지(74)를 수신한 경우, 윈도우 아이디 00인 동영상 윈도우(61)에 대하여 자원을 100% 할당하고, 윈도우 아이디 01인 이미지 윈도우(62), 윈도우 아이디 10인 배너 광고 윈도우(63), 및 윈도우 아이디 11인 입력 이벤트 윈도우(64)에는 자원을 할당하지 않는다. 이에 따라, 자원이 100% 할당된 동영상 윈도우(61)에 대해서만 서버(4)의 모든 자원을 총 동원하여 자주 화면 정보를 클라이언트(3)로 송신한다.
어플리케이션 제어 정보 수신부(41)는 서버 화면 정보 송신부(47)에서 송신된 화면 정보를 수신한 클라이언트(3)로부터 윈도우 각각에 대응되는 어플리케이션 각각에 대한 제어 정보를 다시 수신한다.
도 8은 본 발명의 바람직한 일 실시예에 따른 클라이언트 측 원격 제어 방법의 흐름도이다.
도 8을 참조하면, 클라이언트 측 원격 제어 방법은 다음과 같은 단계로 구성된다.
서버로부터 윈도우 각각에 대한 속성 정보를 수신한다(81). 여기에서, 윈도우 아이디, 윈도우 변화 정보, 윈도우 위치 정보, 및 윈도우 크기 정보를 포함하는 윈도우 속성 정보 메시지를 수신한다. 이어서, 수신된 속성 정보를 참조하여 윈도우 각각을 인식한다(82). 여기에서, 수신된 속성 정보에 포함된 윈도우 위치 정보 및 윈도우 크기 정보를 참조하여 윈도우 각각을 수신된 속성 정보에 포함된 윈도우 아이디로서 인식한다. 이어서, 수신된 속성 정보를 참조하여 인식된 윈도우 각각에 대한 화면 갱신 요청 주기를 결정하고(83), 이어서 서버로 수신된 속성 정보를 참 조하여 결정된 화면 갱신 요청 주기마다 인식된 윈도우 각각에 대한 화면 갱신 요청을 송신한다(84). 여기에서, 수신된 속성 정보에 포함된 윈도우 변화 정보를 참조하여 인식된 윈도우 각각에 대한 화면 갱신 요청 주기를 결정하고, 수신된 속성 정보에 포함된 윈도우 위치 정보 및 윈도우 크기 정보를 참조하여 인식된 윈도우 각각의 상관 관계를 확인하고, 확인된 상관 관계로부터 인식된 윈도우 중 제 1 윈도우의 갱신 부분에 대한 화면 정보가 필요한 경우에는 제 1 윈도우의 윈도우 아이디 및 제 1 윈도우의 갱신 부분에 대한 화면 정보 요청을 포함하는 제 1 화면 갱신 요청 메시지를 송신하고, 인식된 윈도우 중 제 2 윈도우의 전체에 대한 화면 정보가 필요한 경우에는 제 2 윈도우의 윈도우 아이디 및 제 2 윈도우의 전체에 대한 화면 정보 요청을 포함하는 제 2 화면 갱신 요청 메시지를 송신한다.
또는, 수신된 속성 정보를 참조하여 인식된 윈도우 각각에 대한 화면 갱신이 필요 없는 특정 부분을 결정하고(85), 이어서 결정된 특정 부분에 대한 화면 갱신 중단 요청을 송신한다(86). 여기에서, 속성 정보에 포함된 윈도우 위치 정보 및 윈도우 크기 정보를 참조하여 인식된 윈도우 각각의 상관 관계를 확인하고, 확인된 상관 관계로부터 윈도우 각각에 대한 화면 갱신이 필요 없는 특정 부분을 결정하고, 특정 부분의 위치, 특정 부분의 크기, 및 특정 부분에 대한 화면 갱신 중단 요청을 포함하는 화면 갱신 중단 요청 메시지를 송신한다.
또는, 사용자로부터 인식된 윈도우 각각에 대한 자원 할당 정보를 입력받고(87), 이어서 입력받은 자원 할당 정보를 송신한다(88). 여기에서, 소정의 윈도우 아이디 및 윈도우 아이디를 갖는 윈도우에 대한 자원 할당 정보를 포함하는 자원 할당 정보 메시지를 송신한다.
이어서, 송신된 화면 갱신 요청 또는 송신된 윈도우 자원 할당 정보를 수신한 서버로부터 윈도우 각각에 대한 화면 정보를 수신한다(89). 이어서, 수신된 화면 정보를 이용하여, 윈도우 각각을 포함하는 화면을 표시한다(810). 이어서, 사용자로부터 표시된 화면에 포함된 윈도우 각각에 대응되는 어플리케이션 각각에 대한 제어 정보를 입력받는다(811). 이어서, 서버로 입력받은 제어 정보를 송신한다(812). 이어서, 송신된 제어 정보를 수신한 서버로부터 윈도우 각각에 대한 속성 정보를 수신하면서(81), 상기된 과정을 반복한다.
도 9는 본 발명의 바람직한 일 실시예에 따른 서버 측 원격 제어 방법의 흐름도이다.
도 9를 참조하면, 서버 측 원격 제어 방법은 다음과 같은 단계로 구성된다.
클라이언트로 윈도우 각각에 대한 속성 정보를 송신한다(91). 여기에서, 윈도우 아이디, 윈도우 변화 정보, 윈도우 위치 정보, 및 윈도우 크기 정보를 포함하는 윈도우 속성 정보 메시지를 송신한다. 이어서, 송신된 속성 정보를 수신한 클라이언트로부터 윈도우 각각에 대한 화면 갱신 요청을 수신하고(92), 이어서 수신된 화면 갱신 요청에 따라 윈도우 각각에 대한 화면 정보를 송신한다(93). 여기에서, 제 1 윈도우 아이디 및 갱신 부분에 대한 화면 갱신 요청을 포함하는 제 1 화면 갱신 요청 메시지 및 제 2 윈도우 아이디 및 전체 부분에 대한 화면 갱신 요청을 포함하는 제 2 화면 갱신 요청 메시지를 수신하고, 수신된 제 1 화면 갱신 요청 메시지에 포함된 제 1 윈도우 아이디를 갖는 제 1 윈도우의 갱신 부분에 대한 화면 정 보를 송신하고, 수신된 제 2 화면 갱신 요청 메시지에 포함된 제 2 윈도우 아이디를 갖는 제 2 윈도우의 전체 부분에 대한 화면 정보를 송신한다.
또한, 송신된 속성 정보를 수신한 클라이언트로부터 소정의 특정 부분에 대한 화면 갱신 중단 요청을 수신하고(94), 이어서 수신된 화면 갱신 중단 요청에 따라 특정 부분에 대한 화면 정보 송신을 중단한다(95). 여기에서, 특정 부분의 위치, 특정 부분의 크기, 및 화면 갱신 중단 요청을 포함하는 화면 갱신 중단 요청 메시지를 수신하고, 수신된 화면 갱신 중단 요청 메시지에 포함된 특정 부분의 위치 및 특정 부분의 크기를 갖는 특정 부분에 대한 화면 정보 송신을 중단한다.
또한, 송신된 속성 정보를 수신한 클라이언트로부터 윈도우 각각에 대한 자원 할당 정보를 수신하고(96), 이어서 수신된 자원 할당 정보에 따라 윈도우 각각에 대하여 자원을 할당하고(97), 이어서 할당된 자원에 비례하는 회수로 할당된 자원을 갖는 윈도우 각각에 대한 화면 정보를 송신한다(98). 여기에서, 소정의 윈도우 아이디 및 윈도우 아이디를 갖는 윈도우에 대한 자원 할당 정보를 포함하는 자원 할당 정보 메시지를 수신하고, 수신된 자원 할당 정보 메시지에 포함된 윈도우 아이디를 갖는 윈도우에 대하여 수신된 자원 할당 정보 메시지에 포함된 자원 할당 정보에 따른 자원을 할당한다.
이어서, 송신된 화면 정보를 수신한 클라이언트로부터 윈도우 각각에 대응되는 어플리케이션 각각에 대한 제어 정보를 수신한다(99). 이어서, 수신된 제어 정보에 따라 제어된 어플리케이션 각각에 대응되는 윈도우 각각에 대한 속성 정보를 송신하면서(91), 상기된 과정을 반복한다.
도 10은 본 발명의 일 실시예에 따른 원격 제어 방법의 흐름도이다.
도 10을 참조하면, 원격 제어 방법은 다음과 같은 단계로 구성된다.
디스플레이 패널에 표시된 화면에 포함된 윈도우 각각에 대한 속성 정보를 송신한다(101). 이어서, 송신된 속성 정보를 수신하고, 수신된 속성 정보를 참조하여 윈도우 각각을 인식한다(102). 이어서, 수신된 속성 정보를 참조하여 인식된 윈도우 각각에 대한 화면 갱신 요청 주기를 결정하고, 수신된 속성 정보를 참조하여 결정된 화면 갱신 요청 주기마다 인식된 윈도우 각각에 대한 화면 갱신 요청을 송신하고(103), 이어서 송신된 화면 갱신 요청을 수신하고, 수신된 화면 갱신 요청에 따라 윈도우 각각에 대한 화면 정보를 송신한다(104).
또한, 수신된 속성 정보를 참조하여 인식된 윈도우 각각에 대한 화면 갱신이 필요 없는 특정 부분을 결정하고, 결정된 특정 부분에 대한 화면 갱신 중단 요청을 송신하고(105), 이어서 송신된 화면 갱신 중단 요청을 수신하고, 수신된 화면 갱신 중단 요청에 따라 특정 부분에 대한 화면 정보 송신을 중단한다(106).
또한, 사용자로부터 인식된 윈도우 각각에 대한 자원 할당 정보를 입력받고, 입력받은 자원 할당 정보를 송신하고(107), 이어서 송신된 자원 할당 정보를 수신하고, 수신된 자원 할당 정보에 따라 표시된 화면에 포함된 윈도우 각각에 대하여 자원을 할당하고, 할당된 자원에 비례하는 회수로 할당된 자원을 갖는 윈도우 각각에 대한 화면 정보를 송신한다(108).
이어서, 104 단계에서 송신된 화면 정보 및 108 단계에서 송신된 화면 정보를 수신하고, 수신된 화면 정보를 이용하여, 윈도우 각각을 포함하는 화면을 표시 하고, 사용자로부터 표시된 화면에 포함된 윈도우 각각에 대응되는 어플리케이션에 대한 제어 정보를 입력받고, 입력받은 제어 정보를 송신한다(109). 이어서, 송신된 제어 정보를 수신한다(1010). 이어서, 수신된 제어 정보에 따라 제어된 어플리케이션 각각에 대응되는 윈도우 각각에 대한 속성 정보를 송신하면서(101), 상기된 과정을 반복한다.
한편, 상술한 본 발명의 실시예들은 컴퓨터에서 실행될 수 있는 프로그램으로 작성 가능하고, 컴퓨터로 읽을 수 있는 기록매체를 이용하여 상기 프로그램을 동작시키는 범용 디지털 컴퓨터에서 구현될 수 있다.
또한, 상술한 본 발명의 실시예에서 사용된 데이터의 구조는 컴퓨터로 읽을 수 있는 기록 매체에 여러 수단을 통하여 기록될 수 있다.
상기 컴퓨터로 읽을 수 있는 기록 매체는 마그네틱 저장 매체(예를 들면, 롬, 플로피 디스크, 하드디스크 등), 광학적 판독 매체(예를 들면, 시디롬, 디브이디 등) 및 캐리어 웨이브(예를 들면, 인터넷을 통한 전송)와 같은 저장매체를 포함한다.
이제까지, 본 발명에 대하여 바람직한 실시예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로, 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라, 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으 로 해석되어야 할 것이다.
본 발명에 따르면, 클라이언트 측에서 윈도우 각각을 인식할 수 있도록 함으로서, 클라이언트는 서버에 윈도우 위치 정보 및 크기 정보 대신 윈도우 아이디만을 전송하면 되기 때문에 네트워크를 통한 원격 제어에 있어서 데이터 전송량을 줄일 수 있다는 효과가 있다. 또한, 사용자가 윈도우 각각에 해당되는 영역을 일일이 지정해 주어야 하는 불편함을 해소할 수 있고, 윈도우가 다른 곳으로 이동되었을 경우마다 사용자가 다시 지정해 주어야 하는 불편함을 해소할 수 있다는 효과가 있다. 또한, 클라이언트 측에서 윈도우 각각에서 재생되는 컨텐츠의 성질을 파악할 수 있도록 함으로서, 재생 컨텐츠의 성질에 따른 최적의 디스플레이 환경을 제공할 수 있다는 효과가 있다. 또한, 특정 영역에 대한 화면 갱신 중단을 가능하게 하였다는 효과가 있다. 또한, 사용자의 관심도에 따라 윈도우 각각에 자원을 할당할 수 있게 함으로서, 사용자의 관심이 많은 윈도우에 대해서는 화면 갱신을 자주하고, 사용자의 관심이 적은 윈도우에 대해서는 화면 갱신을 드물게 할 수 있다는 효과가 있다.

Claims (22)

  1. 서버로부터 윈도우 각각에 대한 속성 정보를 수신하는 윈도우 속성 정보 수신부;
    상기 윈도우 속성 정보 수신부에 수신된 속성 정보를 참조하여 상기 윈도우 각각을 인식하는 윈도우 인식부;
    상기 윈도우 속성 정보 수신부에 수신된 속성 정보를 참조하여 상기 윈도우 인식부에서 인식된 윈도우 각각에 대한 화면 갱신 요청 주기를 결정하는 윈도우 화면 갱신 요청 주기 결정부; 및
    상기 서버로 상기 윈도우 속성 정보 수신부에 수신된 속성 정보를 참조하여 상기 윈도우 화면 갱신 요청 주기 결정부에서 결정된 화면 갱신 요청 주기마다 상기 윈도우 인식부에서 인식된 윈도우 각각에 대한 화면 갱신 요청을 송신하는 윈도우 화면 갱신 요청 송신부를 포함하는 것을 특징으로 하는 클라이언트 측 원격 제어 장치.
  2. 제 1 항에 있어서,
    상기 윈도우 속성 정보 수신부에 수신된 속성 정보를 참조하여 상기 윈도우 인식부에서 인식된 윈도우 각각에 대한 화면 갱신이 필요 없는 특정 부분을 결정하는 윈도우 화면 특정 부분 결정부; 및
    상기 윈도우 화면 특정 부분 결정부에서 결정된 특정 부분에 대한 화면 갱신 중단 요청을 송신하는 윈도우 화면 갱신 중단 요청 송신부를 포함하는 것을 특징으로 하는 클라이언트 측 원격 제어 장치.
  3. 제 2 항에 있어서,
    사용자로부터 상기 윈도우 인식부에서 인식된 윈도우 각각에 대한 자원 할당 정보를 입력받는 윈도우 자원 할당 정보 입력부; 및
    상기 윈도우 자원 할당 정보 입력부에서 입력받은 자원 할당 정보를 송신하는 윈도우 자원 할당 정보 송신부를 포함하는 것을 특징으로 하는 클라이언트 측 원격 제어 장치.
  4. 제 3 항에 있어서,
    상기 윈도우 화면 갱신 요청 송신부에서 송신된 화면 갱신 요청 또는 상기 윈도우 자원 할당 정보 송신부에서 송신된 윈도우 자원 할당 정보를 수신한 서버로부터 상기 윈도우 각각에 대한 화면 정보를 수신하는 서버 화면 정보 수신부;
    상기 서버 화면 정보 수신부에서 수신된 화면 정보를 이용하여, 상기 윈도우 각각을 포함하는 화면을 표시하는 클라이언트 화면 표시부;
    사용자로부터 상기 클라이언트 화면 표시부에서 표시된 화면에 포함된 윈도우 각각에 대응되는 어플리케이션 각각에 대한 제어 정보를 입력받는 어플리케이션 제어 정보 입력부; 및
    상기 서버로 상기 어플리케이션 제어 정보 입력부에 입력받은 제어 정보를 송신하는 어플리케이션 제어 정보 송신부를 포함하고,
    상기 윈도우 속성 정보 수신부는 상기 어플리케이션 제어 정보 송신부에서 송신된 제어 정보를 수신한 서버로부터 상기 윈도우 각각에 대한 속성 정보를 수신하는 것을 특징으로 하는 클라이언트 측 원격 제어 장치.
  5. 제 4 항에 있어서, 상기 속성 정보는 윈도우 아이디, 윈도우 변화 정보, 윈도우 위치 정보, 및 윈도우 크기 정보를 포함하는 것을 특징으로 하는 클라이언트 측 원격 제어 장치.
  6. 클라이언트로 윈도우 각각에 대한 속성 정보를 송신하는 윈도우 속성 정보 송신부;
    상기 윈도우 속성 정보 송신부에서 송신된 속성 정보를 수신한 클라이언트로부터 상기 윈도우 각각에 대한 화면 갱신 요청을 수신하는 윈도우 화면 갱신 요청 수신부; 및
    상기 윈도우 화면 갱신 요청 수신부에 수신된 화면 갱신 요청에 따라 상기 윈도우 각각에 대한 화면 정보를 송신하는 서버 화면 정보 송신부를 포함하는 것을 특징으로 하는 서버 측 원격 제어 장치.
  7. 제 6 항에 있어서,
    상기 윈도우 속성 정보 송신부에서 송신된 속성 정보를 수신한 클라이언트로부터 소정의 특정 부분에 대한 화면 갱신 중단 요청을 수신하는 윈도우 화면 갱신 중단 요청 수신부를 포함하고,
    상기 서버 화면 정보 송신부는 상기 윈도우 화면 갱신 중단 요청 수신부에 수신된 화면 갱신 중단 요청에 따라 상기 특정 부분에 대한 화면 정보 송신을 중단하는 것을 특징으로 하는 서버 측 원격 제어 장치.
  8. 제 7 항에 있어서,
    상기 윈도우 속성 정보 송신부에서 송신된 속성 정보를 수신한 클라이언트로부터 상기 윈도우 각각에 대한 자원 할당 정보를 수신하는 윈도우 자원 할당 정보 수신부; 및
    상기 윈도우 자원 할당 정보 수신부에 수신된 자원 할당 정보에 따라 상기 윈도우 각각에 대하여 자원을 할당하는 윈도우 자원 할당부를 포함하고,
    상기 서버 화면 정보 송신부는 상기 윈도우 자원 할당부에서 할당된 자원에 비례하는 회수로 상기 할당된 자원을 갖는 윈도우 각각에 대한 화면 정보를 송신하는 것을 특징으로 하는 서버 측 원격 제어 장치.
  9. 제 8 항에 있어서,
    상기 서버 화면 정보 송신부에서 송신된 화면 정보를 수신한 클라이언트로부터 상기 윈도우 각각에 대응되는 어플리케이션 각각에 대한 제어 정보를 수신하는 어플리케이션 제어 정보 수신부를 포함하고,
    상기 윈도우 속성 정보 송신부는 상기 어플리케이션 제어 정보 수신부에 수신된 제어 정보에 따라 제어된 어플리케이션 각각에 대응되는 윈도우 각각에 대한 속성 정보를 송신하는 것을 특징으로 하는 서버 측 원격 제어 장치.
  10. 제 9 항에 있어서, 상기 속성 정보는 윈도우 아이디, 윈도우 변화 정보, 윈 도우 위치 정보, 및 윈도우 크기 정보를 포함하는 것을 특징으로 하는 서버 측 원격 제어 장치.
  11. (a) 서버로부터 윈도우 각각에 대한 속성 정보를 수신하는 단계;
    (b) 상기 (a) 단계에서 수신된 속성 정보를 참조하여 상기 윈도우 각각을 인식하는 단계;
    (c) 상기 (a) 단계에서 수신된 속성 정보를 참조하여 상기 (b) 단계에서 인식된 윈도우 각각에 대한 화면 갱신 요청 주기를 결정하는 단계; 및
    (d) 상기 서버로 상기 (a) 단계에서 수신된 속성 정보를 참조하여 상기 (c) 단계에서 결정된 화면 갱신 요청 주기마다 상기 (b) 단계에서 인식된 윈도우 각각에 대한 화면 갱신 요청을 송신하는 단계를 포함하는 것을 특징으로 하는 클라이언트 측 원격 제어 방법.
  12. 제 11 항에 있어서,
    (e) 상기 (a) 단계에서 수신된 속성 정보를 참조하여 상기 (b) 단계에서 인식된 윈도우 각각에 대한 화면 갱신이 필요 없는 특정 부분을 결정하는 단계; 및
    (f) 상기 (e) 단계에서 결정된 특정 부분에 대한 화면 갱신 중단 요청을 송신하는 단계를 포함하는 것을 특징으로 하는 클라이언트 측 원격 제어 방법.
  13. 제 12 항에 있어서,
    (g) 사용자로부터 상기 (b) 단계에서 인식된 윈도우 각각에 대한 자원 할당 정보를 입력받는 단계; 및
    (h) 상기 (g) 단계에서 입력받은 자원 할당 정보를 송신하는 단계를 포함하는 것을 특징으로 하는 클라이언트 측 원격 제어 방법.
  14. 제 13 항에 있어서,
    (i) 상기 (d) 단계에서 송신된 화면 갱신 요청 또는 상기 (h) 단계에서 송신된 윈도우 자원 할당 정보를 수신한 서버로부터 상기 윈도우 각각에 대한 화면 정보를 수신하는 단계;
    (j) 상기 (i) 단계에서 수신된 화면 정보를 이용하여, 상기 윈도우 각각을 포함하는 화면을 표시하는 단계;
    (k) 사용자로부터 상기 (j) 단계에서 표시된 화면에 포함된 윈도우 각각에 대응되는 어플리케이션 각각에 대한 제어 정보를 입력받는 단계; 및
    (l) 상기 서버로 상기 (k) 단계에서 입력받은 제어 정보를 송신하는 단계를 포함하고,
    상기 (a) 단계는 상기 (l) 단계에서 송신된 제어 정보를 수신한 서버로부터 상기 윈도우 각각에 대한 속성 정보를 수신하는 것을 특징으로 하는 클라이언트 측 원격 제어 방법.
  15. 제 14 항에 있어서, 상기 속성 정보는 윈도우 아이디, 윈도우 변화 정보, 윈 도우 위치 정보, 및 윈도우 크기 정보를 포함하는 것을 특징으로 하는 클라이언트 측 원격 제어 방법.
  16. (a) 클라이언트로 윈도우 각각에 대한 속성 정보를 송신하는 단계;
    (b) 상기 (a) 단계에서 송신된 속성 정보를 수신한 클라이언트로부터 상기 윈도우 각각에 대한 화면 갱신 요청을 수신하는 단계; 및
    (c) 상기 (b) 단계에서 수신된 화면 갱신 요청에 따라 상기 윈도우 각각에 대한 화면 정보를 송신하는 단계를 포함하는 것을 특징으로 하는 서버 측 원격 제어 방법.
  17. 제 16 항에 있어서,
    (d) 상기 (a) 단계에서 송신된 속성 정보를 수신한 클라이언트로부터 소정의 특정 부분에 대한 화면 갱신 중단 요청을 수신하는 단계를 포함하고,
    (e) 상기 (d) 단계에서 수신된 화면 갱신 중단 요청에 따라 상기 특정 부분에 대한 화면 정보 송신을 중단하는 단계를 포함하는 것을 특징으로 하는 서버 측 원격 제어 방법.
  18. 제 17 항에 있어서,
    (f) 상기 (a) 단계에서 송신된 속성 정보를 수신한 클라이언트로부터 상기 윈도우 각각에 대한 자원 할당 정보를 수신하는 단계; 및
    (g) 상기 (f) 단계에서 수신된 자원 할당 정보에 따라 상기 윈도우 각각에 대하여 자원을 할당하는 단계를 포함하고,
    (h) 상기 (g) 단계에서 할당된 자원에 비례하는 회수로 상기 할당된 자원을 갖는 윈도우 각각에 대한 화면 정보를 송신하는 단계를 포함하는 것을 특징으로 하는 서버 측 원격 제어 방법.
  19. 제 18 항에 있어서,
    (i) 상기 (h) 단계에서 송신된 화면 정보를 수신한 클라이언트로부터 상기 윈도우 각각에 대응되는 어플리케이션 각각에 대한 제어 정보를 수신하는 단계를 포함하고,
    상기 (a) 단계는 상기 (i) 단계에서 수신된 제어 정보에 따라 제어된 어플리케이션 각각에 대응되는 윈도우 각각에 대한 속성 정보를 송신하는 것을 특징으로 하는 서버 측 원격 제어 방법.
  20. 제 19 항에 있어서, 상기 속성 정보는 윈도우 아이디, 윈도우 변화 정보, 윈도우 위치 정보, 및 윈도우 크기 정보를 포함하는 것을 특징으로 하는 서버 측 원격 제어 방법.
  21. (a) 서버로부터 윈도우 각각에 대한 속성 정보를 수신하는 단계;
    (b) 상기 (a) 단계에서 수신된 속성 정보를 참조하여 상기 윈도우 각각을 인 식하는 단계;
    (c) 상기 (a) 단계에서 수신된 속성 정보를 참조하여 상기 (b) 단계에서 인식된 윈도우 각각에 대한 화면 갱신 요청 주기를 결정하는 단계; 및
    (d) 상기 서버로 상기 (a) 단계에서 수신된 속성 정보를 참조하여 상기 (c) 단계에서 결정된 화면 갱신 요청 주기마다 상기 (b) 단계에서 인식된 윈도우 각각에 대한 화면 갱신 요청을 송신하는 단계를 포함하는 것을 특징으로 하는 클라이언트 측 원격 제어 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체.
  22. (a) 클라이언트로 윈도우 각각에 대한 속성 정보를 송신하는 단계;
    (b) 상기 (a) 단계에서 송신된 속성 정보를 수신한 클라이언트로부터 상기 윈도우 각각에 대한 화면 갱신 요청을 수신하는 단계; 및
    (c) 상기 (b) 단계에서 수신된 화면 갱신 요청에 따라 상기 윈도우 각각에 대한 화면 정보를 송신하는 단계를 포함하는 것을 특징으로 하는 서버 측 원격 제어 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체.
KR1020030070044A 2003-10-08 2003-10-08 원격 제어 장치 및 방법 KR100982511B1 (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020030070044A KR100982511B1 (ko) 2003-10-08 2003-10-08 원격 제어 장치 및 방법
US10/951,823 US8489996B2 (en) 2003-10-08 2004-09-29 Apparatus and method for remote controlling
EP04256157A EP1531393A3 (en) 2003-10-08 2004-10-05 Apparatus and method for remote controlling of Windows in Client-Server environment
CN2004100805806A CN1606309B (zh) 2003-10-08 2004-10-08 用于遥控的设备及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020030070044A KR100982511B1 (ko) 2003-10-08 2003-10-08 원격 제어 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20050034201A KR20050034201A (ko) 2005-04-14
KR100982511B1 true KR100982511B1 (ko) 2010-09-16

Family

ID=34420554

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020030070044A KR100982511B1 (ko) 2003-10-08 2003-10-08 원격 제어 장치 및 방법

Country Status (4)

Country Link
US (1) US8489996B2 (ko)
EP (1) EP1531393A3 (ko)
KR (1) KR100982511B1 (ko)
CN (1) CN1606309B (ko)

Families Citing this family (57)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6856448B2 (en) * 2001-03-26 2005-02-15 Creo Inc. Spatial light modulator
US7613767B2 (en) 2003-07-11 2009-11-03 Microsoft Corporation Resolving a distributed topology to stream data
US7733962B2 (en) * 2003-12-08 2010-06-08 Microsoft Corporation Reconstructed frame caching
US7712108B2 (en) 2003-12-08 2010-05-04 Microsoft Corporation Media processing methods, systems and application program interfaces
US7900140B2 (en) * 2003-12-08 2011-03-01 Microsoft Corporation Media processing methods, systems and application program interfaces
US7735096B2 (en) 2003-12-11 2010-06-08 Microsoft Corporation Destination application program interfaces
US7831703B2 (en) * 2004-01-07 2010-11-09 Intellinx Ltd. Apparatus and method for monitoring and auditing activity of a legacy environment
US7941739B1 (en) 2004-02-19 2011-05-10 Microsoft Corporation Timeline source
US7934159B1 (en) 2004-02-19 2011-04-26 Microsoft Corporation Media timeline
US7664882B2 (en) * 2004-02-21 2010-02-16 Microsoft Corporation System and method for accessing multimedia content
US7577940B2 (en) 2004-03-08 2009-08-18 Microsoft Corporation Managing topology changes in media applications
US7669206B2 (en) 2004-04-20 2010-02-23 Microsoft Corporation Dynamic redirection of streaming media between computing devices
US20060004834A1 (en) * 2004-06-30 2006-01-05 Nokia Corporation Dynamic shortcuts
US7590750B2 (en) * 2004-09-10 2009-09-15 Microsoft Corporation Systems and methods for multimedia remoting over terminal server connections
JP4309359B2 (ja) * 2005-03-09 2009-08-05 株式会社日立製作所 パケット通信装置とその機能拡張方法
US7533189B2 (en) * 2005-06-21 2009-05-12 Microsoft Corporation Enabling a graphical window modification command to be applied to a remotely generated graphical window
JP5036178B2 (ja) * 2005-12-12 2012-09-26 株式会社ソニー・コンピュータエンタテインメント コンテンツ案内システム、コンテンツ案内方法、コンテンツ案内支援サーバ、コンテンツ案内支援方法、プログラム及び情報記憶媒体
US8878833B2 (en) * 2006-08-16 2014-11-04 Barco, Inc. Systems, methods, and apparatus for recording of graphical display
US8443398B2 (en) * 2006-11-01 2013-05-14 Skyfire Labs, Inc. Architecture for delivery of video content responsive to remote interaction
US9247260B1 (en) 2006-11-01 2016-01-26 Opera Software Ireland Limited Hybrid bitmap-mode encoding
US8711929B2 (en) * 2006-11-01 2014-04-29 Skyfire Labs, Inc. Network-based dynamic encoding
US8375304B2 (en) 2006-11-01 2013-02-12 Skyfire Labs, Inc. Maintaining state of a web page
US20080120570A1 (en) * 2006-11-22 2008-05-22 Bluetie, Inc. Methods for managing windows within an internet environment and systems thereof
US8630512B2 (en) * 2007-01-25 2014-01-14 Skyfire Labs, Inc. Dynamic client-server video tiling streaming
JP4877831B2 (ja) * 2007-06-27 2012-02-15 久美子 石井 確認システム、情報提供システム、ならびに、プログラム
US8253732B2 (en) * 2008-01-03 2012-08-28 International Business Machines Corporation Method and system for remote visualization client acceleration
JP5448344B2 (ja) * 2008-01-08 2014-03-19 株式会社Nttドコモ 情報処理装置およびプログラム
US20100057572A1 (en) * 2008-08-26 2010-03-04 Scheibe Paul O Web services and methods for supporting an electronic signboard
US8880715B2 (en) * 2008-10-23 2014-11-04 Canon Kabushiki Kaisha Remote control of a host computer
US8572162B2 (en) * 2008-12-01 2013-10-29 Novell, Inc. Adaptive screen painting to enhance user perception during remote management sessions
US8648858B1 (en) * 2009-03-25 2014-02-11 Skyfire Labs, Inc. Hybrid text and image based encoding
EP2237526A1 (en) * 2009-03-30 2010-10-06 NEC Corporation Method for optimizing the remote display transfer in thin client computing environment
JP2013507839A (ja) 2009-10-07 2013-03-04 ティー. マッケルビーン,ジョン 医療機器の遠隔監視および調節のためのシステム
CN102118404B (zh) * 2009-12-31 2013-10-09 华为技术有限公司 远程连接时未显示的屏幕区域更新通知的方法、装置和***
US20110219331A1 (en) * 2010-03-02 2011-09-08 International Business Machines Corporation Window resize on remote desktops
JP5418354B2 (ja) * 2010-03-25 2014-02-19 富士ゼロックス株式会社 情報処理装置、情報処理システム、及び情報処理プログラム
US9258541B2 (en) * 2010-08-17 2016-02-09 Lg Electronics Inc. Apparatus and method for receiving digital broadcasting signal
WO2012114519A1 (ja) * 2011-02-25 2012-08-30 株式会社日立製作所 計算機システム及び計算機の制御方法
US10983747B2 (en) * 2011-07-15 2021-04-20 Vmware, Inc. Remote desktop mirroring
WO2013027908A1 (en) * 2011-08-25 2013-02-28 Lg Electronics Inc. Mobile terminal, image display device mounted on vehicle and data processing method using the same
KR101429168B1 (ko) * 2012-05-30 2014-08-13 한국과학기술정보연구원 화면갱신 제어방법, 화면갱신 제어장치 및 그 저장매체
US9699271B2 (en) * 2013-01-29 2017-07-04 Blackberry Limited Method and apparatus for suspending screen sharing during confidential data entry
EA201300786A1 (ru) * 2013-07-17 2015-01-30 Сергей Сергеевич АЗАРОВ Способ передачи изображений
EP3276497B1 (en) * 2015-03-25 2023-07-26 Hyway Technology (Japan) Corp. Method for device control by thin client system
US11762989B2 (en) 2015-06-05 2023-09-19 Bottomline Technologies Inc. Securing electronic data by automatically destroying misdirected transmissions
JP2017072896A (ja) * 2015-10-05 2017-04-13 パイオニア株式会社 情報処理装置、情報処理方法、情報処理プログラム及び記録媒体
US20170163664A1 (en) 2015-12-04 2017-06-08 Bottomline Technologies (De) Inc. Method to secure protected content on a mobile device
US11163955B2 (en) 2016-06-03 2021-11-02 Bottomline Technologies, Inc. Identifying non-exactly matching text
JP6662748B2 (ja) * 2016-10-13 2020-03-11 日本電信電話株式会社 表示制御装置、表示制御方法、および、表示制御プログラム
US11360544B2 (en) * 2018-10-03 2022-06-14 Google Llc Power management systems and methods for a wearable computing device
US11416713B1 (en) 2019-03-18 2022-08-16 Bottomline Technologies, Inc. Distributed predictive analytics data set
US11042555B1 (en) 2019-06-28 2021-06-22 Bottomline Technologies, Inc. Two step algorithm for non-exact matching of large datasets
US11269841B1 (en) 2019-10-17 2022-03-08 Bottomline Technologies, Inc. Method and apparatus for non-exact matching of addresses
JP2020173839A (ja) * 2020-06-30 2020-10-22 パイオニア株式会社 情報処理装置、情報処理方法、情報処理プログラム及び記録媒体
US11449870B2 (en) 2020-08-05 2022-09-20 Bottomline Technologies Ltd. Fraud detection rule optimization
US11544798B1 (en) 2021-08-27 2023-01-03 Bottomline Technologies, Inc. Interactive animated user interface of a step-wise visual path of circles across a line for invoice management
US11694276B1 (en) 2021-08-27 2023-07-04 Bottomline Technologies, Inc. Process for automatically matching datasets

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10301874A (ja) 1997-04-22 1998-11-13 Internatl Business Mach Corp <Ibm> 遠隔操作方法、ネットワークを介して端末から遠隔操作されるサーバ及びhtmlファイルを格納する記憶媒体

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5349675A (en) * 1990-09-04 1994-09-20 International Business Machines Corporation System for directly displaying remote screen information and providing simulated keyboard input by exchanging high level commands
US5608426A (en) 1993-09-28 1997-03-04 Ncr Corporation Palette management for application sharing in collaborative systems
DE69523593T2 (de) * 1994-06-17 2002-09-26 Intel Corp Vorrichtung und verfahren zur aufteilung der anwendung in einer graphischen benutzerschnittstelle
WO1999007111A1 (en) 1997-07-30 1999-02-11 Sony Electronics, Inc. Method for describing the human interface features and functionality of av/c-based devices
US6151020A (en) * 1997-10-24 2000-11-21 Compaq Computer Corporation Real time bit map capture and sharing for collaborative tools
US7894474B1 (en) * 1999-09-10 2011-02-22 Koninklijke Philips Electronics N.V. Remote control of an electronic device through downloading of a control interface of the electronic device in a mobile station
US7028264B2 (en) * 1999-10-29 2006-04-11 Surfcast, Inc. System and method for simultaneous display of multiple information sources
US6587125B1 (en) * 2000-04-03 2003-07-01 Appswing Ltd Remote control system
US6738804B1 (en) * 2000-09-15 2004-05-18 Yodlee.Com, Inc. Method and apparatus for enabling sectored data refreshing of Web-site data during session
US6934740B1 (en) * 2000-09-19 2005-08-23 3Com Corporation Method and apparatus for sharing common data objects among multiple applications in a client device
TW525082B (en) 2000-11-08 2003-03-21 Avant Technology Inc Monitor collaborating system
US20020080171A1 (en) * 2000-12-22 2002-06-27 Laferriere Robert James Method and apparatus for coordinating screen views in a collaborative computing environment
US7085842B2 (en) * 2001-02-12 2006-08-01 Open Text Corporation Line navigation conferencing system
US7000008B2 (en) * 2001-04-16 2006-02-14 Sun Microsystems, Inc. Method, system, and program for providing data updates to a page including multiple regions of dynamic content
WO2002098131A1 (en) 2001-05-29 2002-12-05 Matsushita Electric Industrial Co., Ltd. Program recording system, remote control apparatus, method, and program
US7181010B2 (en) * 2002-05-24 2007-02-20 Scientific-Atlanta, Inc. Apparatus for entitling remote client devices
KR100571347B1 (ko) 2002-10-15 2006-04-17 학교법인 한국정보통신학원 사용자 선호도 기반의 멀티미디어 컨텐츠 서비스 시스템과방법 및 그 기록 매체

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10301874A (ja) 1997-04-22 1998-11-13 Internatl Business Mach Corp <Ibm> 遠隔操作方法、ネットワークを介して端末から遠隔操作されるサーバ及びhtmlファイルを格納する記憶媒体

Also Published As

Publication number Publication date
CN1606309B (zh) 2011-01-12
CN1606309A (zh) 2005-04-13
EP1531393A2 (en) 2005-05-18
US20050081158A1 (en) 2005-04-14
EP1531393A3 (en) 2006-06-28
US8489996B2 (en) 2013-07-16
KR20050034201A (ko) 2005-04-14

Similar Documents

Publication Publication Date Title
KR100982511B1 (ko) 원격 제어 장치 및 방법
US7356775B2 (en) Focus priority in window management
US7649506B2 (en) Method and apparatus for controlling image-display devices collectively
US8564501B2 (en) Image display system
MXPA01000893A (es) Acceso remoto a computadora.
KR20080055798A (ko) 가려진 데이터를 원격 클라이언트 디스플레이로부터필터링하기 위한 방법
US20140074911A1 (en) Method and apparatus for managing multi-session
CN102375718A (zh) 在无线显示表面上显示特定窗口
US20140032699A1 (en) Remote user interface in a terminal server environment
TWI495330B (zh) 有效地串流數位視訊的系統及方法
US20060284867A1 (en) Web application system, web application server device and web client device
US20050223343A1 (en) Cursor controlled shared display area
US20050289176A1 (en) Application sharing smoothness
US20150029196A1 (en) Distribution management apparatus
TW554283B (en) Data processing system for generating graphics data and method of communicating graphics data
JP2005538638A (ja) ワイヤレス投影システム
KR20050114047A (ko) 원격지에 소재하는 다수의 클라이언트들을 지원하는 방법및 서버
WO2010114512A1 (en) System and method of transmitting display data to a remote display
JPWO2011077550A1 (ja) 画面中継装置
US20140082638A1 (en) Multi-user computer system
WO2020177278A1 (zh) 数据处理方法及装置、存储介质、电子设备
CN102272719A (zh) 包括提供有经由图像共享协议进行通信的图形接口的终端和服务器的***
CN111654702B (zh) 数据传输方法及***
JP2009020723A (ja) サーバ装置およびプログラム
US7701468B2 (en) Mechanism and apparatus for construction of modular-based interactive programming guides and TV portals

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130829

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20140828

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20150828

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20160830

Year of fee payment: 7

LAPS Lapse due to unpaid annual fee