KR20220139783A - 이동 단말기 - Google Patents

이동 단말기 Download PDF

Info

Publication number
KR20220139783A
KR20220139783A KR1020217030904A KR20217030904A KR20220139783A KR 20220139783 A KR20220139783 A KR 20220139783A KR 1020217030904 A KR1020217030904 A KR 1020217030904A KR 20217030904 A KR20217030904 A KR 20217030904A KR 20220139783 A KR20220139783 A KR 20220139783A
Authority
KR
South Korea
Prior art keywords
application
cloud server
mobile terminal
data
processor
Prior art date
Application number
KR1020217030904A
Other languages
English (en)
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 엘지전자 주식회사
Publication of KR20220139783A publication Critical patent/KR20220139783A/ko

Links

Images

Classifications

    • 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/725Cordless telephones
    • H04M1/72502Cordless telephones with one base station connected to a single line
    • H04M1/72505Radio link set-up procedures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • 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
    • 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/725Cordless telephones
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Telephone Function (AREA)

Abstract

일 실시예에 따른 이동 단말기는, 클라우드 서버와 통신하는 통신부, 어플리케이션의 실행 화면을 출력하는 디스플레이, 데이터를 저장하는 로컬 메모리, 및 상기 통신부, 상기 디스플레이, 및 상기 로컬 메모리를 제어하는 프로세서를 포함하고, 상기 프로세서는 상기 클라우드 서버에 접속한 경우, 상기 클라우드 서버에서 실행되는 상기 어플리케이션의 데이터를 동기화여 상기 로컬 메모리에 저장하고, 상기 클라우드 서버에 접속이 끊어진 경우, 동기화된 상기 어플리케이션의 데이터를 이용하여 로컬에서 상기 어플리케이션을 연속 실행하는 것을 특징으로 할 수 있다.

Description

이동 단말기
본 발명은 이동 단말기에 관한 것으로, 보다 넓어진 디스플레이를 분할 제어하는 기술 분야에 적용 가능하다.
단말기는 이동 가능여부에 따라 이동 단말기(mobile/portable terminal) 및 고정 단말기(stationary terminal)으로 나뉠 수 있다. 다시 이동 단말기는 사용자의 직접 휴대 가능 여부에 따라 휴대(형) 단말기(handheld terminal) 및 거치형 단말기(vehicle mounted terminal)로 나뉠 수 있다.
디스플레이 디바이스는 사용자가 시청할 수 있는 영상을 수신, 처리 및 표시하는 기능을 갖춘 장치이다. 디스플레이 디바이스는 예를 들어, 방송국에서 송출되는 방송신호 중 사용자가 선택한 방송을 수신하고 수신된 신호로부터 영상신호를 분리하며, 다시 분리된 영상신호를 디스플레이에 표시한다.
최근 들어, 방송기술 및 네트워크 기술의 발달로 인해 디스플레이 디바이스의 기능도 상당히 다양해져 왔으며, 상기 디바이스의 성능도 이에 따라 향상되어 왔다. 즉, 디스플레이 디바이스는 단순히 방송되는 컨텐츠 뿐만 아니라 다른 다양한 컨텐츠들을 사용자에게 제공하도록 발전해오고 있다. 예를 들어, 디스플레이 디바이스는 방송국으로부터 수신되는 프로그램뿐만 아니라 각종 어플리케이션을 이용하여 게임 플레이, 음악 감상, 인터넷 쇼핑, 사용자 맞춤정보 등도 제공할 수 있다. 이러한 확장된 기능의 수행을 위해 디스플레이 디바이스는 기본적으로 다양한 통신 프로토콜을 이용하여 다른 기기들 또는 네트워크에 연결되며, 사용자에게 상시적인 컴퓨팅 환경(ubiquitous computing)을 제공할 수 있다. 즉, 디스플레이 디바이스는 네트워크로의 연결성(connectivity) 및 상시적 컴퓨팅을 가능하게 하는 스마트 디바이스로 진화되어 있다.
최근에는 통신 서비스의 발달로 클라우드 서비스를 이용하는 이동 단말기의 생산 및 보급이 증가하고 있는 실정이다. 클라우드 서비스를 이용하는 이동 단말기는 컴퓨팅이 전기나 수도와 같이 공공재가 되어 공동으로 활용되는 클라우드 컴퓨팅(Cloud Computing)의 한 사용 예이다.
구체적으로, 클라우드 컴퓨팅이란, 가상화 컴퓨팅, 유틸리티 컴퓨팅, 온디맨드 컴퓨팅 등과 같이 다양한 컴퓨팅 개념과 통신 기술이 혼합되어 적용된 것으로, 통상적으로 다수의 컴퓨터들로 구성되는 복수의 데이터 센서를 가상화 기술로 통합하여 하나의 가상 컴퓨터 또는 서비스를 구현하고, 사용자가 이에 접속하여 각종 소프트웨어, 보안 솔루션 및 컴퓨팅 능력 등을 온디맨드 방식으로 제공하는 기술을 의미한다.
즉, 클라우드 컴퓨팅이란, 인터넷을 통한 IT 자원의 온디맨드 아웃소싱 서비스로서, 개인용 컴퓨터나 기업의 서버에 개별적으로 저장하던 프로그램이나 문서를 인터넷 기반의 가상 서버 또는 스토리지에 저장하고, 개인용 컴퓨터를 비롯한 다양한 단말을 이용하여 웹 브라우저 등의 클라우드 어플리케이션을 구동함으로써, 사용자가 원하는 작업을 수행할 수 있도록 하는 방식이다.
본 발명은 클라우드 서버에서 실행되는 어플리케이션의 화면 정보를 스트리밍 하는 이동 단말기에서, 클라우드 서버와 접속이 불가능한 경우 발생하는 끊김 문제를 해결하는데 목적이 있다.
상기 목적을 달성하기 위해, 일 실시예에 따른 이동 단말기는, 클라우드 서버와 통신하는 통신부, 어플리케이션의 실행 화면을 출력하는 디스플레이, 데이터를 저장하는 로컬 메모리, 및 상기 통신부, 상기 디스플레이, 및 상기 로컬 메모리를 제어하는 프로세서를 포함하고, 상기 프로세서는 상기 클라우드 서버에 접속한 경우, 상기 클라우드 서버에서 실행되는 상기 어플리케이션의 데이터를 동기화여 상기 로컬 메모리에 저장하고, 상기 클라우드 서버에 접속이 끊어진 경우, 동기화된 상기 어플리케이션의 데이터를 이용하여 로컬에서 상기 어플리케이션을 연속 실행하는 것을 특징으로 할 수 있다.
또한, 일 실시예에 따라, 상기 어플리케이션의 데이터는 상기 어플리케이션의 컨텍스트 데이터 및 상기 어플리케이션의 앱 데이터를 포함하는 것을 특징으로 할 수 있다.
또한, 일 실시예에 따라, 상기 프로세서는 상기 클라우드 서버에 접속한 경우, 상기 클라우드 서버에서 실행되는 상기 어플리케이션의 실행 화면을 스트리밍하여 출력하는 것을 특징으로 할 수 있다.
또한, 일 실시예에 따라, 상기 프로세서는 상기 클라우드 서버에 접속한 경우, 동기화된 상기 어플리케이션의 데이터를 이용하여 상기 어플리케이션의 실행 화면을 출력하는 것을 특징으로 할 수 있다.
또한, 일 실시예에 따라, 상기 프로세서는 상기 클라우드 서버와 접속이 끊어진 때, 상기 어플리케이션이 로컬에서 실행 중인 경우, 실행 중인 어플리케이션에 동기화된 상기 어플리케이션의 데이터를 적용하고, 상기 클라우드 서버와 접속이 끊어진 때, 상기 어플리케이션이 로컬에서 실행 중이 아닌 경우, 동기화된 상기 어플리케이션의 데이터를 적용하여 상기 어플리케이션을 실행하는 것을 특징으로 할 수 있다.
또한, 일 실시예에 따라, 상기 프로세서는 상기 클라우드 서버에 접속이 끊어진 동안 로컬에서 실행된 상기 어플리케이션의 데이터를 상기 로컬 메모리에 저장하는 것을 특징으로 할 수 있다.
또한, 일 실시예에 따라, 상기 프로세서는 상기 클라우드 서버에 다시 접속한 경우, 상기 메모리에 저장된 상기 어플리케이션의 데이터를 상기 클라우드 서버에 동기화 하는 것을 특징으로 할 수 있다.
또한, 일 실시예에 따라, 상기 프로세서는 상기 클라우드 서버에 다시 접속한 후, 상기 클라우드 서버에서 연속 실행되는 상기 어플리케이션의 데이터를 동기화하여 상기 로컬 메모리에 저장하는 것을 특징으로 할 수 있다.
또한, 일 실시예에 따라, 상기 프로세서는 상기 클라우드 서버에 다시 접속된 때, 상기 어플리케이션이 상기 클라우드 서버에서 실행 중인 경우, 실행 중인 어플리케이션에 동기화된 상기 어플리케이션의 데이터를 적용하고, 상기 클라우드 서버에 다시 접속된 때, 상기 어플리케이션이 상기 클라우드 서버에서 실행 중이 아닌 경우, 동기화된 상기 어플리케이션의 데이터를 적용하여 상기 어플리케이션을 연속 실행하는 것을 특징으로 할 수 있다.
또한, 일 실시예에 따라, 상기 프로세서는 동기화된 상기 어플리케이션이 로컬과 상기 클라우드 서버에서 버전이 상이한 경우, 양쪽 모두 최신 버전으로 업데이트하는 것을 특징으로 할 수 있다.
또한, 일 실시예에 따라, 상기 디스플레이부는 상기 프로세서의 설정 명령에 대응하여, 상기 클라우드부터 동기화되는 어플리케이션을 선택하기 위한 제1 인터페이스를 출력하는 것을 특징으로 할 수 있다.
또한, 일 실시예에 따라, 상기 디스플레이부는 상기 프로세서의 설정 명령에 대응하여, 동기화 우선 순위를 설정하기 위한 제2 인터페이스를 출력하는 것을 특징으로 할 수 있다.
또한, 일 실시예에 따라, 상기 디스플레이부는 상기 프로세서의 설정 명령에 대응하여, 동기화 시간 간격을 설정기 위한 제3 인터페이스를 출력하는 것을 특징으로 할 수 있다.
상기 목적에 따라, 일 실시예에 따른 이동 단말기는, 클라우드 서버에서 실행되는 어플리케이션의 화면 정보를 스트리밍하는 도중, 접속이 끓어지더라도 연속되는 화면 정보를 출력할 수 있다.
또한, 일 실시예에 따른 이동 단말기는, 클라우드 서버에 다시 접속된 경우, 접속된 시점부터 연결하여 클라우드 서버에서 화면 정보를 스트리밍할 수 있다.
도 1은 본 발명과 관련된 이동 단말기를 설명하기 위한 블록도이다.
도 2는 일 실시예에 따라 클라우드 서비스를 제공하는 시스템을 나타낸 구성도이다.
도 3은 일 실시예에 따른 이동 단말기가 클라우드 서버에서 실행되는 어플리케이션을 끊김 없이 제공하는 프로세서를 설명하기 위한 개념도이다.
도 4는 클라우드 서버에서 어플리케이션을 실행하는 도중 접속에 장애가 발생한 경우의 프로세서를 설명하기 위한 흐름도이다.
도 5는 도 4와 관련하여 이동 단말기 및 클라우드 서버 간 신호 흐름을 도시하고 있다.
도 6은 로컬에서 어플리케이션을 실행하는 도중 접속이 복구된 경우의 프로세서를 설명하기 위한 흐름도이다.
도 7은 도 6과 관련하여 이동 단말기 및 클라우드 서버 간 신호 흐름을 도시하고 있다.
도 8은 클라우드 서버와의 접속 장애 및 복구에 대응하여 어플리케이션의 실행 화면이 연속적으로 제공되는 프로세서를 설명하기 위한 개념도이다.
도 9는 동기화되는 어플리케이션을 선택할 수 있는 제1 인터페이스를 도시하고 있다.
도 10은 동기화 주기를 설정할 수 있는 제2 인터페이스를 도시하고 있다.
이하, 첨부된 도면을 참조하여 본 명세서에 개시된 실시예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 유사한 구성요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 이하의 설명에서 사용되는 구성요소에 대한 접미사 "모듈" 및 "부"는 명세서 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다. 또한, 본 명세서에 개시된 실시예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 명세서에 개시된 실시예의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 첨부된 도면은 본 명세서에 개시된 실시예를 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 본 명세서에 개시된 기술적 사상이 제한되지 않으며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되지는 않는다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다.
본 출원에서, "포함한다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
도 1은 본 발명과 관련된 이동 단말기를 설명하기 위한 블록도이다.
상기 이동 단말기(100)는 무선 통신부(110), 입력부(120), 센싱부(140), 출력부(150), 인터페이스부(160), 메모리(170), 제어부(180) 및 전원 공급부(190) 등을 포함할 수 있다. 도 1에 도시된 구성요소들은 이동 단말기를 구현하는데 있어서 필수적인 것은 아니어서, 본 명세서 상에서 설명되는 이동 단말기는 위에서 열거된 구성요소들 보다 많거나, 또는 적은 구성요소들을 가질 수 있다.
보다 구체적으로, 상기 구성요소들 중 무선 통신부(110)는, 이동 단말기(100)와 무선 통신 시스템 사이, 이동 단말기(100)와 다른 이동 단말기(100) 사이, 또는 이동 단말기(100)와 외부서버 사이의 무선 통신을 가능하게 하는 하나 이상의 모듈을 포함할 수 있다. 또한, 상기 무선 통신부(110)는, 이동 단말기(100)를 하나 이상의 네트워크에 연결하는 하나 이상의 모듈을 포함할 수 있다.
이러한 무선 통신부(110)는, 방송 수신 모듈(111), 이동통신 모듈(112), 무선 인터넷 모듈(113), 근거리 통신 모듈(114), 위치정보 모듈(115) 중 적어도 하나를 포함할 수 있다.
먼저, 무선 통신부(110)에 대하여 살펴보면, 무선 통신부(110)의 방송 수신 모듈(111)은 방송 채널을 통하여 외부의 방송 관리 서버로부터 방송 신호 및/또는 방송 관련된 정보를 수신한다. 상기 방송 채널은 위성 채널, 지상파 채널을 포함할 수 있다. 적어도 두 개의 방송 채널들에 대한 동시 방송 수신 또는 방송 채널 스위칭을 위해 둘 이상의 상기 방송 수신 모듈이 상기 이동단말기(100)에 제공될 수 있다.
이동통신 모듈(112)은, 이동통신을 위한 기술표준들 또는 통신방식(예를 들어, GSM(Global System for Mobile communication), CDMA(Code Division Multi Access), CDMA2000(Code Division Multi Access 2000), EV-DO(Enhanced Voice-Data Optimized or Enhanced Voice-Data Only), WCDMA(Wideband CDMA), HSDPA(High Speed Downlink Packet Access), HSUPA(High Speed Uplink Packet Access), LTE(Long Term Evolution), LTE-A(Long Term Evolution-Advanced) 등)에 따라 구축된 이동 통신망 상에서 기지국, 외부의 단말, 서버 중 적어도 하나와 무선 신호를 송수신한다.
상기 무선 신호는, 음성 호 신호, 화상 통화 호 신호 또는 문자/멀티미디어 메시지 송수신에 따른 다양한 형태의 데이터를 포함할 수 있다.
무선 인터넷 모듈(113)은 무선 인터넷 접속을 위한 모듈을 말하는 것으로, 이동 단말기(100)에 내장되거나 외장될 수 있다. 무선 인터넷 모듈(113)은 무선 인터넷 기술들에 따른 통신망에서 무선 신호를 송수신하도록 이루어진다.
무선 인터넷 기술로는, 예를 들어 WLAN(Wireless LAN), Wi-Fi(Wireless-Fidelity), Wi-Fi(Wireless Fidelity) Direct, DLNA(Digital Living Network Alliance), WiBro(Wireless Broadband), WiMAX(World Interoperability for Microwave Access), HSDPA(High Speed Downlink Packet Access), HSUPA(High Speed Uplink Packet Access), LTE(Long Term Evolution), LTE-A(Long Term Evolution-Advanced) 등이 있으며, 상기 무선 인터넷 모듈(113)은 상기에서 나열되지 않은 인터넷 기술까지 포함한 범위에서 적어도 하나의 무선 인터넷 기술에 따라 데이터를 송수신하게 된다.
WiBro, HSDPA, HSUPA, GSM, CDMA, WCDMA, LTE, LTE-A 등에 의한 무선인터넷 접속은 이동통신망을 통해 이루어진다는 관점에서 본다면, 상기 이동통신망을 통해 무선인터넷 접속을 수행하는 상기 무선 인터넷 모듈(113)은 상기 이동통신 모듈(112)의 일종으로 이해될 수도 있다.
근거리 통신 모듈(114)은 근거리 통신(Short range communication)을 위한 것으로서, 블루투스(Bluetooth™), RFID(Radio Frequency Identification), 적외선 통신(Infrared Data Association; IrDA), UWB(Ultra Wideband), ZigBee, NFC(Near Field Communication), Wi-Fi(Wireless-Fidelity), Wi-Fi Direct, Wireless USB(Wireless Universal Serial Bus) 기술 중 적어도 하나를 이용하여, 근거리 통신을 지원할 수 있다. 이러한, 근거리 통신 모듈(114)은, 근거리 무선 통신망(Wireless Area Networks)을 통해 이동 단말기(100)와 무선 통신 시스템 사이, 이동 단말기(100)와 다른 이동 단말기(100) 사이, 또는 이동 단말기(100)와 다른 이동 단말기(100, 또는 외부서버)가 위치한 네트워크 사이의 무선 통신을 지원할 수 있다. 상기 근거리 무선 통신망은 근거리 무선 개인 통신망(Wireless Personal Area Networks)일 수 있다.
위치정보 모듈(115)은 이동 단말기의 위치(또는 현재 위치)를 획득하기 위한 모듈로서, 그의 대표적인 예로는 GPS(Global Positioning System) 모듈 또는 WiFi(Wireless Fidelity) 모듈이 있다. 예를 들어, 이동 단말기는 GPS모듈을 활용하면, GPS 위성에서 보내는 신호를 이용하여 이동 단말기의 위치를 획득할 수 있다. 다른 예로서, 이동 단말기는 Wi-Fi모듈을 활용하면, Wi-Fi모듈과 무선신호를 송신 또는 수신하는 무선 AP(Wireless Access Point)의 정보에 기반하여, 이동 단말기의 위치를 획득할 수 있다. 필요에 따라서, 위치정보모듈(115)은 치환 또는 부가적으로 이동 단말기의 위치에 관한 데이터를 얻기 위해 무선 통신부(110)의 다른 모듈 중 어느 기능을 수행할 수 있다. 위치정보모듈(115)은 이동 단말기의 위치(또는 현재 위치)를 획득하기 위해 이용되는 모듈로, 이동 단말기의 위치를 직접적으로 계산하거나 획득하는 모듈로 한정되지는 않는다.
입력부(120)는, 영상 신호 입력을 위한 카메라(121) 또는 영상 입력부, 오디오 신호 입력을 위한 마이크로폰(microphone, 122), 또는 오디오 입력부, 사용자로부터 정보를 입력받기 위한 사용자 입력부(123, 예를 들어, 터치키(touch key), 푸시키(mechanical key) 등)를 포함할 수 있다. 입력부(120)에서 수집한 음성 데이터나 이미지 데이터는 분석되어 사용자의 제어명령으로 처리될 수 있다.
카메라(121)는 화상 통화모드 또는 촬영 모드에서 이미지 센서에 의해 얻어지는 정지영상 또는 동영상 등의 화상 프레임을 처리한다. 처리된 화상 프레임은 디스플레이부(151)에 표시되거나 메모리(170)에 저장될 수 있다. 한편, 이동 단말기(100)에 구비되는 복수의 카메라(121)는 매트릭스 구조를 이루도록 배치될 수 있으며, 이와 같이 매트릭스 구조를 이루는 카메라(121)를 통하여, 이동 단말기(100)에는 다양한 각도 또는 초점을 갖는 복수의 영상정보가 입력될 수 있다. 또한, 복수의 카메라(121)는 입체영상을 구현하기 위한 좌 영상 및 우 영상을 획득하도록, 스트레오 구조로 배치될 수 있다.
마이크로폰(122)은 외부의 음향 신호를 전기적인 음성 데이터로 처리한다. 처리된 음성 데이터는 이동 단말기(100)에서 수행 중인 기능(또는 실행 중인 응용 프로그램)에 따라 다양하게 활용될 수 있다. 한편, 마이크로폰(122)에는 외부의 음향 신호를 입력 받는 과정에서 발생되는 잡음(noise)을 제거하기 위한 다양한 잡음 제거 알고리즘이 구현될 수 있다.
사용자 입력부(123)는 사용자로부터 정보를 입력받기 위한 것으로서, 사용자 입력부(123)를 통해 정보가 입력되면, 제어부(180)는 입력된 정보에 대응되도록 이동 단말기(100)의 동작을 제어할 수 있다. 이러한, 사용자 입력부(123)는 기계식 (mechanical) 입력수단(또는, 메커니컬 키, 예를 들어, 이동 단말기(100)의 전·후면 또는 측면에 위치하는 버튼, 돔 스위치 (dome switch), 조그 휠, 조그 스위치 등) 및 터치식 입력수단을 포함할 수 있다. 일 예로서, 터치식 입력수단은, 소프트웨어적인 처리를 통해 터치스크린에 표시되는 가상 키(virtual key), 소프트 키(soft key) 또는 비주얼 키(visual key)로 이루어지거나, 상기 터치스크린 이외의 부분에 배치되는 터치 키(touch key)로 이루어질 수 있다. 한편, 상기 가상키 또는 비주얼 키는, 다양한 형태를 가지면서 터치스크린 상에 표시되는 것이 가능하며, 예를 들어, 그래픽(graphic), 텍스트(text), 아이콘(icon), 비디오(video) 또는 이들의 조합으로 이루어질 수 있다.
센싱부(140)는 이동 단말기 내 정보, 이동 단말기를 둘러싼 주변 환경 정보 및 사용자 정보 중 적어도 하나를 센싱하기 위한 하나 이상의 센서를 포함할 수 있다. 예를 들어, 센싱부(140)는 근접센서(141, proximity sensor), 조도 센서(142, illumination sensor), 터치 센서(touch sensor), 가속도 센서(acceleration sensor), 자기 센서(magnetic sensor), 중력 센서(G-sensor), 자이로스코프 센서(gyroscope sensor), 모션 센서(motion sensor), RGB 센서, 적외선 센서(IR 센서: infrared sensor), 지문인식 센서(finger scan sensor), 초음파 센서(ultrasonic sensor), 광 센서(optical sensor, 예를 들어, 카메라(121 참조)), 마이크로폰(microphone, 122 참조), 배터리 게이지(battery gauge), 환경 센서(예를 들어, 기압계, 습도계, 온도계, 방사능 감지 센서, 열 감지 센서, 가스 감지 센서 등), 화학 센서(예를 들어, 전자 코, 헬스케어 센서, 생체 인식 센서 등) 중 적어도 하나를 포함할 수 있다. 한편, 본 명세서에 개시된 이동 단말기는, 이러한 센서들 중 적어도 둘 이상의 센서에서 센싱되는 정보들을 조합하여 활용할 수 있다.
출력부(150)는 시각, 청각 또는 촉각 등과 관련된 출력을 발생시키기 위한 것으로, 디스플레이부(151), 음향 출력부(152), 햅팁 모듈(153), 광 출력부(154) 중 적어도 하나를 포함할 수 있다. 디스플레이부(151)는 터치 센서와 상호 레이어 구조를 이루거나 일체형으로 형성됨으로써, 터치 스크린을 구현할 수 있다. 이러한 터치 스크린은, 이동 단말기(100)와 사용자 사이의 입력 인터페이스를 제공하는 사용자 입력부(123)로써 기능함과 동시에, 이동 단말기(100)와 사용자 사이의 출력 인터페이스를 제공할 수 있다.
음향 출력부(152)는 호신호 수신, 통화모드 또는 녹음 모드, 음성인식 모드, 방송수신 모드 등에서 무선 통신부(110)로부터 수신되거나 메모리(170)에 저장된 오디오 데이터를 출력할 수 있다. 음향 출력부(152)는 이동 단말기(100)에서 수행되는 기능(예를 들어, 호신호 수신음, 메시지 수신음 등)과 관련된 음향 신호를 출력하기도 한다. 이러한 음향 출력부(152)에는 리시버(receiver), 스피커(speaker), 버저(buzzer) 등이 포함될 수 있다.
햅틱 모듈(haptic module)(153)은 사용자가 느낄 수 있는 다양한 촉각 효과를 발생시킨다. 햅틱 모듈(153)이 발생시키는 촉각 효과의 대표적인 예로는 진동이 될 수 있다. 햅틱 모듈(153)에서 발생하는 진동의 세기와 패턴 등은 사용자의 선택 또는 제어부의 설정에 의해 제어될 수 있다. 예를 들어, 상기 햅틱 모듈(153)은 서로 다른 진동을 합성하여 출력하거나 순차적으로 출력할 수도 있다.
광출력부(154)는 이동 단말기(100)의 광원의 빛을 이용하여 이벤트 발생을 알리기 위한 신호를 출력한다. 이동 단말기(100)에서 발생 되는 이벤트의 예로는 메시지 수신, 호 신호 수신, 부재중 전화, 알람, 일정 알림, 이메일 수신, 어플리케이션을 통한 정보 수신 등이 될 수 있다.
인터페이스부(160)는 이동 단말기(100)에 연결되는 다양한 종류의 외부 기기와의 통로 역할을 수행한다. 이러한 인터페이스부(160)는, 유/무선 헤드셋 포트(port), 외부 충전기 포트(port), 유/무선 데이터 포트(port), 메모리 카드(memory card) 포트, 식별 모듈이 구비된 장치를 연결하는 포트(port), 오디오 I/O(Input/Output) 포트(port), 비디오 I/O(Input/Output) 포트(port), 이어폰 포트(port) 중 적어도 하나를 포함할 수 있다. 이동 단말기(100)에서는, 상기 인터페이스부(160)에 외부 기기가 연결되는 것에 대응하여, 연결된 외부 기기와 관련된 적절할 제어를 수행할 수 있다.
또한, 메모리(170)는 이동 단말기(100)의 다양한 기능을 지원하는 데이터를 저장한다. 메모리(170)는 이동 단말기(100)에서 구동되는 다수의 응용 프로그램(application program 또는 어플리케이션(application)), 이동 단말기(100)의 동작을 위한 데이터들, 명령어들을 저장할 수 있다. 이러한 응용 프로그램 중 적어도 일부는, 무선 통신을 통해 외부 서버로부터 다운로드 될 수 있다. 또한 이러한 응용 프로그램 중 적어도 일부는, 이동 단말기(100)의 기본적인 기능(예를 들어, 전화 착신, 발신 기능, 메시지 수신, 발신 기능)을 위하여 출고 당시부터 이동 단말기(100)상에 존재할 수 있다. 한편, 응용 프로그램은, 메모리(170)에 저장되고, 이동 단말기(100) 상에 설치되어, 제어부(180)에 의하여 상기 이동 단말기의 동작(또는 기능)을 수행하도록 구동될 수 있다.
제어부(180)는 상기 응용 프로그램과 관련된 동작 외에도, 통상적으로 이동 단말기(100)의 전반적인 동작을 제어한다. 제어부(180)는 위에서 살펴본 구성요소들을 통해 입력 또는 출력되는 신호, 데이터, 정보 등을 처리하거나 메모리(170)에 저장된 응용 프로그램을 구동함으로써, 사용자에게 적절한 정보 또는 기능을 제공 또는 처리할 수 있다.
또한, 제어부(180)는 메모리(170)에 저장된 응용 프로그램을 구동하기 위하여, 도 1와 함께 살펴본 구성요소들 중 적어도 일부를 제어할 수 있다. 나아가, 제어부(180)는 상기 응용 프로그램의 구동을 위하여, 이동 단말기(100)에 포함된 구성요소들 중 적어도 둘 이상을 서로 조합하여 동작시킬 수 있다.
전원공급부(190)는 제어부(180)의 제어 하에서, 외부의 전원, 내부의 전원을 인가 받아 이동 단말기(100)에 포함된 각 구성요소들에 전원을 공급한다. 이러한 전원공급부(190)는 배터리(191)를 포함하며, 상기 배터리는 내장형 배터리 또는 교체가능한 형태의 배터리가 될 수 있다.
상기 각 구성요소들 중 적어도 일부는, 이하에서 설명되는 다양한 실시예들에 따른 이동 단말기의 동작, 제어, 또는 제어방법을 구현하기 위하여 서로 협력하여 동작할 수 있다. 또한, 상기 이동 단말기의 동작, 제어, 또는 제어방법은 상기 메모리(170)에 저장된 적어도 하나의 응용 프로그램의 구동에 의하여 이동 단말기 상에서 구현될 수 있다.
도 2는 일 실시예에 따라 클라우드 서비스를 제공하는 시스템을 나타낸 구성도이다.
도 2을 참조하면, 일 실시예에 따른 클라우드 서비스 제공 시스템은 이동 단말기(210), 무선 통신망(220), 단말기 정보 서버(230) 및 클라우드 서버(240)을 포함할 수 있다.
이동 단말기(210)는 무선 통신망(220)을 통해 클라우드 서버(240)에 접속하여 클라우드 서비스를 제공하기 위해 필요한 어플리케이션, 스토리지, 운영체제, 보안 기능 등을 제공받을 수 있다.
여기서, 이동 단말기(210)는 휴대폰, 스마트폰, 노트북, 네비게이션 및 PMP 등과 같이 무선 통신망(220)을 통해 데이터 통신을 수행할 수 있는 모든 종류의 전자 기기가 적용될 수 있다.
무선 통신망(220)은 무선랜 망 및 이동통신망 등이 될 수 있으며, 모바일 단말(210)의 종류에 다라 대응되는 네트워크 환경을 제공할 수 있다.
단말 정보 서버(230)는 다수의 모바일 단말에 대한 단말 정보를 저장 및 관리한다. 그리고, 클라우드 서버(240)의 요청에 응답하여, 해당 모바일 단말의 상세 단말 정보를 획득하여 클라우드 서버(240)로 제공할 수 있다.
클라우드 서버(240)는 서버 클러스터 및 다수의 가상화 서버가 될 수 있다. 그리고 사용자에게 클라우드 서비스를 제공하고자 하는 이동 단말기(210)의 접속이 감지되면, 단말 정보 서버(230)를 통해 해당 이동 단말기(210)에 대한 상세 단말 정보를 획득하여 해당 이동 단말기(210)에 맞는 서비스 제공 방법 및 인터페이스 방법을 파악한다. 그리고, 파악된 서비스 제공 방법 및 인터페이스 방법을 참조하여 이동 단말기(210)에 적합한 클라우드 서비스를 제공할 수 있다.
도 3은 일 실시예에 따른 이동 단말기가 클라우드 서버에서 실행되는 어플리케이션을 끊김 없이 제공하는 프로세서를 설명하기 위한 개념도이다. 여기서, 가로축은 시간을 나타내며, 화살표(310)는 이동 단말기와 클라우드 서버의 동기화를 나타낸다.
일 실시예에 따른 이동 단말기는 클라우드 서버와 통신하는 통신부, 어플리케이션의 화면 정보를 출력하는 디스플레이, 데이터를 저장하는 로컬 메모리, 및 상기 구성을 제어하는 프로세서를 포함할 수 있다.
이동 단말기가 클라우드 서버에 접속한 경우, 어플리케이션은 상기 클라우드에서 실행될 수 있다. 이 때, 클라우드 서버에서 실행되는 어플리케이션의 데이터를 동기화되어 이동 단말기의 로컬 메모리에 저장될 수 있다.
상기 어플리케이션의 데이터는 상기 어플리케이션의 컨텍스트 데이터 및 상기 어플리케이션의 앱 데이터를 포함할 수 있다. 구체적으로, 상기 어플리케이션의 컨텍스트 데이터는 상기 어플리케이션의 실행 화면을 구성하기 위한 데이터, 어플리케이션의 프로세서를 기록한 데이터, 및 어플리케이션의 프로세서와 관련된 각종 객체 정보를 포함할 수 있다. 상기 앱 데이터는 특정 OS에서 상기 어플리케이션을 구현하는데 필요한 데이터, 상기 어플리케이션에 입력된 데이터 또는 상기 어플리케이션을 통해 생성된 데이터를 포함할 수 있다.
이동 단말기가 클라우드 서버에 접속한 경우, 이동 단말기는 상기 클라우드 서버에서 실행되는 상기 어플리케이션의 실행 화면을 스트리밍하여 상기 디스플레이를 통해 출력할 수 있다. 또는, 이동 단말기가 클라우드 서버에 접속한 경우, 이동 단말기는 상기 어플리케이션 데이터를 이용하여 상기 어플리케이션의 실행 화면을 상기 디스플레이를 통해 출력할 수 있다.
이동 단말기가 클라우드 서버에 접속된 상태를 유지하는 경우, 클라우드 서버에서 실행되는 상기 어플리케이션의 실행 화면이 끊김 없이 출력될 수 있다. 다만, 이동 단말기가 클라우드 서버에 접속이 끊어진 경우, 또는 클라우드 서버와의 접속이 불안정한 경우, 클라우드 서버에서 실행되는 상기 어플리케이션의 실행 화면은 출력이 끊기거나, 불안정하게 이어서 출력될 수 있다.
클라우드 서버에서 어플리케이션을 실행하는 경우 발생할 수 있는 상기 문제를 해결하기 위해, 일 실시예에 따른 이동 단말기는, 로컬 메모리에 동기화 되어 저장된 상기 어플리케이션의 데이터를 이용할 수 있다. 구체적으로, 이동 단말기는 클라우드 서버에 접속이 끊어진 경우, 동기화된 상기 어플리케이션의 데이터를 이용하여 로컬에서 상기 어플리케이션을 연속하여 실행할 수 있다. 구체적으로, 이동 단말기는 로컬에서 클라우드 서버에 접속이 끊어진 시점의 상기 어플리케이션의 실행 상태에 이어 상기 어플리케이션을 실행할 수 있다. 이때, 상기 어플리케이션은 클라우드 서버에서 실행되는 것이 중단되거나 종료될 수 있다.
이동 단말기는 클라우드 서버에 접속이 끊어진 경우, 로컬에서 어플리케이션을 실행하고, 로컬 메모리에 상기 어플리케이션의 데이터를 저장할 수 있다. 이동 단말기는 다시 클라우드 서버에 접속된 경우, 로컬 메모리에 저장된 상기 어플리케이션의 데이터를 클라우드 서버에 동기화할 수 있다. 클라우드 서버는 접속이 끊어진 시간 동안 실행 내용을 반영하여, 상기 어플리케이션을 연속하여 실행할 수 있다. 이때, 상기 어플리케이션은 로컬에서 실행되는 것이 중단되거나, 종료될 수 있다.
도 3에서 제1 기간(first period)은 클라우드 서버와 접속된 기간에 대응될 수 있다. 제 2 기간(second period)은 제1 기간에 연속된 기간으로, 클라우드 서버와 접속이 끊어진 기간에 대응될 수 있다. 제3 기간(third period)은 제2 기간에 연속된 기간으로, 클라우드 서버에 다시 접속된 기간에 대응될 수 있다.
제1 기간에서 이동 단말기는 동기화 시점 마다 클라우드 서버로부터 대응되는 어플리케이션의 데이터를 수신하고, 로컬 메모리에 저장할 수 있다. 여기서 로컬 메모리에 저장되는 데이터는 단기간 저장된 후 삭제되거나 갱신 또는 누적될 수 있다. 제1 기간은 어플리케이션이 클라우드 서버에서 실행되는 기간에 대응될 수 있다. 이때, 로컬에서는 대응되는 어플리케이션의 실행이 중단되거나, 종료될 수 있다.
제1 기간에서 제2 기간으로 넘어 가는 경계 시점에서 이동 단말기는 클라우드 서버와 동기화에 실패(311)함을 인지할 수 있다. 이동 단말기는 클라우드 서버와 동기화에 실패(311)함을 인지한 경우, 제1 기간에 수신한 어플리케이션의 데이터를 이용하여 동기화에 실패(311)한 시점부터 대응되는 화면 정보를 구성할 수 있다. 즉, 제2 기간에서 이동 단말기는 로컬 메모리에 저장된 데이터를 이용하여 어플리케이션을 실행하고, 동기화에 실패(311)한 시점까지의 실행 기록을 적용하여, 동기화에 실패(311)한 시점의 화면을 구성할 수 있다.
제2 기간에서는 로컬 메모리에 저장된 데이터를 이용하여 어플리케이션을 실행하고, 제2 기간 동안의 실행 기록을 로컬 메모리에 저장할 수 있다. 즉, 제2 기간에서 어플리케이션은 클라우드 서버에서 실행되는 것이 아니라, 로컬에서 실행될 수 있다.
제2 기간에서 제3 기간으로 넘어 가는 경계 시점에서 이동 단말기는 클라우드 서버로부터 수신한 신호를 통해 접속이 복구(312)되었음을 인지할 수 있다. 이동 단말기는 클라우드 서버와 접속이 복구(312) 되었음을 인지한 경우, 제2 기간 동안 이동 단말기에서 실행 기록을 클라우드 서버로 동기화(313) 시킬 수 있다. 제3 기간에서 클라우드 서버는 이동 단말기로부터 수신한 데이터를 통해 실행되는 어플리케이션에 제2 기간 동안 실행 기록을 적용하고, 제2 시간에서 제3 시간으로 넘어가는 시점의 화면을 구성할 수 있다.
제3 기간에서는 이동 단말기는 동기화 때마다 클라우드 서버에서 실행되는 어플리케이션의 화면 정보를 수신하여 출력할 수 있다. 이때, 어플리케이션은 클라우드 서버에서 실행되고, 로컬에서 실행되는 것을 중단 또는 종료될 수 잇다.
간략하게 설명하면, 제1 기간에서는 클라우드 서버에서 어플리케이션이 실행되고, 이동 단말기는 동기화 시점마다 어플리케이션의 화면 정보를 스트리밍하여 제공할 수 있다. 제2 기간에서는 이동 단말기에서 어플리케이션이 실행되어, 화면 정보를 출력하되 제1 기간에 연속하는 화면 정보를 제공할 수 있다. 제3 기간에서는 다시 클라우드 서버에서 어플리케이션이 실행되고, 이동 단말기는 동기화 시점마다 어플리케이션의 화면 정보를 스트리밍하여 제공하되, 제2 기간에 연속하는 화면 정보를 제공할 수 있다.
도 4는 클라우드 서버에서 어플리케이션을 실행하는 도중 접속에 장애가 발생한 경우의 프로세서를 설명하기 위한 흐름도이다. 도 4는 도 3에서 제1 기간에서 제2 기간으로 변경되는 과정을 구체적으로 설명하고 잇다.
이동 단말기는 클라우드 서버에 접속이 가능한 경우 클라우드 서버에 접속할 수 있다. (S410) 이동 단말기는 무선 인터넷을 통해 클라우드 서버에 접속할 수 있다. 이동 단말기는 클라우드 서버에 접속이 가능한 경우 자동적으로 또는 사용자의 접속 명령에 대응하여 클라우드 서버에 접속할 수 있다.
이동 단말기는 클라우드 서버에 접속한 경우, 사용자는 이동 단말기를 통해 클라우드 서버에서 실행되는 어플리케이션을 사용할 수 있다. (S420) 클라우드 서버에서 실행되는 어플리케이션을 클라우드 앱으로 지칭할 수 있다. 이동 단말기가 사용자로부터 수신한 입력 신호를 클라우드 서버로 전달함으로써 클라우드 앱이 사용될 수 있다.
이동 단말기는 클라우드 서버와 동기화 될 수 있다. (S430) 동기화는 기 설정 시간 간격으로 이루어질 수 있다. 구체적으로, 이동 단말기는 클라우드 서버에서 실행되는 어플리케이션의 데이터를 동기화하여 이동 단말기에 포함된 로컬 메모리에 저장할 수 있다. 여기서, 어플리케이션의 데이터는 어플리케이션의 컨텍스트 데이터 및 앱 데이터를 포함할 수 있다. 구체적으로, 상기 어플리케이션의 컨텍스트 데이터는 클라우드 앱 사용에 대응하는 프로세서 데이터, 화면 구성 데이터(화면 스택) 및 프로세서와 관련된 각종 객체 정보를 포함할 수 있다. 또한, 상기 어플리케이션의 앱 데이터는 클라우드 앱 사용에 대응하여 입력된 데이터 또는 생성된 데이터를 포함할 수 있다.
이동 단말기는 동기화 과정에서, 클라우드 서버에 접속 장애가 발생한 것을 판단할 수 있다. (S440) 이동 단말기는 클라우드 서버에 접속 장애가 발생하지 않은 경우, (S440, No) 기 설정 시간 간격으로 클라우드 서버와의 동기화를 계속할 수 있다. 이동 단말기는 클라우드 서버에 접속 장애가 발생한 경우, (S440, Yes) 로컬 앱이 실행되고 있는지 판단할 수 있다. (S450)
로컬 앱이 실행되고 있는지 판단하는 단계 (S450)는, 클라우드 서버에서 실행되던 어플리케이션에 대응되는 어플리케이션을 로컬에서 실행되고 있는지 판단하는 단계일 수 있다. 예를 들어, 클라우드 서버에서 인터넷 어플리케이션을 사용하는 도중 접속에 장애가 발생한 경우, 로컬에서 동일한 인터넷 어플리케이션이 실행되고 있는지 판단할 수 있다. 이때, 로컬에서 실행되는 어플리케이션은 중단 상태일 수 있다.
로컬 앱이 실행되어 있는 경우, (S450, Yes) 이동 단말기는 동기화된 어플리케이션의 데이터를 실행되는 로컬 앱에 적용하여 연속 실행할 수 있다. 구체적으로, 이동 단말기는 클라우드 서버와의 접속이 끊어진 때, 상기 어플리케이션이 로컬에서 실행 중인 경우, 실행 중인 어플리케이션에 동기화된 어플리케이션의 데이터를 적용할 수 있다. 여기서, 동기화된 어플리케이션의 데이터는 접속이 끊어지기 직전에 동기화되어 로컬 메모리에 저장되어 있을 수 있다. 로컬 앱이 실행되어 실행되어 있지 않은 경우, (S450, No) 이동 단말기는 동기화된 기반으로 로컬 앱을 실행할 수 있다. (S470) 구체적으로, 이동 단말기는 클라우드 서버와의 접속이 끊어진 때, 상기 어플리케이션이 로컬에서 실행 중이지 않는 경우, 동기화된 어플리케이션의 데이터를 적용하여 상기 어플리케이션을 실행할 수 있다. 여기서, 동기화된 어플리케이션의 데이터는 접속이 끊어지기 직전에 동기화되어 로컬 메모리에 저장되어 있을 수 있다.
즉, 이동 단말기는 클라우드 서버에서 실행되던 어플리케이션에 대응되는 어플리케이션을 로컬에서 실행하되, 클라우드 서버에 접속이 불가능 해진 시점에 연속하여 실행할 수 있다. 이후, 사용자는 클라우드 서버에 접속이 불가능해 진 시점부터 로컬에서 실행되는 어플리케이션을 연속하여 사용할 수 있다. (S480)
도 5는 도 4와 관련하여 이동 단말기 및 클라우드 서버 간 신호 흐름을 도시하고 있다.
이동 단말기(510)는 로컬에서 실행되는 어플리케이션인 로컬 앱(511), 로컬 앱(511)을 실행하는 로컬 앱 실행부(512) 및 클라우드 서버(513)와 동기화를 담당하는 제1 동기화부 (513)를 포함할 수 있다.
클라우드 서버(520)는 클라우드 서버에서 실행되는 어플리케이션인 클라우드 앱(521), 클라우드 앱(521)을 실행하는 클라우드 앱 실행부(522) 및 이동 단말기(510)와 동기화를 담당하는 제2 동기화부(523)를 포함할 수 있다.
이동 단말기(510)는 클라우드 서버(520)에 접속이 가능한 경우 클라우드 앱을 사용할 수 있다. 클라우드 앱을 사용하는 동안, 클라우드 앱 실행부(522)는 제2 동기화부(523)의 데이터 동기화 요청을 수신하면, 클라우드 앱(521)에 화면 스택을 요청할 수 있다. 클라우드 앱(521)은 화면 스택 요청에 대응하여 현재 사용중인 화면 상태를 저장할 수 있다. 클라우드 앱 실행부(522)는 클라우드 앱(521)으로부터 화면 스택을 수신하고, 화면 스택을 포함하는 동기화 데이터를 전송하도록 제2 동기화부(523)에 요청할 수 있다. 이때, 제2 동기화부(523)는 제1 동기화부(513)로 동기화 데이터를 전송하여 데이터를 동기화 할 수 있다.
이동 단말기(510)는 클라우드 서버(520)에 접속이 불가능한 경우, 클라우드 앱에서 로컬 앱으로 사용되는 어플리케이션을 변경할 수 있다. 사용되는 어플리케이션을 로컬 앱으로 변경하는 동안, 로컬 앱 실행부(512)는 제1 동기화부(513)로부터 수신된 동기화 데이터를 적용할 수 있다. 여기서, 로컬 앱 실행부는, 화면 스택을 업데이트 하고, 프로레스 리코드를 업데이트하고, 앱 데이터를 업데이트 할 수 있다. 로컬 앱 실행부는 동기화된 데이터를 적용하여 로컬 앱(511)을 실행할 수 있다. 여기서, 실행되는 로컬 앱은 클라우드 서버에 접속 장애가 발생 하기 전 실행되던 클라우드 앱(521)에 연속되도록 실행될 수 있다.
도 6은 로컬에서 어플리케이션을 실행하는 도중 접속이 복수된 경우의 프로세서를 설명하기 위한 흐름도이다. 도 6는 도 3에서 제2 기간에서 제3 기간으로 변경되는 과정을 구체적으로 설명하고 잇다.
이동 단말기는 클라우드 서버에 접속이 불가능한 경우, 로컬 앱을 사용할 수 있다. (S610) 여기서 로컬 앱의 사용은 로컬 메모리에 저장된 어플리케이션의 데이터를 이용하여 실행되는 어플리케이션의 사용에 대응될 수 있다. 로컬 메모리는 로컬 앱을 사용하는 동안 획득한 상기 어플리케이션의 데이터를 로컬 메모리에 저장할 수 있다.
이동 단말기는 클라우드 서버에 접속을 복수한 경우(S620), 로컬 앱의 사용을 중지할 수 있다. (S630) 여기서 중지는 중단 또는 종료를 의미할 수 있다. 이동 단말기는 로컬 앱의 사용을 중지하면서, 로컬 메모리에 저장된 상기 어플리케이션의 데이터를 클라우드 서버에 동기화 할 수 있다. 여기서 클라우드 서버에 동기화되는 상기 어플리케이션의 데이터는 클라우드 서버에 접속이 끊긴 기간에 대응되는 데이터일 수 있다.
이동 단말기는 로컬 앱의 사용을 중지한 후, 클라우드 앱이 실행 상태에 있는지 판단할 수 있다. (S640) 이동 단말기는 클라우드 앱이 실행 상태인 경우, (S640, Yes) 동기화된 상기 어플리케이션의 데이터를 클라우드 앱에 적용할 수 있다. (S650) 구체적으로, 이동 단말기는 클라우드 서버에 다시 접속된 때, 상기 어플리케이션이 상기 클라우드 서버에서 실행 중인 경우, 실행 중인 어플리케이션에 동기화된 어플리케이션의 데이터를 적용할 수 있다. 여기서, 동기화된 어플리케이션의 데이터는 접속이 끊어진 동안 로컬 메모리에 저장된 데이터에 대응될 수 있다. 이동 단말기는 클라우드 앱이 실행 상태가 아닌 경우, (S640. No) 동기화된 상기 어플리케이션의 데이터를 적용하여 클라우드 앱을 실행할 수 있다. (S660), 구체적으로, 이동 단말기는 클라우드 서버에 다시 접속되었을 때, 상기 어플리케이션이 상기 클라우드 서버에서 실행 중이지 않는 경우, 동기화된 어플리케이션의 데이터를 적용하여 상기 어플리케이션을 실행할 수 있다. 여기서, 동기화된 어플리케이션의 데이터는 접속이 끊어진 동안 로컬 메모리에 저장된 데이터에 대응될 수 있다.
즉, 이동 단말기는 로컬에서 실행되던 어플리케이션에 대응되는 어플리케이션을 클라우드 서버에서 실행하되, 클라우드 서버에 접속이 가능 해진 시점에 연속하여 실행할 수 있다. 이후, 사용자는 클라우드 서버에 접속이 가능해 진 시점부터 클라우드 서버에서 실행되는 어플리케이션을 연속하여 사용할 수 있다. (S670)
도 8은 클라우드 서버와의 접속 장애 및 복구에 대응하여 어플리케이션의 실행 화면이 연속적으로 제공되는 프로세서를 설명하기 위한 개념도이다.
구체적으로, 도 8에서 가로축은 시간의 흐름을 표시할 수 있다. 구체적으로, 제1 시점(t1)은 클라우드 앱 사용 중 클라우드 서버의 장애가 발생한 시점을 표시할 수 있다. 제2 시점(t2)은 로컬앱으로 전환되는 시점을 표시할 수 있다. 제3 시점(t3)는 클라우드 서버의 접속이 복수된 시점을 표시할 수 있다. 제4 시점(t4)은 클라우드 앱으로 전환되는 시점을 표시할 수 있다.
구체적으로, 도 8(a)는 디스플레부에 출력되는 화면(사용자 화면)을 시간의 흐름에 따라 도시하고 있다. 클라우드 앱 사용에서 로컬 앱 사용으로 전환되더라도 사용자에게 제공되는 화면은 연속될 수 있다. 마찬가지로, 로컬 앱 사용에서 클라우드 앱 사용으로 전화되더라도 사용자에게 제공되는 화면은 연속될 수 있다. 즉, 이동 단말기는 클라우드 서버의 접속이 끊어지거나, 다시 연결되더라도 애플리케이션의 초기 화면을 돌아가는 일 없이 연속된 화면을 사용자에게 제공할 수 있다.
구체적으로, 도 8(b)는 이동 단말기에서 처리하는 화면 스택을 도시하고 있다. 도 8(c)는 클라우드 서버에서 처리하는 화면 스택을 도시하고 있다. 이동 단말기는 제1 시점까지 클라우드 서버와 기 설정 간격으로 동기화 될 수 있다. 이동 단말기는 제1 시점(t1)까지 이동 단말기는 최신으로 동기화된 화면 스택만을 처리할 수 있다. 반면, 클라우드 서버는 제1 시점까지 실행된 모든 화면 스택을 처리할 수 있다. 다만, 제2 시점(t2)에서 제3 시점(t3)까지 클라우드 서버는 화면 스택을 처리하는 것을 중단할 수 있다. 이때, 이동 단말기는 클라우드 서버로부터 동기화된 모든 화면 스택에 연속하여 로컬 앱에서 실행되는 화면 스택을 모두 처리할 수 있다. 이동 단말기는 제2 시점(t2)부터 제3 시점(t3)까지 처리하던 화면 스택은 제3 시점(t3)에서 제4 시점(t4) 사이에 클라우드 서버로 동기화 시킬 수 있다. 클라우드 서버는 연속하여 제4 시점(t4) 이후의 화면 스택을 처리할 수 있다. 이동 단말기는 제4 시점(t4) 이후에 기 설정 간격으로 동기화 되고, 최신으로 동기화된 화면 스택만을 처리할 수 있다.
도 9는 동기화되는 어플리케이션을 선택할 수 있는 제1 인터페이스를 도시하고 있다.
이동 단말기는 클라우드 서버에 접속된 경우, 동기화되는 어플리케이션을 선택할 수 있는 제1 인터페이스(910)을 출력할 수 있다. 제1 인터페이스(910)는 설정 명령에 대응하여 출력될 수 있다.
이동 단말기는 제1 인터페이스(910)를 통해 선택된 어플리케이션만을 주기적으로 로컬로 동기화 할 수 있다. 이동 단말기는 클라우드 서버에 접속이 끊어진 경우, 제1 인터페이스(910)를 통해 선택된 어플리케이션은 동기화된 데이터를 이용하여 연속적으로 실행할 수 있다. 다만, 제1 인터페이스(910)를 통해 선택되지 않은 어플리케이션은 로컬로 동기화 되지 않기 때문에, 클라우드 서버에 접속이 끊어진 경우, 불 연속적으로 로컬에서 실행될 수 있다.
경우에 따라선, 이동 단말기는 제1 인터페이스(910)를 통해 선택된 어플리케이션 중 동기화의 우선 순위를 결정하는 제2 인터페이스(미도시)출력할 수 있다. 이동 단말기는 제2 인터페이스를 통해 설정된 우선 순위에 따라 동기화를 순차적으로 수행할 수 있다. 여기서, 제2 인터페이스(미도시)는 설정 명령에 대응하여 출력될 수 있다.
도 10은 동기화 주기를 설정할 수 있는 제2 인터페이스를 도시하고 있다.
이동 단말기는 도 9의 제1 인터페이스를 통해 선택된 어플리케이션 중 동기화의 주기를 설정하는 제3 어플리케이션(930)을 출력할 수 있다. 제3 인터페이스(930)는 설정 명령에 대응하여 출력될 수 있다.
동기화 주기가 짧은 경우, 통신에 소모되는 로드가 증가할 수 있다. 동기화 주기가 긴 경우, 통신에 소모되는 로드가 감소할 수 있다. 따라서, 이동 단말기는 동기화 주기를 어플리케이션 별로 설정할 수 있다.
상기의 상세한 설명은 모든 면에서 제한적으로 해석되어서는 아니 되고 예시적인 것으로 고려되어야 한다. 본 발명의 범위는 첨부된 청구항의 합리적 해석에 의해 결정되어야 하고, 본 발명의 등가적 범위 내에서의 모든 변경은 본 발명의 범위에 포함된다.

Claims (13)

  1. 클라우드 서버와 통신하는 통신부;
    어플리케이션의 실행 화면을 출력하는 디스플레이;
    데이터를 저장하는 로컬 메모리; 및
    상기 통신부, 상기 디스플레이, 및 상기 로컬 메모리를 제어하는 프로세서;를 포함하고,
    상기 프로세서는
    상기 클라우드 서버에 접속한 경우, 상기 클라우드 서버에서 실행되는 상기 어플리케이션의 데이터를 동기화여 상기 로컬 메모리에 저장하고,
    상기 클라우드 서버에 접속이 끊어진 경우, 동기화된 상기 어플리케이션의 데이터를 이용하여 로컬에서 상기 어플리케이션을 연속 실행하는 것을 특징으로 하는 이동 단말기.
  2. 제1항에 있어서,
    상기 어플리케이션의 데이터는
    상기 어플리케이션의 컨텍스트 데이터 및 상기 어플리케이션의 앱 데이터를 포함하는 것을 특징으로 하는 이동 단말기.
  3. 제1항에 있어서,
    상기 프로세서는
    상기 클라우드 서버에 접속한 경우, 상기 클라우드 서버에서 실행되는 상기 어플리케이션의 실행 화면을 스트리밍하여 출력하는 것을 특징으로 하는 이동 단말기.
  4. 제1항에 있어서,
    상기 프로세서는
    상기 클라우드 서버에 접속한 경우, 동기화된 상기 어플리케이션의 데이터를 이용하여 상기 어플리케이션의 실행 화면을 출력하는 것을 특징으로 하는 이동 단말기.
  5. 제1항에 있어서,
    상기 프로세서는
    상기 클라우드 서버와 접속이 끊어진 때, 상기 어플리케이션이 로컬에서 실행 중인 경우, 실행 중인 어플리케이션에 동기화된 상기 어플리케이션의 데이터를 적용하고,
    상기 클라우드 서버와 접속이 끊어진 때, 상기 어플리케이션이 로컬에서 실행 중이 아닌 경우, 동기화된 상기 어플리케이션의 데이터를 적용하여 상기 어플리케이션을 실행하는 것을 특징으로 하는 이동 단말기.
  6. 제1항에 있어서,
    상기 프로세서는
    상기 클라우드 서버에 접속이 끊어진 동안 로컬에서 실행된 상기 어플리케이션의 데이터를 상기 로컬 메모리에 저장하는 것을 특징으로 하는 이동 단말기.
  7. 제6항에 있어서,
    상기 프로세서는
    상기 클라우드 서버에 다시 접속한 경우, 상기 메모리에 저장된 상기 어플리케이션의 데이터를 상기 클라우드 서버에 동기화 하는 것을 특징으로 하는 이동 단말기.
  8. 제7항에 있어서,
    상기 프로세서는
    상기 클라우드 서버에 다시 접속한 후, 상기 클라우드 서버에서 연속 실행되는 상기 어플리케이션의 데이터를 동기화하여 상기 로컬 메모리에 저장하는 것을 특징으로 하는 이동 단말기.
  9. 제1항에 있어서,
    상기 프로세서는
    상기 클라우드 서버에 다시 접속된 때, 상기 어플리케이션이 상기 클라우드 서버에서 실행 중인 경우, 실행 중인 어플리케이션에 동기화된 상기 어플리케이션의 데이터를 적용하고,
    상기 클라우드 서버에 다시 접속된 때, 상기 어플리케이션이 상기 클라우드 서버에서 실행 중이 아닌 경우, 동기화된 상기 어플리케이션의 데이터를 적용하여 상기 어플리케이션을 연속 실행하는 것을 특징으로 하는 이동 단말기.
  10. 제1항에 있어서,
    상기 프로세서는
    동기화된 상기 어플리케이션이 로컬과 상기 클라우드 서버에서 버전이 상이한 경우, 양쪽 모두 최신 버전으로 업데이트하는 것을 특징으로 하는 이동 단말기.
  11. 제1항에 있어서,
    상기 디스플레이부는
    상기 프로세서의 설정 명령에 대응하여, 상기 클라우드로부터 동기화되는 어플리케이션을 선택하기 위한 제1 인터페이스를 출력하는 것을 특징으로 하는 이동 단말기.
  12. 제1항에 있어서,
    상기 디스플레이부는
    상기 프로세서의 설정 명령에 대응하여, 동기화 우선 순위를 설정하기 위한 제2 인터페이스를 출력하는 것을 특징으로 하는 이동 단말기.
  13. 제1항에 있어서,
    상기 디스플레이부는
    상기 프로세서의 설정 명령에 대응하여, 동기화 시간 간격을 설정기 위한 제3 인터페이스를 출력하는 것을 특징으로 하는 이동 단말기.
KR1020217030904A 2020-02-12 2020-02-12 이동 단말기 KR20220139783A (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/KR2020/001972 WO2021162141A1 (ko) 2020-02-12 2020-02-12 이동 단말기

Publications (1)

Publication Number Publication Date
KR20220139783A true KR20220139783A (ko) 2022-10-17

Family

ID=77292446

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020217030904A KR20220139783A (ko) 2020-02-12 2020-02-12 이동 단말기

Country Status (3)

Country Link
US (1) US11962648B2 (ko)
KR (1) KR20220139783A (ko)
WO (1) WO2021162141A1 (ko)

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7218406B2 (en) * 2001-03-21 2007-05-15 Hewlett-Packard Development Company, L.P. Mailbox printing services for information appliances
KR100608715B1 (ko) 2003-09-27 2006-08-04 엘지전자 주식회사 QoS보장형 멀티미디어 스트리밍 서비스 시스템 및 방법
KR100783668B1 (ko) 2005-04-14 2007-12-07 (주)에이록스 이동통신망에서 주문형 멀티미디어 서비스를 위한 미디어스트리밍 서비스 장치 및 그 방법
US20080312828A1 (en) * 2006-02-15 2008-12-18 Marsalka Joseph P System and method for providing directions
US20080147422A1 (en) * 2006-12-15 2008-06-19 Van Buskirk Thomast C Systems and methods for integrating sports data and processes of sports activities and organizations on a computer network
US20090037287A1 (en) * 2007-07-31 2009-02-05 Ahmad Baitalmal Software Marketplace and Distribution System
US20100299455A1 (en) * 2009-05-21 2010-11-25 Motorola, Inc. Mobile Computing Device and Method with Enhanced Poling Management
DE102010011658A1 (de) * 2010-03-17 2011-09-22 Siemens Aktiengesellschaft Applikationsplattform und Verfahren zum Betrieb einer Datenverarbeitungseinrichtung mit einer solchen
US20110314534A1 (en) * 2010-04-14 2011-12-22 Lee James Secured Execution Environments and Methods
US8312096B2 (en) * 2010-12-08 2012-11-13 Google Inc. Priority inbox notifications and synchronization for mobile messaging application
US9264749B2 (en) * 2012-12-13 2016-02-16 Microsoft Technology Licensing, Llc Server GPU assistance for mobile GPU applications
KR101479464B1 (ko) 2013-02-01 2015-01-06 에스케이플래닛 주식회사 클라우드 스트리밍 기반의 데이터 전송 제어 방법, 시스템, 클라이언트 단말기 및 서비스장치
KR101292422B1 (ko) 2013-03-11 2013-08-01 새서울정보통신 주식회사 Ip 방송 시 서버 접속형 방송 단말기의 접속 지연 및 데이터 손실을 극복하기 위한 ip 방송 시스템, 이를 이용한 ip 방송 방법
US9621627B2 (en) * 2013-12-31 2017-04-11 Interneer, Inc. Dynamically launching a server-based application on a mobile device
KR102551700B1 (ko) 2016-10-11 2023-07-06 주식회사 엘지유플러스 클라우드 계정을 이용하여 백그라운드 데이터를 동기화시키는 휴대용 단말기 및 그 방법
US10547679B1 (en) * 2018-01-02 2020-01-28 Architecture Technology Corporation Cloud data synchronization based upon network sensing
US20200356220A1 (en) * 2019-05-10 2020-11-12 Sap Se Offline custom code list ordering

Also Published As

Publication number Publication date
US11962648B2 (en) 2024-04-16
WO2021162141A1 (ko) 2021-08-19
US20220239738A1 (en) 2022-07-28

Similar Documents

Publication Publication Date Title
JP6453445B2 (ja) 複数デバイスのセンササブシステム合同最適化
EP3108346B1 (en) Display method and mobile device
CA2843627C (en) Device, system and method for generating application data
KR102415870B1 (ko) 적응적으로 작업 수행의 주체를 변경하기 위한 장치 및 방법
KR102481065B1 (ko) 애플리케이션 기능 구현 방법 및 전자 디바이스
EP2750353A1 (en) Terminal device and control method
EP3227886A1 (en) External visual interactions for speech-based devices
WO2021147406A1 (zh) 一种音频输出方法及终端设备
KR102064929B1 (ko) 근접 기능 운용 방법 및 이를 지원하는 전자 장치
KR102591413B1 (ko) 이동단말기 및 그 제어방법
KR102043641B1 (ko) 통신 기능 처리 방법 및 이를 지원하는 전자 장치
US20180184367A1 (en) Mobile terminal and method of operating the same
EP4195870B1 (en) Data transmission method and terminal
KR20150095124A (ko) 이동 단말기 및 그것의 제어방법
KR102102396B1 (ko) 이동 단말기
US9699562B2 (en) Audio output control method and apparatus
KR20210050398A (ko) 전자 장치와 연결되지 않은 외부 전자 장치로 데이터를 전송하는 전자 장치 및 전자 장치의 동작 방법
KR20220139783A (ko) 이동 단말기
KR102663265B1 (ko) 전자 장치 및 전자 장치의 nan 기반의 통신 제어 방법
CA2843649C (en) Device, system and method for generating data
KR102019130B1 (ko) 이동 단말기 및 그 제어 방법
KR20160105210A (ko) 복수의 운영체제가 구동되는 전자 장치가 주변 기기와 통신하는 방법 및 그 장치
KR20160032964A (ko) 이동 단말기 및 그 제어 방법
KR20160026112A (ko) 이동단말기 및 그 제어방법
KR20160090083A (ko) 이동 단말기 및 그 제어방법

Legal Events

Date Code Title Description
E902 Notification of reason for refusal