KR101430929B1 - 사용자의 입력에 즉각적인 결과를 제공할 수 있는 서비스 제공 방법, 이를 위한 시스템 및 장치 - Google Patents

사용자의 입력에 즉각적인 결과를 제공할 수 있는 서비스 제공 방법, 이를 위한 시스템 및 장치 Download PDF

Info

Publication number
KR101430929B1
KR101430929B1 KR1020120144192A KR20120144192A KR101430929B1 KR 101430929 B1 KR101430929 B1 KR 101430929B1 KR 1020120144192 A KR1020120144192 A KR 1020120144192A KR 20120144192 A KR20120144192 A KR 20120144192A KR 101430929 B1 KR101430929 B1 KR 101430929B1
Authority
KR
South Korea
Prior art keywords
information
client terminal
response information
input
user
Prior art date
Application number
KR1020120144192A
Other languages
English (en)
Other versions
KR20140076071A (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 KR1020120144192A priority Critical patent/KR101430929B1/ko
Priority to CN201380062961.9A priority patent/CN104823179B/zh
Priority to EP13862982.9A priority patent/EP2933730B1/en
Priority to PCT/KR2013/007658 priority patent/WO2014092293A1/ko
Publication of KR20140076071A publication Critical patent/KR20140076071A/ko
Application granted granted Critical
Publication of KR101430929B1 publication Critical patent/KR101430929B1/ko
Priority to US14/568,785 priority patent/US10747755B2/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/18Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
    • 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
    • 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
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45504Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • H04M1/72406User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality by software upgrading or downloading
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/038Indexing scheme relating to G06F3/038
    • G06F2203/0383Remote input, i.e. interface arrangements in which the signals generated by a pointing device are transmitted to a PC at a remote location, e.g. to a PC in a LAN

Abstract

본 발명은 서비스 장치에서의 사용자의 입력에 따른 처리 결과를 즉각적으로 제공할 수 있는 방법에 관한 것으로서, 더욱 상세하게는 클라이언트 단말로부터 특정 입력이 수신되면, 상기 입력에 따른 처리 결과를 상기 클라이언트 단말로 전송하기 이전에, 예측된 응답 정보를 상기 클라이언트 단말로 전송함으로써, 보다 신속하게 사용자의 입력에 즉각적인 결과를 제공할 수 있는 서비스 제공 방법, 이를 위한 시스템 및 장치에 관한 것이다.

Description

사용자의 입력에 즉각적인 결과를 제공할 수 있는 서비스 제공 방법, 이를 위한 시스템 및 장치{Method for immediately providing of response to user input, apparatus and system for the same}
본 발명은 서비스 장치에서의 사용자의 입력에 따른 처리 결과를 제공하는 방법에 관한 것으로서, 더욱 상세하게는 클라이언트 단말로부터 특정 입력이 수신되면, 상기 입력에 따른 처리 결과를 상기 클라이언트 단말로 전송하기 이전에, 기 저장된 예측 응답 정보를 먼저, 클라이언트 단말로 전송함으로써, 보다 신속하게 사용자의 입력에 즉각적인 결과를 제공할 수 있는 서비스 제공 방법, 이를 위한 시스템 및 장치에 관한 것이다.
기술이 발전됨에 따라, 사용자의 단말에서 구동될 수 있는 어플리케이션의 수가 증대되고 있으며, 상기 어플리케이션 구동에 필요한 단말의 사양 또한 급속히 발전하고 있다.
그러나, 사용자들은 3D 게임 등과 같이 고사양의 어플리케이션을 구동하기 위해서는 자신이 이용하고자 하는 단말이 고사양의 어플리케이션 구동에 적합한 단말인지 여부를 사전에 확인해야 하며, 만일 사용자의 단말이 고사양의 어플리케이션을 구동하기에 부족한 사양일 경우, 사용자들은 어플리케이션 자체를 이용할 수 없다는 불편함이 있다.
이에, 사용자의 단말의 사양과는 상관없이 네트워크를 통해 서비스 제공자가 제공하는 서비스에 접속하여 어플리케이션을 이용할 수 있는 클라우드 서비스가 주목 받고 있다.
최근에는 화면 가상화 기반의 클라우드 서비스가 개발되고 있는데, 화면 가상화 기반의 클라우드 서비스는 사용자의 요청에 서버에서 구동된 어플리케이션의 결과 화면을 실시간으로 사용자의 단말로 전송함으로써, 사용자는 자신의 단말에 해당 어플리케이션을 구비하고 있지 않더라도 어플리케이션을 용이하게 이용할 수 있는 서비스를 의미한다.
이러한 화면 가상화 기반의 클라우드 서비스에 있어서는 무엇보다도 사용자의 입력에 따라 즉각적인 출력 결과를 제공할 수 있는 기술의 개발이 필요하다.
한국공개특허 제2011-0094765호, 2011년 8월 24일 공개 (명칭: 움직임 예측 장치 및 방법과 영상 처리 장치)
본 발명은 상기한 종래의 문제점을 해결하기 위해 제안된 것으로서, 특히 클라이언트 단말로부터 특정 입력이 수신되면, 상기 입력에 따른 예측된 응답 정보를 상기 클라이언트 단말로 전송함으로써, 보다 신속하게 사용자의 입력에 따른 처리 결과를 제공할 수 있는 사용자의 입력에 즉각적인 결과를 제공할 수 있는 서비스 제공 방법, 이를 위한 시스템 및 장치를 제공하는 데 목적이 있다.
또한, 본 발명은 클라이언트 단말별로 입력 응답에 대한 통계를 구축하고, 통계를 기초로 예측 응답 정보를 생성함으로써, 보다 정확하게 사용자 입력에 따른 처리 결과를 클라이언트 단말로 제공할 수 있는 사용자의 입력에 즉각적인 결과를 제공할 수 있는 서비스 제공 방법, 이를 위한 시스템 및 장치를 제공하는 데 그 목적이 있다.
상술한 바와 같은 목적을 달성하기 위한 본 발명의 사용자의 입력에 즉각적인 결과를 제공할 수 있는 시스템은 사용자로부터 입력된 입력 정보를 서비스 장치로 전송하고, 서비스 장치로부터 예측 응답 정보가 수신되면, 예측 응답 정보를 출력하고, 서비스 장치로부터 실제 응답 정보가 수신되면, 예측 응답 정보를 실제 응답 정보로 교체하여 출력하는 클라이언트 단말; 및 어느 하나의 클라이언트 단말의 요청에 따라 특정 어플리케이션을 실행하고, 어플리케이션 실행에 따른 결과 정보를 클라이언트 단말로 실시간 전송하며, 클라이언트 단말로부터 입력 정보가 수신되면, 입력 정보에 대응하여 기 저장된 예측 응답 정보를 클라이언트 단말로 전송한 후, 입력 정보에 대한 실제 응답 정보를 생성하고, 예측 응답 정보와 실제 응답 정보를 비교하여 상이한 경우, 실제 응답 정보를 클라이언트 단말로 전송하는 서비스 장치;를 포함하여 구성될 수 있다.
상술한 바와 같은 목적을 달성하기 위한 본 발명의 서비스 장치는 하나 이상의 입력 정보에 대한 예측 응답 정보를 저장하는 장치 저장부; 및 어느 하나의 클라이언트 단말의 요청에 따라 특정 어플리케이션을 실행하고, 어플리케이션 실행에 따른 결과 정보를 클라이언트 단말로 실시간 전송하며, 어플리케이션 실행에 따른 결과 정보를 클라이언트 단말로 실시간 전송하는 중에 클라이언트 단말로부터 입력 정보가 수신되면, 장치 저장부에 기 저장된 입력 정보에 대한 예측 응답 정보를 클라이언트 단말로 전송한 후, 입력 정보에 대한 실제 응답 정보를 생성하고, 예측 응답 정보와 실제 응답 정보를 비교하여 상이한 경우, 실제 응답 정보를 클라이언트 단말로 전송하는 장치 제어부;를 포함하여 구성될 수 있다.
이때, 장치 저장부는 수신되는 입력 정보의 패턴에 따라 산출된 기본 예측 응답 정보 및 특정 클라이언트 단말로부터 수신되는 입력 정보의 패턴에 따라 산출된 사용자 정보별 예측 응답 정보를 더 포함할 수 있다.
또한, 장치 제어부는 클라이언트 단말로부터 입력 정보가 수신되면, 클라이언트 단말에 대응하여 생성된 사용자 정보별 예측 응답 정보가 존재하는 지 확인한 후, 존재하는 경우, 사용자 정보별 예측 응답 정보를 클라이언트 단말로 전송할 수 있다.
또한, 장치 제어부는 장치 저장부에 클라이언트 단말에 대응하여 생성된 사용자 정보별 예측 응답 정보가 존재하지 않을 경우, 입력 정보에 대응하는 기본 예측 응답 정보를 클라이언트 단말로 전송할 수 있다.
또한, 장치 제어부는 장치 저장부에 입력 정보에 대응하는 예측 응답 정보가 없을 경우, 입력 정보에 대한 실제 응답 정보를 클라이언트 단말로 전송할 수 있다.
또한, 장치 제어부는 클라이언트 단말로부터 수신된 입력 정보가 즉각적인 출력이 필요한 입력 정보인지 판단하여, 즉각적인 출력이 필요한 입력 정보일 경우에만 입력 정보에 대한 예측 응답 정보를 클라이언트 단말로 전송할 수 있다.
또한, 장치 제어부는 어플리케이션 실행에 따른 화면 데이터를 실시간 인코딩하여 클라이언트 단말로 전송할 수 있다.
상술한 바와 같은 목적을 달성하기 위한 본 발명의 서비스 제공 방법은 어느 하나의 클라이언트 단말로부터 입력 정보를 수신하는 단계; 입력 정보에 대응하여 기 저장된 예측 응답 정보를 클라이언트 단말로 전송하는 단계; 입력 정보에 대한 처리 결과인 실제 응답 정보를 생성하는 단계; 및 예측 응답 정보와 실제 응답 정보를 비교하여, 상이한 경우, 클라이언트 단말로 실제 응답 정보를 전송하는 단계;의 순으로 이뤄질 수 있다.
이때, 입력 정보를 수신하는 단계 이전에, 클라이언트 단말의 요청에 따라 특정 어플리케이션을 실행하는 단계; 및 어플리케이션 실행에 따른 결과 정보를 클라이언트 단말로 실시간 전송하는 단계;를 더 포함하여 이뤄질 수 있다.
또한, 예측 응답 정보를 클라이언트 단말로 전송하는 단계는 클라이언트 단말의 사용자 정보에 대응하여 기 저장된 입력 정보에 대한 예측 응답 정보를 검색하는 단계; 및 검색된 예측 응답 정보를 클라이언트 단말로 전송하는 단계;를 더 포함하여 이뤄질 수 있다.
또한, 예측 응답 정보를 검색하는 단계는 클라이언트 단말로부터 수신된 입력 정보가 즉각적인 출력이 필요한 입력 정보인지 판단하는 단계; 및 판단 결과, 즉각적인 출력이 필요한 입력 정보일 경우, 클라이언트 단말의 사용자 정보에 대응하여 기 저장된 입력 정보에 대한 예측 응답 정보를 검색하는 단계;를 더 포함하여 이뤄질 수 있다.
또한, 예측 응답 정보를 클라이언트 단말로 전송하는 단계에서, 입력 정보에 대응하여 기 저장된 예측 응답 정보가 존재하지 않을 경우, 입력 정보에 대한 처리 결과인 실제 응답 정보를 전송할 수 있다.
또한, 실제 응답 정보를 전송하는 단계 이후에, 사용자 정보에 대응하여 응답 정보에 대한 실제 응답 정보를 저장하는 단계; 응답 정보에 대한 실제 응답 정보를 기초로 예측 응답 정보를 생성하여 저장하는 단계;를 더 포함하여 이뤄질 수 있다.
추가로 본 발명은 상술한 사용자의 입력에 즉각적인 결과를 제공할 수 있는 서비스 제공 방법을 실행하는 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체를 제공할 수 있다.
본 발명의 사용자의 입력에 즉각적인 결과를 제공할 수 있는 서비스 제공 방법, 이를 위한 시스템 및 장치에 의하면, 클라이언트 단말로부터 특정 입력이 수신되면, 상기 입력에 따른 예측된 응답 정보를 상기 클라이언트 단말로 전송함으로써, 보다 신속하게 사용자의 입력에 따른 처리 결과를 제공할 수 있게 된다.
또한, 본 발명은 클라이언트 단말별로 입력 응답에 대한 통계를 구축하고, 통계를 기초로 예측 응답 정보를 생성함으로써, 보다 정확하게 사용자 입력에 따른 처리 결과를 클라이언트 단말로 제공할 수 있는 우수한 효과가 있다.
도 1은 본 발명의 실시 예에 따른 사용자의 입력에 즉각적인 결과를 제공할 수 있는 시스템을 개략적으로 도시한 구성도이다.
도 2는 본 발명의 실시 예에 따른 클라이언트 단말의 주요 구성을 도시한 블록도이다.
도 3은 본 발명의 실시 예에 따른 서비스 장치의 주요 구성을 도시한 블록도이다.
도 4는 본 발명의 실시 예에 따른 예측 응답 정보 DB의 보다 상세한 구조를 도시한 블록도이다.
도 5는 본 발명의 실시 예에 따른 사용자의 입력에 즉각적인 결과를 제공하는 방법에 대한 데이터 흐름도이다.
도 6은 본 발명의 실시 예에 따른 서비스 장치에서의 보다 구체적인 동작 방법에 대한 흐름도이다.
이하 첨부된 도면을 참조하여 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 실시할 수 있는 바람직한 실시예를 상세히 설명한다. 다만, 본 발명의 바람직한 실시예에 대한 동작 원리를 상세하게 설명함에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략한다. 이는 불필요한 설명을 생략함으로써 본 발명의 핵심을 흐리지 않고 더욱 명확히 전달하기 위함이다. 또한 제 1, 제 2 등의 용어는 다양한 구성요소들을 설명하기 위해 사용하는 것으로, 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용될 뿐, 상기 구성요소들을 한정하기 위해 사용되지 않는다.
또한, 도면 전체에 걸쳐 유사한 기능 및 작용을 하는 부분에 대해서는 동일한 도면 부호를 사용한다.
이하, 본 발명의 실시 예에 따른 사용자의 입력에 즉각적인 결과를 제공할 수 있는 시스템에 대해 설명하도록 한다.
도 1은 본 발명의 실시 예에 따른 사용자의 입력에 즉각적인 결과를 제공할 수 있는 시스템을 개략적으로 도시한 구성도이다.
도 1을 참조하면, 본 발명의 사용자의 입력에 즉각적인 결과를 제공할 수 있는 시스템(100)은 하나 이상의 클라이언트 단말(10), 상기 클라이언트 단말(10)의 요청에 따라 어플리케이션을 실행하고, 상기 어플리케이션 실행 결과에 따른 결과 정보를 상기 클라이언트 단말(10)로 전송하는 서비스 장치(20) 및 통신망(30)을 포함하여 구성될 수 있다.
클라이언트 단말(10)은 통신망(30)을 통해 서비스 장치(20)에 접속을 수행하고, 서비스 장치(20)가 제공하는 다양한 기능들을 이용할 수 있다. 예컨대, 클라이언트 단말(10)은 서비스 장치(20)가 제공하는 다수의 어플리케이션 중 특정 어플리케이션의 실행을 요청하고, 상기 서비스 장치(20)로부터 상기 어플리케이션 실행에 따른 결과 정보를 수신하여 이를 화면을 통해 출력할 수 있다.
특히, 본 발명의 실시 예에 따른 클라이언트 단말(10)은 상기 어플리케이션 실행에 따른 결과 정보를 수신하여 이를 화면을 통해 출력하는 중에 사용자로부터 특정 명령에 대한 입력 정보가 인가되면 상기 입력 정보를 서비스 장치(20)로 전송하고, 상기 서비스 장치(20)로부터 수신되는 예측 응답 정보를 클라이언트 단말(10)의 화면 상에 출력하게 된다.
이후, 서비스 장치(20)로부터 실제 응답 정보가 수신되면, 클라이언트 단말(10)은 화면 상에 기 출력된 예측 응답 정보를 상기 실제 응답 정보로 교체하여 출력하게 된다.
서비스 장치(20)는 다수의 클라이언트 단말(10)로 클라우드 기반의 어플리케이션을 제공하는 장치로, 다시 말해, 어느 하나의 클라이언트 단말(10)로부터 특정 어플리케이션에 대한 요청이 수신되면, 상기 어플리케이션을 상기 서비스 장치(20) 내에서 구동하고, 이에 따른 결과만을 상기 클라이언트 단말(10)로 전송하는 역할을 수행하게 된다. 보다 정확하게 서비스 장치(20)는 어플리케이션 실행 결과에 따른 화면 데이터를 프레임 단위로 실시간 인코딩하고, 인코딩된 데이터를 상기 클라이언트 단말(10)로 전송하게 된다.
이를 위해 서비스 장치(20)는 다수의 어플리케이션을 포함하며, 상기 어플리케이션을 실행하고, 그 결과를 클라이언트 단말(10)로 전송할 수 있는 어플리케이션 실행 모듈(22_2)을 포함하여 구성될 수 있다.
특히, 본 발명의 서비스 장치(20)는 어느 하나의 클라이언트 단말(10)로부터 입력 정보가 수신되면, 상기 입력 정보에 대응하는 예측 응답 정보가 존재하는 지 확인한 후, 예측 응답 정보가 존재하는 경우, 예측 응답 정보를 상기 클라이언트 단말(10)로 전송하게 된다. 여기서, 예측 응답 정보는 입력 정보에 대한 실제 처리 결과가 아니라, 과거의 실제 응답 정보를 기초로 생성된 예측 응답 정보를 의미한다.
예를 들어 설명하면, 일반적인 클라우드 서비스를 제공하는 장치는 사용자로부터 'T'라는 문자 입력 정보가 인가되면, 현재 실행 중인 어플리케이션 내에 상기 문자 입력 정보에 대한 처리 결과('T'의 표시를 정의하는 폰트 정보 등)를 생성한 후, 처리 결과에 대한 화면 데이터를 인코딩하여 사용자의 클라이언트 단말(10)로 제공하게 된다.
그런데, 이 경우 사용자가 클라우드 서비스를 제공하는 장치로 입력 정보를 전송한 후 이에 대한 응답 정보를 수신하여 자신의 단말의 화면을 통해 출력하기까지는 시간 지연이 필수적으로 발생되게 된다.
이러한 문제점을 해결하기 위해, 본 발명의 실시 예에서는 클라우드 서비스를 제공하는 서비스 장치(20)가 어느 하나의 클라이언트 단말(10)로부터 입력 정보, 예컨대 'T'라는 문자 입력 정보가 수신되면, 상기 문자가 입력된 위치 정보를 확인한 후, 이에 대한 과거의 처리 결과 즉 과거의 'T'의 표시를 위해 생성된 폰트 정보(폰트 크기, 스타일, 색 정보 등)를 상기 위치 정보와 매핑하여 상기 클라이언트 단말(10)로 전송하게 된다.
이후, 서비스 장치(20)는 클라이언트 단말(10)로부터 수신된 입력 정보에 대한 실제 처리를 수행하고, 실제 처리에 따른 실제 응답 정보를 생성한 후, 클라이언트 단말(10)로 기 전송된 예측 응답 정보와 상기 실제 응답 정보를 비교하여, 상이할 경우에만 상기 클라이언트 단말(10)로 실제 응답 정보를 전송하게 되는 것이다.
이와 같이, 본 발명의 서비스 장치(20)는 클라이언트 단말(10)로 입력 정보에 대한 실제 처리 결과인 실제 응답 정보를 전송하기 이전에, 상기 입력 정보에 대응하는 기 저장된 예측 응답 정보가 있을 경우, 상기 예측 응답 정보를 먼저 클라이언트 단말(10)로 전송함으로써, 상기 클라이언트 단말(10)로 보다 신속하게 응답 정보를 전송할 수 있으며, 이를 통해 사용자는 지연없이 클라우드 서비스를 이용할 수 있게 된다.
본 발명의 서비스 장치(20)에서의 보다 구체적인 동작 방법에 대해서는 후술하도록 하며, 앞서 설명한 바와 같이 본 발명의 클라이언트 단말(10) 및 서비스 장치(20)는 통신망(30)을 통해 관련된 다양한 정보를 송수신하게 되며, 이때의 통신망(30)은 다양한 형태의 통신망이 이용될 수 있다.
예컨대, WLAN(Wireless LAN), 와이파이(Wi-Fi), 와이브로(Wibro), 와이맥스(Wimax), HSDPA(High Speed Downlink Packet Access) 등의 무선 통신 방식 또는 이더넷(Ethernet), xDSL(ADSL, VDSL), HFC(Hybrid Fiber Coaxial Cable), FTTC(Fiber to The Curb), FTTH(Fiber To The Home) 등의 유선 통신 방식을 이용할 수 있다.
또한, 상술한 통신 방식 이외에도 기타 널리 공지되었거나 향후 개발될 모든 형태의 통신 방식을 포함할 수 있다.
이하, 본 발명의 실시 예에 따른 클라이언트 단말(10)의 주요 구성 및 동작 방법에 대해 먼저 설명하도록 한다.
도 2는 본 발명의 실시 예에 따른 클라이언트 단말의 주요 구성을 도시한 블록도이다.
도 1 및 도 2를 참조하면, 본 발명의 클라이언트 단말(10)은 통신부(11), 입력부(12), 제어부(13), 저장부(14) 및 표시부(15)를 포함하여 구성될 수 있다.
각 구성 요소에 대해 보다 구체적으로 설명하면, 먼저, 통신부(11)는 통신망(30)을 통해 서비스 장치(20)와 관련된 다양한 정보를 송수신하는 것으로, 특히 본 발명의 통신부(11)는 사용자의 요청에 따라 특정 어플리케이션에 대한 실행 요청 정보를 상기 서비스 장치(20)로 전송하고, 상기 서비스 장치(20)로부터 어플리케이션 실행 결과에 따른 결과 정보를 수신할 수 있다.
이때, 본 발명의 통신부(11)는 서비스 장치(20)에서 구동하는 어플리케이션 실행 결과에 따라 화면 데이터를 실시간 스트리밍 형태로 수신할 수 있다. 또한 본 발명의 통신부(11)는 사용자로부터 입력된 입력 정보를 서비스 장치(20)로 전송하고, 상기 서비스 장치(20)로부터 예측 응답 정보를 먼저 수신한 이후에, 실제 응답 정보를 수신할 수도 있다.
입력부(12)는 사용자로부터 입력되는 숫자 및 문자 정보 등의 다양한 정보를 입력 받고, 각종 기능을 설정 및 클라이언트 단말(10)의 기능 제어와 관련하여 입력되는 신호를 제어부(13)로 전달한다. 특히, 본 발명의 입력부(12)는 서비스 장치(20)가 제공하는 다수의 어플리케이션 중 특정 어플리케이션에 대한 실행 요청 정보를 입력 받는 역할을 수행하며, 어플리케이션 구동 중에 발생되는 다양한 기능 및 동작을 수행하기 위한 사용자의 입력을 지원하게 된다.
특히, 사용자가 요청한 어플리케이션 실행 도중에 상기 입력부(12)를 통해 입력된 입력 정보를 제어부(13)의 제어에 따라 상기 통신부(11)를 통해 서비스 장치(20)로 전송할 수 있다.
이러한, 입력부(12)는 사용자의 터치 또는 조작에 따른 입력 신호를 발생하는 키패드와 터치패드 중 적어도 하나를 포함하여 구성될 수 있다. 이때, 입력부(12)는 후술할 표시부(15)와 함께 하나의 터치패널(또는 터치스크린)의 형태로 구성되어 입력과 표시 기능을 동시에 수행할 수 있다. 또한, 입력부(12)는 키보드나 키패드와 같은 키 입력 수단, 터치센서나 터치 패드와 같은 터치 입력 수단, 자이로 센서, 지자기 센서, 가속도 센서와 근접 센서, 그리고 카메라 중 적어도 하나 이상을 포함하여 이루어지는 제스처 입력 수단 또는 음성 입력 수단 중 하나 이상을 포함할 수 있다. 이 외에도 현재 개발 중이거나 향후 개발될 수 있는 모든 형태의 입력 수단이 포함될 수 있다.
제어부(13)는 클라이언트 단말(10)의 전반적인 제어를 수행하는 것으로, 예컨대 상기 클라이언트 단말(10)을 구성하는 각 구성 요소에 전원 공급 및 기능 수행을 위한 신호의 흐름을 제어하게 된다. 이때의 제어부(13)는 운영 체제(OS, Operation System) 및 각 구성을 구동시키는 프로세스 장치, 예컨대, 중앙처리장치(CPU, Central Processing Unit)가 될 수 있다.
특히, 본 발명의 실시 예에 따른 제어부(13)는 사용자의 요청에 따라 다수의 어플리케이션을 실행할 수 있는 서비스 장치(20)로 특정 어플리케이션에 대한 실행을 요청하고, 상기 서비스 장치(20)로부터 실시간 수신되는 상기 어플리케이션에 대한 실행 결과를 수신하여 출력되는 전반적인 과정을 지원하게 된다. 이를 위해, 본 발명의 제어부(13)는 H.264 디코더와 같은 스트림 데이터 디코더(13_1)를 포함할 수 있다. 여기서 스트림 데이터 디코더(13_1)는 서비스 장치(20)가 제공하는 어플리케이션에 대한 실행 결과에 따른 화면 데이터를 실시간으로 수신하고, 수신된 상기 화면 데이터를 실시간으로 복호화하여 표시부(15)를 통해 출력하도록 지원할 수 있다.
또한, 제어부(13)는 상기 서비스 장치(20)로 사용자로부터 입력된 입력 정보를 전송한 이후에, 상기 서비스 장치(20)로부터 예측 응답 정보가 수신되면, 상기 예측 응답 정보를 표시부(15)를 통해 표시되는 것을 제어하게 된다.
또한, 상기 제어부(13)는 상기 서비스 장치(20)로부터 수신된 예측 응답 정보를 표시한 이후에, 서비스 장치(20)로부터 실제 응답 정보가 수신되면, 상기 예측 응답 정보를 상기 실제 응답 정보로 교체하여 출력하게 되게 된다. 이러한 클라이언트 단말(10)에서의 예측 응답 정보를 출력한 이후에, 실제 응답 정보가 수신되면, 실제 응답 정보로 교체하여 출력하는 상기의 과정은 실시간으로 이뤄지게 된다.
저장부(14)는 본 발명의 실시 예에 따른 기능 동작에 필요한 응용 프로그램을 비롯하여, 그 응용 프로그램 실행 중에 발생되는 다양한 데이터를 일시적으로 저장할 수 있다. 특히 본 발명의 저장부(14)는 서비스 장치(20)로부터 사용자가 요청한 어플리케이션 관련 정보가 수신되면, 이를 일시적으로 저장하는 역할을 수행할 수 있으며, 상기 어플리케이션의 실행이 중단되어, 서비스 장치(20)로부터 관련 정보가 수신되지 않으면, 상기 일시적으로 저장된 데이터는 삭제될 수 있다. 또한, 상기 서비스 장치(20)로부터 입력 정보에 대응하여 수신되는 예측 응답 정보 및 실제 응답 정보를 일시적으로 저장할 수도 있다. 상술한 바는 하나의 예시에 불과하며, 관련된 데이터들은 저장부(14)에 영구적으로 저장될 수도 있다.
이러한 저장부(14)는 크게 프로그램 영역과 데이터 영역을 포함할 수 있다. 프로그램 영역은 클라이언트 단말(10)를 부팅시키는 운영체제(OS)와 같은 단말(10) 구동을 위한 관련된 정보들을 저장하며, 데이터 영역은 클라이언트 단말(10)의 사용에 따라 발생되는 데이터가 저장되는 영역으로, 상술한 바와 같이 서비스 장치(20)로부터 수신되는 정보 등이 일시적으로 저장될 수 있다. 이러한, 저장부(14)는 플래시 메모리(flash memory), 하드디스크(hard disk), 멀티미디어 카드 마이크로(multimedia card micro) 타입의 메모리(예컨대, SD 또는 XD 메모리 등), 램(RAM), 롬(ROM) 등의 저장매체를 포함하여 구성될 수 있다.
표시부(15)는 클라이언트 단말(10)의 기능 수행 중에 발생하는 일련의 동작 상태 및 동작 결과 등에 대한 정보를 표시한다. 특히, 본 발명의 표시부(15)는 서비스 장치(20)가 제공하는 어플리케이션에 대한 처리 결과를 수신하여 표시할 수 있으며, 입력부(12)를 통해 사용자가 입력한 입력 정보에 대응하여 수신된 예측 응답 정보 및 실제 응답 정보를 표시할 수 있다.
이러한 표시부(15)는 LCD(Liquid Crystal Display), TFT-LCD(Thin Film Transistor LCD), OLED(Organic Light Emitting Diodes), 발광다이오드(LED), AMOLED(Active Matrix Organic LED), 플렉시블 디스플레이(Flexible display) 및 3차원 디스플레이(3 Dimension) 등으로 구성될 수 있다
이와 같이, 도 2를 참조하여 클라이언트 단말(10)의 주요 구성 요소에 대해 설명하였다. 그러나 도 2를 통해 도시된 구성 요소가 모두 필수 구성 요소인 것은 아니며, 도시된 구성 요소보다 많은 구성 요소에 의해 클라이언트 단말(10)이 구현될 수도 있고, 그 보다 적은 구성 요소에 의해 클라이언트 단말(10)이 구현될 수도 있다.
즉, 본 발명의 클라이언트 단말(10)은 다양한 구성 요소에 의해 서비스 장치(20)로 특정 어플리케이션의 실행을 요청하고, 상기 서비스 장치(20)로부터 수신되는 정보를 출력할 수 있으며, 사용자로부터 입력된 입력 정보를 상기 서비스 장치(20)로 전송하고 이에 대응하는 예측 응답 정보 또는 실제 응답 정보 중 어느 하나를 수신하여 출력할 수 있는 장치이다.
이러한, 본 발명의 클라이언트 단말(10)은 다양한 형태로 구현될 수 있다. 예를 들어, 본 발명의 클라이언트 단말(10)은 스마트 폰(smart phone), 타블렛 PC(Tablet PC), PDA(Personal Digital Assistants), PMP(Portable Multimedia Player), MP3 Player 등의 이동 단말기는 물론, 스마트 TV(Smart TV), 데스크탑 컴퓨터 등과 같은 고정 단말기가 사용될 수 있다.
이하, 본 발명의 실시 예에 따른 서비스 장치(20)의 주요 구성 및 동작 방법에 대해 설명하도록 한다.
도 3은 본 발명의 실시 예에 따른 서비스 장치의 주요 구성을 도시한 블록도이다.
도 1 및 도 3을 참조하면, 본 발명의 서비스 장치(20)는 장치 통신부(21), 장치 제어부(22) 및 장치 저장부(23)를 포함하여 구성될 수 있다.
먼저, 장치 통신부(21)는 통신망(30)을 통해 다수의 클라이언트 단말(10)과 관련된 정보를 송수신하는 것으로, 특히, 어느 하나의 클라이언트 단말(10)로부터 특정 어플리케이션에 대한 실행 요청 정보를 수신하고, 상기 어플리케이션 실행에 따른 결과 정보를 상기 클라이언트 단말(10)로 전송하게 된다. 또한 상기 클라이언트 단말(10)로부터 입력 정보를 수신하고, 이에 대응하는 예측 응답 정보 또는 실제 응답 정보를 클라이언트 단말(10)로 전송하게 된다.
장치 제어부(22)는 본 발명의 서비스 장치(20)의 전반적인 동작을 제어하는 것으로, 특히, 본 발명의 장치 제어부(22)는 어느 하나의 클라이언트 단말(10)로부터 특정 어플리케이션에 대한 실행 요청 정보가 수신되면, 상기 어플리케이션 실행 결과에 따른 결과 정보를 상기 클라이언트 단말(10)로 전송하게 된다.
이때, 장치 제어부(22)는 어플리케이션 실행 결과에 따른 화면 데이터, 즉 프레임 단위로 실시간 인코딩하고, 인코딩된 데이터를 상기 클라이언트 단말(10)로 상기 장치 통신부(21)를 통해 전달하게 된다.
또한, 장치 제어부(22)는 바람직하게는 상기 클라이언트 단말(10)로부터 사용자 식별 정보를 수신하고, 상기 사용자 식별 정보를 기초로 사용자 인증을 수행할 수 있다. 이를 통해, 어플리케이션에 대한 실행 요청 정보를 송신한 클라이언트 단말(10)이 서비스 장치(20)가 제공하는 서비스에 가입된 사용자의 클라이언트 단말(10)인지의 유무를 먼저 확인한 후, 가입된 사용자의 클라이언트 단말(10)인 경우에만, 상기 클라이언트 단말(10)이 요청한 어플리케이션을 제공하게 된다.
여기서, 클라이언트 단말(10)이 이용할 수 있는 어플리케이션은 다양한 종류의 어플리케이션이 될 수 있다. 예컨대, 2D 게임, 3D 게임 등의 게임 관련 어플리케이션, 워드프로세서 등의 문서 편집 어플리케이션 등 다양한 종류의 어플리케이션을 이용할 수 있다.
이와 같이, 장치 제어부(22)는 상기 클라이언트 단말(10)의 사용자 인증을 먼저 수행하고, 인증에 성공하게 되면, 상기 클라이언트 단말(10)이 요청한 어플리케이션을 실행하게 된다. 예컨대 3D 롤 플레잉 게임 어플리케이션을 실행하고, 그에 대한 결과 정보인 화면 프레임을 실시간으로 인코딩하여 상기 클라이언트 단말(10)로 전송할 수 있다.
이후, 장치 제어부(22)는 상기 실행에 따른 결과 정보를 실시간으로 클라이언트 단말(10)로 전송하는 중에, 상기 클라이언트 단말(10)로부터 입력 정보가 수신되면, 상기 입력 정보에 대응하여 기 저장된 예측 응답 정보가 후술할 장치 저장부(23)에 저장되어 있는 지 검색하게 된다.
이때, 장치 제어부(22)는 바람직하게는 상기 클라이언트 단말(10)로부터 수신된 입력 정보가 즉각적인 결과 제공이 필요한 입력 정보인지 여부를 확인한 후 기 저장된 예측 응답 정보가 존재하는 지 검색할 수 있다.
이는, 클라이언트 단말(10)로부터 수신된 입력 정보에 대응하여 즉시 기 저장된 예측 응답 정보를 제공하는 것보다는, 다소 늦게 응답 정보를 제공하더라도 정확한 실제 응답 정보를 제공해야 하는 경우가 있을 수 있으므로, 선별적으로 예측 응답 정보를 전송하기 위함이다.
예를 들어, 서비스 장치(20)가 클라이언트 단말(10)로 3D 롤 플레잉 게임 어플리케이션을 서비스하고 있는 상태라 가정한다. 이때, 여러 명의 캐릭터가 다수의 아이템을 동시에 수집하는 상황에서 클라이언트 단말(10)로부터 수신된 입력 정보가 A 아이템에 대한 수집 명령이나, 서비스 장치(20)가 B 아이템 수집에 대한 처리 결과를 클라이언트 단말(10)로 전송하더라도 사용자는 큰 불편을 느끼지 않을 것이며, 오히려, 다수의 캐릭터가 경쟁하고 있는 상황에서는 즉각적인 처리 결과가 필요할 것이다.
그러나, 이와 반대로 즉각적인 처리 결과보다는 정확한 결과를 제공받기 원하는 상황일 수 있다. 예컨대 사용자의 입력 정보가 현재 상태를 저장하기 위한 저장 명령이나, 저장 명령대신 다른 명령을 수행한다면 사용자는 큰 불편을 느낄 것이다.
이와 같이, 서비스 장치(20)의 장치 제어부(22)는 클라이언트 단말(10)로부터 수신된 입력 정보가 즉각적인 출력을 필요로 하는 입력 정보인지 여부를 먼저 판단한 후, 즉각적인 출력을 필요로 하는 경우에만, 상기 입력 정보에 대응하여 기 저장된 예측 응답 정보를 클라이언트 단말(10)로 제공할 수도 있다.
이후, 장치 제어부(22)는 입력 정보에 대응하여 기 저장된 예측 응답 정보를 클라이언트 단말(10)로 전송한 이후에, 상기 입력 정보에 대한 실제 응답 정보를 생성한다. 여기서, 장치 제어부(22)는 사용자 정보별로 입력 정보에 대응하여 예측 응답 정보를 저장하고, 상기 클라이언트 단말(10)의 사용자 정보를 기초로, 해당되는 예측 응답 정보를 클라이언트 단말(10)로 전송할 수도 있다.
문서 편집 어플리케이션을 예로 들어 설명하면, 제1 클라이언트 단말 및 제2 클라이언트 단말이 서비스 장치(20)로부터 실행되는 문서 편집 어플리케이션을 이용하고 있을 경우, 상기 제1 클라이언트 단말 및 제2 클라이언트 단말이 입력하는 입력 정보는 상이할 수 있다.
예를 들어, 제1 클라이언트 단말의 사용자는 뇌의 구조에 관심이 많은 사용자이고, 제2 클라이언트 단말의 사용자는 통신 기술에 관심이 많은 사용자라 할 경우, 제1 클라이언트 단말로부터 전송되는 입력 정보는 'brain, ischemic, stroke, intracerebral, hemorrhage' 등이 될 수 있다. 반면, 제2 클라이언트 단말로부터 전송되는 입력 정보는 'broadband, internet, session, intranet, http' 등이 될 수 있다.
이와 같이, 클라이언트 단말(10)로부터 수신되는 입력 정보에 대응하는 예측 응답 정보를 사용자 정보별로 분석하고 있는 상태에서 서비스 장치(20)는 클라이언트 단말(10)로부터 수신된 입력 정보가 'intra'일 경우, 상기 클라이언트 단말(10)의 사용자 정보를 확인한다.
상기 확인 결과, 상기 클라이언트 단말(10)의 사용자는 'intracerebral' 보다는 'intranet'을 더 많이 입력하는 사용자인 것으로 확인되면, 장치 제어부(22)는 입력 정보에 대한 예측 응답 정보로 'intranet'을 클라이언트 단말(10)로 전송하고, 이를 수신한 클라이언트 단말(10)은 상기 'intranet'을 상기 문서 편집 어플리케이션 상에 즉시 출력할 수 있게 된다.
이때, 장치 제어부(22)는 해당 사용자 정보에 대응하여 기 저장된 입력 정보에 대한 예측 응답 정보가 존재하지 않을 경우, 일반적인 기본 예측 응답 정보를 확인하여 클라이언트 단말(10)로 전송할 수도 있다.
또한, 본 발명의 장치 제어부(22)는 응답 정보에 대응하여 실제 처리된 실제 응답 정보를 기초로 예측 응답 정보를 생성한 후 장치 저장부(23)에 저장되도록 제어할 수 있다.
이때, 사용자 정보별, 어플리케이션 종류별로 응답 정보에 대응하여 예측 응답 정보를 생성할 수도 있다.
예컨대, 사용자가 문서 편집 어플리케이션을 통해 폰트 정보가 바탕체, 12포인트로 설정된 상태에서 'T'라는 문자를 입력하였을 경우, 장치 제어부(22)는 이에 대한 처리 결과(바탕체, 12포인트의 문자 'T'가 입력된 화면)를 상기 'T'에 대응하여 예측 응답 정보로 저장할 수 있다.
또한, 사용자가 문서 편집 어플리케이션을 통해 [삽입] 메뉴를 클릭했을 때 이에 대응한 실제 처리 결과는 [페이지 나누기], [그림 삽입], [도형 삽입] 등 다양한 하위 메뉴가 표시되는 화면이 될 수 있다. 장치 제어부(22)는 '마우스 포인터가 [삽입] 메뉴에 위치하고 있는 상태에서 클릭'이라는 입력 정보에 대응하여, 그 처리 결과, 즉 하위 메뉴가 드롭 다운(drop down)된 상태의 화면에 대한 정보를 예측 응답 정보로 저장할 수도 있다.
또한, 최근 A 사용자가 문서 편집 어플리케이션을 통해 'session'이라는 단어를 반복적으로 입력한 경우, 장치 제어부(22)는 상기 'se' 입력 정보에 대한 예측 응답 정보로 'session'을 생성하여 상기 장치 저장부(23)에 저장되도록 제어할 수 있다.
또한 사용자가 A 게임 어플리케이션 이용 중에 'A'를 입력하였을 경우, 상기 'A'에 대응하는 실제 응답 정보가 플레이어의 공격 행동이라면, 상기 장치 제어부(22)는 상기 A 게임 어플리케이션 식별 정보에 대응하여 'A' 입력 정보에 대한 예측 응답 정보를 '플레이어의 앞으로 공격'으로 저장한 후, 클라이언트 단말(10)로 전송한 상기 A 게임 어플리케이션의 마지막 프레임에서 플레이어의 움직임을 기초로 공격 행위에 대한 움직임을 예측하고, 이를 클라이언트 단말(10)로 전송할 수도 있다.
이를 통해, 클라이언트 단말(10)의 사용자는 자신의 입력 정보에 대응한 처리 결과를 보다 신속하게 서비스 장치(20)로부터 수신하여 확인할 수 있게 되는 것이다.
또한, 장치 제어부(22)는 상기 클라이언트 단말(10)로 예측 응답 정보를 전송한 이후에, 클라이언트 단말(10)로부터 수신된 입력 정보에 대응하는 동작을 처리하고, 실제 응답 정보를 클라이언트 단말(10)로 기 전송된 예측 응답 정보와 비교하여, 일치하지 않는 경우, 상기 실제 응답 정보를 클라이언트 단말(10)로 전송되도록 제어하게 된다.
이와 같이, 본 발명의 실시 예에 따른 서비스 장치(20)는 클라이언트 단말(10)로부터 수신된 입력 정보에 대응하여 기 저장된 예측 응답 정보를 클라이언트 단말(10)로 먼저 전송함으로써, 사용자의 입력에 즉각적인 결과를 제공할 수 있다.
더불어, 사용자의 입력에 즉각적인 출력이 필요한 입력 정보에 한해서만 예측 응답 정보를 클라이언트 단말(10)로 전송하고, 상기 예측 응답 정보를 전송한 이후에, 상기 입력 정보를 처리하여 실제 응답 정보와 기 전송한 예측 응답 정보가 상이할 경우, 실제 응답 정보를 전송함으로써, 예측 응답 정보 전송 시의 신뢰성을 보다 더 높일 수 있게 된다.
이러한 동작 수행을 위해 본 발명의 장치 제어부(22)는 클라이언트 단말(10)로부터 어플리케이션 실행 요청 정보가 수신되면, 상기 클라이언트 단말(10)의 사용자 인증을 수행하고, 클라이언트 단말(10)로부터 수신되는 입력 정보의 통계를 산출하고, 이를 분석하는 등의 제어를 수행하는 사용자 관리 모듈(22_1), 상기 클라이언트 단말(10)의 요청에 따라 어플리케이션 실행을 제어하며, 어플리케이션이 실행되는 중에 클라이언트 단말(10)로부터 입력 정보가 수신되면, 상기 입력 정보에 대응하는 예측 응답 정보를 상기 클라이언트 단말(10)로 전송한 이후에, 실제 응답 정보를 생성하고 이를 비교하여, 상이할 경우 실제 응답 정보를 전송하는 등의 제어를 수행하는 어플리케이션 실행 모듈(22_2)을 포함하여 구성될 수 있다.
장치 저장부(23)는 상술한 바와 같이 본 발명의 사용자의 입력에 즉각적인 결과를 제공하기 위한 다양한 정보들을 저장하는 것으로, 사용자 인증을 수행하기 위한 사용자 정보를 저장하는 사용자 정보 DB(23_1), 하나 이상의 어플리케이션을 저장하고 관리하는 어플리케이션 DB(23_2), 입력 정보에 대응하여 예측 응답 정보를 저장하는 예측 응답 정보 DB(23_3)을 포함하여 구성될 수 있다.
여기서 예측 응답 정보 DB(23_3)는 상술한 바와 같이 과거의 입력 정보에 대한 실제 처리 결과인 실제 응답 정보의 통계를 기반으로 산출될 수 있다. 이때, 도 4에 도시된 바와 같이, 사용자를 구분하지 않고, 입력 정보에 대한 실제 응답 정보의 통계를 기반으로 산출된 기본 예측 응답 정보(23_3a)와 사용자 정보별 입력 정보에 대한 실제 응답 정보의 통계를 기반으로 산출된 사용자 정보별 예측 응답 정보(23_3b)가 저장될 수 있다.
이상으로, 본 발명의 실시 예에 따른 서비스 장치(20)의 주요 구성 및 동작 방법에 대해 설명하였다.
본 발명의 일 실시 예에 따른 서비스 장치(20)는 클라우드 방식으로 동작하는 것을 예로 들어 설명하였으나, 일반적인 서버 기반 컴퓨팅 방식에도 용이하게 적용 가능하다.
이하, 본 발명의 실시 예에 따른 사용자의 입력에 즉각적인 결과를 제공할 수 있는 방법에 대해 설명하도록 한다.
도 5는 본 발명의 실시 예에 따른 사용자의 입력에 즉각적인 결과를 제공하는 방법에 대한 데이터 흐름도이다.
도 5를 참조하면, 먼저, 클라이언트 단말(10)은 클라우드 기반 어플리케이션 서비스를 제공하는 서비스 장치(20)로 특정 어플리케이션에 대한 실행을 요청하게 된다(S101). 이를 수신한 서비스 장치(20)는 상기 클라이언트 단말(10)의 요청에 따라 해당되는 어플리케이션을 실행하고(S103), 이에 대한 결과를 클라이언트 단말(10)로 실시간 전송하게 된다(S105).
이러한 상태에서 클라이언트 단말(10)이 상기 어플리케이션을 이용을 위한 특정 입력 정보를 클라이언트 장치(20)로 전송하게 되면(S107), 서비스 장치(20)는 상기 입력 정보에 대응하여 기 저장된 예측 응답 정보가 존재하는 지 검색하게 된다(S109).
상기 검색 결과, 기 저장된 예측 응답 정보가 존재하는 경우, 상기 클라이언트 단말(10)로 예측 응답 정보를 전송하고(S111), 클라이언트 단말(10)은 예측 응답 정보를 출력하게 된다(S113).
이후, 서비스 장치(20)는 클라이언트 단말(10)로부터 수신된 입력 정보를 실제로 처리하여(S115) 실제 응답 정보를 생성한다(S117). 이어서, 서비스 장치(20)는 클라이언트 단말(10)로 기 전송된 예측 응답 정보와 실제 응답 정보를 비교하고(S119) 상이한 경우, 실제 응답 정보를 클라이언트 단말(10)로 전송한다(S121).
이를 수신한 클라이언트 단말(10)은 예측 응답 정보를 실제 응답 정보로 교체하여 표시할 수 있으며(S123), 서비스 장치(20)는 클라이언트 단말(10)로 전송한 실제 응답 정보를 사용자 정보에 대응하여 저장한 후, 상기 실제 응답 정보를 기초로 예측 응답 정보를 생성하여 저장할 수도 있다(S125).
여기서, 실제 응답 정보를 기초로 예측 응답 정보 생성 시 서비스 장치(20)는 불필요한 정보는 삭제한 후 필요한 정보만을 예측 응답 정보로 생성할 수 있다. 예컨대, 클라이언트 단말(10)로부터 수신된 입력 정보가 문서 편집 어플리케이션 상에서 '마우스 포인터가 [삽입] 메뉴에 위치하고 있는 상태에서 클릭'이고, 이에 대한 실제 응답 정보가 하위 메뉴가 드롭 다운(drop down)된 상태의 화면에 대한 정보일 경우, 그 배경이 되는 문서 편집 어플리케이션 화면에 대한 정보는 삭제한 후, 하위 메뉴가 드롭 다운된 상태만을 예측 응답 정보로 저장할 수 있다.
이러한 상술한 과정은 실시간으로 이뤄지게 되므로, 사용자는 별다른 인지 없이 서비스 장치(20)가 제공하는 어플리케이션을 이용할 수 있으며, 사용자의 입력에 즉각적인 결과를 수신할 수 있게 된다.
이하에서는 상술한 서비스 장치(20)의 동작 방법에 대해 보다 더 구체적으로 설명하도록 한다.
도 6은 본 발명의 실시 예에 따른 서비스 장치에서의 보다 구체적인 동작 방법에 대한 흐름도이다.
도 1 및 도 6을 참조하면, 서비스 장치(20)는 클라이언트 단말(10)로부터 특정 어플리케이션에 대한 실행 요청을 수신하게 되면(S201), 상기 요청과 함께 수신된 상기 클라이언트 단말(10)의 사용자 정보를 기초로 사용자 인증을 수행하게 된다(S203).
상기 사용자 인증에 성공하게 되면, 어플리케이션을 실행하고(S205), 실행에 따른 결과 정보를 상기 클라이언트 단말(10)로 실시간 전송하게 된다(S207). 이후, 클라이언트 단말로부터 입력 정보가 수신되면(S209), 상기 입력 정보가 즉각적인 출력을 필요로 하는 입력 정보인지를 판단하게 된다(S211).
즉각적인 출력을 필요로 하는 입력 정보인 경우, 서비스 장치(20)는 클라이언트 단말(10)로 입력 정보에 대한 예측 응답 정보를 전송하기 위해, 상기 입력 정보에 대응하여 기 저장된 기 저장된 예측 응답 정보가 존재하는 판단하게 된다(S213).
상기 판단 결과, 기 저장된 예측 응답 정보가 존재하는 경우, 서비스 장치(20)는 먼저, 예측 응답 정보를 상기 클라이언트 단말(10)로 전송하게 된다(S215). 예컨대, 클라이언트 단말(10)로 문서 편집 어플리케이션 실행에 따른 처리 결과를 제공하고 있는 상태에서, 클라이언트 단말(10)로부터 수신된 입력 정보가 '마우스 포인터가 [삽입] 메뉴에 위치하고 있는 상태에서 클릭'일 경우, 서비스 장치(20)는 상기 입력 정보에 대응하는 예측 응답 정보, 즉, 하위 메뉴가 드롭 다운(drop down)된 상태의 화면에 대한 정보를 상기 클라이언트 단말(10)로 전송하게 된다.
또 다른 예로 상기 클라이언트 단말(10)로 문서 편집 어플리케이션 실행에 따른 처리 결과를 제공하고 있는 상태에서, 클라이언트 단말(10)로부터 수신된 입력 정보가 'se'일 경우, 상기 클라이언트 단말(10)의 사용자 정보에 대응하여 기 저장된 상기 'se'에 대한 예측 응답 정보, 즉 'session'을 상기 클라이언트 단말(10)로 전송하게 된다.
클라이언트 단말(10)로 예측 응답 정보를 전송한 이후에, 서비스 장치(20)는 입력 정보에 대한 동작을 실제 처리하고, 실제 응답 정보를 생성하여(S219) 상기 클라이언트 단말(10)로 기 전송한 예측 응답 정보와 비교하게 된다(S221).
상기 비교 결과, 기 전송한 예측 응답 정보와 실제 응답 정보가 서로 상이한 경우, 서비스 장치(20)는 클라이언트 단말(10)로 실제 응답 정보를 전송한다(S223).
이후, 서비스 장치(20)는 클라이언트 단말(10)로 제공된 실제 응답 정보를 기초로 예측 응답 정보를 생성하여 저장하게 된다(S225).
이와 같이, 본 발명은 클라이언트 단말(10)로부터 수신된 입력 정보에 대응하여 기 저장된 예측 응답 정보를 클라이언트 단말(10)로 먼저 전송함으로써, 사용자의 입력에 즉각적인 결과를 제공할 수 있다.
또한, 사용자의 입력에 즉각적인 출력이 필요한 입력 정보에 한해서만 예측 응답 정보를 클라이언트 단말(10)로 전송하고, 상기 예측 응답 정보를 전송한 이후에, 상기 입력 정보를 처리하여 실제 응답 정보와 기 전송한 예측 응답 정보가 상이할 경우, 실제 응답 정보를 전송함으로써, 예측 응답 정보 전송 시의 신뢰성을 보다 더 높일 수 있게 된다.
이상으로, 본 발명의 실시 예에 따른 사용자의 입력에 즉각적인 결과를 제공하는 방법에 대해 설명하였다.
본 발명의 실시 예에 따른 사용자의 입력에 즉각적인 결과를 제공하는 방법은 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있으며, 컴퓨터 시스템에 의해 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(Magnetic Media), CD-ROM(Compact Disk Read Only Memory), DVD(Digital Video Disk)와 같은 광기록 매체(Optical Media), 플롭티컬 디스크(Floptical Disk)와 같은 자기-광 매체(Magneto-Optical Media) 및 롬(ROM, Read Only Memory), 램(RAM, Random Access Memory), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치를 포함한다.
또한, 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고, 본 발명을 구현하기 위한 기능적인(functional) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있다.
이상으로 본 발명의 기술적 사상을 예시하기 위한 바람직한 실시예와 관련하여 설명하고 도시하였지만, 본 발명은 이와 같이 도시되고 설명된 그대로의 구성 및 작용에만 국한되는 것은 아니며, 기술적 사상의 범주를 이탈함없이 본 발명에 대해 다수의 변경 및 수정이 가능함을 당업자들은 잘 이해할 수 있을 것이다. 따라서 그러한 모든 적절한 변경 및 수정과 균등물들도 본 발명의 범위에 속하는 것으로 간주되어야 할 것이다.
한편 상술한 본 발명의 설명에서는 구체적인 실시 예에 관해 설명하였으나, 여러 가지 변형이 본 발명의 범위에서 벗어나지 않고 실시될 수 있다. 예컨대, 클라이언트 단말의 입력 정보에 대한 예측 응답 정보는 다양한 예측 기법을 토대로 생성될 수 있다. 과거의 실제 응답 정보의 통계를 기반으로 생성되거나, 움직임 추정 방식을 통해 예측 응답 정보를 생성할 수도 있다.
본 발명에 따른 장치에 탑재되고 본 발명에 따른 방법을 실행하는 컴퓨터 프로그램(프로그램, 소프트웨어, 소프트웨어 어플리케이션, 스크립트 혹은 코드로도 알려져 있음)은 컴파일 되거나 해석된 언어나 선험적 혹은 절차적 언어를 포함하는 프로그래밍 언어의 어떠한 형태로도 작성될 수 있으며, 독립형 프로그램이나 모듈, 컴포넌트, 서브루틴 혹은 컴퓨터 환경에서 사용하기에 적합한 다른 유닛을 포함하여 어떠한 형태로도 전개될 수 있다. 컴퓨터 프로그램은 파일 시스템의 파일에 반드시 대응하는 것은 아니다. 프로그램은 요청된 프로그램에 제공되는 단일 파일 내에, 혹은 다중의 상호 작용하는 파일(예컨대, 하나 이상의 모듈, 하위 프로그램 혹은 코드의 일부를 저장하는 파일) 내에, 혹은 다른 프로그램이나 데이터를 보유하는 파일의 일부(예컨대, 마크업 언어 문서 내에 저장되는 하나 이상의 스크립트) 내에 저장될 수 있다. 컴퓨터 프로그램은 하나의 사이트에 위치하거나 복수의 사이트에 걸쳐서 분산되어 통신 네트워크에 의해 상호 접속된 다중 컴퓨터나 하나의 컴퓨터 상에서 실행되도록 전개될 수 있다.
본 명세서는 다수의 특정한 구현물의 세부사항들을 포함하지만, 이들은 어떠한 발명이나 청구 가능한 것의 범위에 대해서도 제한적인 것으로서 이해되어서는 안되며, 오히려 특정한 발명의 특정한 실시형태에 특유할 수 있는 특징들에 대한 설명으로서 이해되어야 한다. 개별적인 실시형태의 문맥에서 본 명세서에 기술된 특정한 특징들은 단일 실시형태에서 조합하여 구현될 수도 있다. 반대로, 단일 실시형태의 문맥에서 기술한 다양한 특징들 역시 개별적으로 혹은 어떠한 적절한 하위 조합으로도 복수의 실시형태에서 구현 가능하다. 나아가, 특징들이 특정한 조합으로 동작하고 초기에 그와 같이 청구된 바와 같이 묘사될 수 있지만, 청구된 조합으로부터의 하나 이상의 특징들은 일부 경우에 그 조합으로부터 배제될 수 있으며, 그 청구된 조합은 하위 조합이나 하위 조합의 변형물로 변경될 수 있다.
마찬가지로, 특정한 순서로 도면에서 동작들을 묘사하고 있지만, 이는 바람직한 결과를 얻기 위하여 도시된 그 특정한 순서나 순차적인 순서대로 그러한 동작들을 수행하여야 한다거나 모든 도시된 동작들이 수행되어야 하는 것으로 이해되어서는 안 된다. 또한, 상술한 실시형태의 다양한 시스템 컴포넌트의 분리는 그러한 분리를 모든 실시형태에서 요구하는 것으로 이해되어서는 안되며, 설명한 프로그램 컴포넌트와 시스템들은 일반적으로 단일의 소프트웨어 제품으로 함께 통합되거나 다중 소프트웨어 제품에 패키징될 수 있다는 점을 이해하여야 한다.
본 발명은 서비스 장치에서의 사용자의 입력에 따른 처리 결과를 제공하는 방법에 관한 것으로서, 더욱 상세하게는 클라이언트 단말로부터 특정 입력이 수신되면, 상기 입력에 따른 처리 결과를 상기 클라이언트 단말로 전송하기 이전에, 예측된 응답 정보를 상기 클라이언트 단말로 전송함으로써, 보다 신속하게 사용자의 입력에 즉각적인 결과를 제공할 수 있는 서비스 제공 방법, 이를 위한 시스템 및 장치에 관한 것이다.
본 발명에 의하면, 클라이언트 단말로부터 특정 입력이 수신되면, 상기 입력에 따른 예측된 응답 정보를 상기 클라이언트 단말로 전송함으로써, 보다 신속하게 사용자의 입력에 따른 처리 결과를 제공할 수 있으며, 이를 통해 클라우드 기반 서비스 보급 확장에 이바지할 수 있다.
더불어, 본 발명은 이는 시판 또는 영업의 가능성이 충분할 뿐만 아니라 현실적으로 명백하게 실시할 수 있는 정도이므로 산업상 이용가능성이 있다.
10: 클라이언트 단말 11: 통신부 12: 입력부
13: 제어부 14: 저장부 15: 표시부
20: 서비스 장치 21: 장치 통신부 22: 장치 제어부
22_1: 사용자 관리 모듈 22_2: 어플리케이션 실행 모듈
23: 장치 저장부 23_1 사용자 정보 DB
23_2: 어플리케이션 DB 23_3: 예측 응답 정보 DB
30: 통신망
100: 사용자의 입력에 즉각적인 결과를 제공할 수 있는 시스템.

Claims (15)

  1. 사용자로부터 입력된 입력 정보를 서비스 장치로 전송하고, 상기 서비스 장치로부터 예측 응답 정보가 수신되면, 상기 예측 응답 정보를 출력하고, 상기 서비스 장치로부터 실제 응답 정보가 수신되면, 상기 예측 응답 정보를 상기 실제 응답 정보로 교체하여 출력하는 클라이언트 단말; 및
    어느 하나의 클라이언트 단말의 요청에 따라 특정 어플리케이션을 실행하고, 상기 어플리케이션 실행에 따른 결과 정보를 상기 클라이언트 단말로 실시간 전송하며, 상기 클라이언트 단말로부터 입력 정보가 수신되면, 상기 입력 정보에 대응하여 기 저장된 예측 응답 정보를 상기 클라이언트 단말로 전송한 후, 상기 입력 정보에 대한 실제 응답 정보를 생성하고, 상기 예측 응답 정보와 상기 실제 응답 정보를 비교하여 상이한 경우, 상기 실제 응답 정보를 상기 클라이언트 단말로 전송하는 서비스 장치;
    를 포함하는 것을 특징으로 사용자의 입력에 즉각적인 결과를 제공할 수 있는 시스템.
  2. 하나 이상의 입력 정보에 대한 예측 응답 정보를 저장하는 장치 저장부; 및
    어느 하나의 클라이언트 단말의 요청에 따라 특정 어플리케이션을 실행하고, 상기 어플리케이션 실행에 따른 결과 정보를 상기 클라이언트 단말로 실시간 전송하며, 상기 어플리케이션 실행에 따른 결과 정보를 상기 클라이언트 단말로 실시간 전송하는 중에 상기 클라이언트 단말로부터 입력 정보가 수신되면, 상기 장치 저장부에 기 저장된 입력 정보에 대한 예측 응답 정보를 상기 클라이언트 단말로 전송한 후, 상기 입력 정보에 대한 실제 응답 정보를 생성하고, 상기 예측 응답 정보와 상기 실제 응답 정보를 비교하여 상이한 경우, 상기 실제 응답 정보를 상기 클라이언트 단말로 전송하는 장치 제어부;
    를 포함하는 것을 특징으로 하는 서비스 장치.
  3. 제2 항에 있어서,
    상기 장치 저장부는
    수신되는 입력 정보의 패턴에 따라 산출된 기본 예측 응답 정보 및 특정 클라이언트 단말로부터 수신되는 입력 정보의 패턴에 따라 산출된 사용자 정보별 예측 응답 정보를 더 포함하는 것을 특징으로 하는 서비스 장치.
  4. 제3 항에 있어서,
    상기 장치 제어부는
    상기 클라이언트 단말로부터 입력 정보가 수신되면, 상기 클라이언트 단말에 대응하여 생성된 사용자 정보별 예측 응답 정보가 존재하는 지 확인한 후, 존재하는 경우, 상기 사용자 정보별 예측 응답 정보를 상기 클라이언트 단말로 전송하는 것을 특징으로 하는 서비스 장치.
  5. 제4 항에 있어서,
    상기 장치 제어부는
    상기 장치 저장부에 상기 클라이언트 단말에 대응하여 생성된 사용자 정보별 예측 응답 정보가 존재하지 않을 경우, 상기 입력 정보에 대응하는 기본 예측 응답 정보를 상기 클라이언트 단말로 전송하는 것을 특징으로 하는 서비스 장치.
  6. 제2 항에 있어서,
    상기 장치 제어부는
    상기 장치 저장부에 상기 입력 정보에 대응하는 예측 응답 정보가 없을 경우, 상기 입력 정보에 대한 실제 응답 정보를 상기 클라이언트 단말로 전송하는 것을 특징으로 하는 서비스 장치.
  7. 제2 항에 있어서,
    상기 장치 제어부는
    상기 클라이언트 단말로부터 수신된 입력 정보가 즉각적인 출력이 필요한 입력 정보인지 판단하여, 즉각적인 출력이 필요한 입력 정보일 경우에만 상기 입력 정보에 대한 예측 응답 정보를 상기 클라이언트 단말로 전송하는 것을 특징으로 하는 서비스 장치.
  8. 제2 항에 있어서,
    상기 장치 제어부는
    상기 어플리케이션 실행에 따른 화면 데이터를 실시간 인코딩하여 상기 클라이언트 단말로 전송하는 것을 특징으로 하는 서비스 장치.
  9. 어느 하나의 클라이언트 단말로부터 입력 정보를 수신하는 단계;
    상기 입력 정보에 대응하여 기 저장된 예측 응답 정보를 상기 클라이언트 단말로 전송하는 단계;
    상기 입력 정보에 대한 처리 결과인 실제 응답 정보를 생성하는 단계; 및
    상기 예측 응답 정보와 상기 실제 응답 정보를 비교하여, 상이한 경우, 상기 클라이언트 단말로 실제 응답 정보를 전송하는 단계;
    를 포함하는 것을 특징으로 하는 서비스 제공 방법.
  10. 제9 항에 있어서,
    상기 입력 정보를 수신하는 단계 이전에,
    상기 클라이언트 단말의 요청에 따라 특정 어플리케이션을 실행하는 단계; 및
    상기 어플리케이션 실행에 따른 결과 정보를 상기 클라이언트 단말로 실시간 전송하는 단계;
    를 더 포함하는 것을 특징으로 하는 서비스 제공 방법.
  11. 제9 항에 있어서,
    상기 예측 응답 정보를 상기 클라이언트 단말로 전송하는 단계는
    상기 클라이언트 단말의 사용자 정보에 대응하여 기 저장된 입력 정보에 대한 예측 응답 정보를 검색하는 단계; 및
    상기 검색된 예측 응답 정보를 상기 클라이언트 단말로 전송하는 단계;
    를 더 포함하는 것을 특징으로 하는 서비스 제공 방법.
  12. 제11 항에 있어서,
    상기 예측 응답 정보를 검색하는 단계는
    상기 클라이언트 단말로부터 수신된 입력 정보가 즉각적인 출력이 필요한 입력 정보인지 판단하는 단계; 및
    상기 판단 결과, 즉각적인 출력이 필요한 입력 정보일 경우, 상기 클라이언트 단말의 사용자 정보에 대응하여 기 저장된 입력 정보에 대한 예측 응답 정보를 검색하는 단계;
    를 더 포함하는 것을 특징으로 하는 서비스 제공 방법.
  13. 제9 항에 있어서,
    상기 예측 응답 정보를 상기 클라이언트 단말로 전송하는 단계에서,
    상기 입력 정보에 대응하여 기 저장된 예측 응답 정보가 존재하지 않을 경우, 상기 입력 정보에 대한 처리 결과인 실제 응답 정보를 전송하는 것을 특징으로 하는 서비스 제공 방법.
  14. 제9 항에 있어서,
    상기 실제 응답 정보를 전송하는 단계 이후에,
    사용자 정보에 대응하여 상기 응답 정보에 대한 실제 응답 정보를 저장하는 단계;
    상기 응답 정보에 대한 실제 응답 정보를 기초로 예측 응답 정보를 생성하여 저장하는 단계;
    를 더 포함하는 것을 특징으로 하는 서비스 제공 방법.
  15. 제9항 내지 제14항 중 어느 한 항에 기재된 사용자의 입력에 즉각적인 결과를 제공할 수 있는 서비스 제공 방법을 실행하는 프로그램을 기록한 컴퓨터 판독 가능한 기록매체.
KR1020120144192A 2012-12-12 2012-12-12 사용자의 입력에 즉각적인 결과를 제공할 수 있는 서비스 제공 방법, 이를 위한 시스템 및 장치 KR101430929B1 (ko)

Priority Applications (5)

Application Number Priority Date Filing Date Title
KR1020120144192A KR101430929B1 (ko) 2012-12-12 2012-12-12 사용자의 입력에 즉각적인 결과를 제공할 수 있는 서비스 제공 방법, 이를 위한 시스템 및 장치
CN201380062961.9A CN104823179B (zh) 2012-12-12 2013-08-27 用于提供用户输入的即时结果的方法及其系统和设备
EP13862982.9A EP2933730B1 (en) 2012-12-12 2013-08-27 Method for providing immediate result for user input, and system and apparatus therefor
PCT/KR2013/007658 WO2014092293A1 (ko) 2012-12-12 2013-08-27 사용자의 입력에 즉각적인 결과를 제공할 수 있는 서비스 제공 방법, 이를 위한 시스템 및 장치
US14/568,785 US10747755B2 (en) 2012-12-12 2014-12-12 Method for providing immediate result for user input, and apparatus therefor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120144192A KR101430929B1 (ko) 2012-12-12 2012-12-12 사용자의 입력에 즉각적인 결과를 제공할 수 있는 서비스 제공 방법, 이를 위한 시스템 및 장치

Publications (2)

Publication Number Publication Date
KR20140076071A KR20140076071A (ko) 2014-06-20
KR101430929B1 true KR101430929B1 (ko) 2014-08-18

Family

ID=51128490

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120144192A KR101430929B1 (ko) 2012-12-12 2012-12-12 사용자의 입력에 즉각적인 결과를 제공할 수 있는 서비스 제공 방법, 이를 위한 시스템 및 장치

Country Status (1)

Country Link
KR (1) KR101430929B1 (ko)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1069468A (ja) * 1996-06-14 1998-03-10 Internatl Business Mach Corp <Ibm> 予測レスポンスを生成する装置と方法
KR100798963B1 (ko) 1999-07-23 2008-01-28 사이트릭스 시스템스, 인크. 클라이언트 시스템에서 유저 입력에 대한 가시 응답을 즉시 제공하기 위한 시스템 및 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1069468A (ja) * 1996-06-14 1998-03-10 Internatl Business Mach Corp <Ibm> 予測レスポンスを生成する装置と方法
KR100798963B1 (ko) 1999-07-23 2008-01-28 사이트릭스 시스템스, 인크. 클라이언트 시스템에서 유저 입력에 대한 가시 응답을 즉시 제공하기 위한 시스템 및 방법

Also Published As

Publication number Publication date
KR20140076071A (ko) 2014-06-20

Similar Documents

Publication Publication Date Title
US11734028B2 (en) Modifying readable and focusable elements on a page during execution of automated scripts
CN103309927A (zh) 用于基于用户活动的动态内容更新的方法和系统
US20230013601A1 (en) Program trial method, system, apparatus, and device, and medium
US11278801B2 (en) Management of provisioning of video game during game preview
KR101471914B1 (ko) 클라우드 서비스 제공 방법, 이를 위한 시스템 및 장치
US11016633B2 (en) Intelligent support recommendations for snap-ins
US11250468B2 (en) Prompting web-based user interaction
US10747755B2 (en) Method for providing immediate result for user input, and apparatus therefor
CN112416461A (zh) 视频资源处理方法、装置、电子设备和计算机可读介质
US11223663B1 (en) Providing personalized chat communications within portable document format documents
CN111338672B (zh) 优化应用程序更新的方法、电子设备和计算机存储介质
KR20150106481A (ko) 메시지 기반 키워드 정보 제공 방법, 이를 위한 장치 및 시스템
KR102086731B1 (ko) 클라우드 스트리밍 서비스 제공 방법, 이를 위한 장치 및 시스템, 그리고 이를 위한 클라우드 스트리밍용 스크립트 코드를 기록한 컴퓨터 판독 가능한 기록매체
CN111580883B (zh) 应用程序启动方法、装置、计算机系统和介质
KR101430929B1 (ko) 사용자의 입력에 즉각적인 결과를 제공할 수 있는 서비스 제공 방법, 이를 위한 시스템 및 장치
KR101432990B1 (ko) 사용자의 입력에 즉각적인 결과를 제공할 수 있는 서비스 제공 방법, 이를 위한 시스템 및 장치
US20160350094A1 (en) Application download emulation
US20120054313A1 (en) Interpreting web application content
KR20150106180A (ko) 메시지 기반 키워드 추출 방법, 이를 위한 장치 및 시스템
KR101416597B1 (ko) 클라우드 서비스 제공 방법, 이를 위한 시스템 및 장치
KR20190011670A (ko) 컴퓨팅 장치 최적화 방법 및 이를 위한 장치
KR102150561B1 (ko) 사용자 활동 예측 기반의 클라우드 스트리밍 서비스 방법 및 이를 위한 장치
KR20140076073A (ko) 클라우드 서비스 제공 방법, 이를 위한 시스템 및 장치
KR20200077983A (ko) 자기주도 학습 방법, 전자 장치 및 컴퓨터 판독 가능 저장 매체
CN111651103A (zh) 信息提示方法及系统、电子设备及存储介质

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
FPAY Annual fee payment

Payment date: 20180711

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20190718

Year of fee payment: 6