KR101430927B1 - 클라우드 스트리밍 기반의 가상 api 제공 방법, 시스템, 서비스장치 및 클라이언트 단말기 - Google Patents

클라우드 스트리밍 기반의 가상 api 제공 방법, 시스템, 서비스장치 및 클라이언트 단말기 Download PDF

Info

Publication number
KR101430927B1
KR101430927B1 KR1020130012750A KR20130012750A KR101430927B1 KR 101430927 B1 KR101430927 B1 KR 101430927B1 KR 1020130012750 A KR1020130012750 A KR 1020130012750A KR 20130012750 A KR20130012750 A KR 20130012750A KR 101430927 B1 KR101430927 B1 KR 101430927B1
Authority
KR
South Korea
Prior art keywords
resource information
client terminal
service
virtual
content
Prior art date
Application number
KR1020130012750A
Other languages
English (en)
Other versions
KR20140100039A (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 KR1020130012750A priority Critical patent/KR101430927B1/ko
Publication of KR20140100039A publication Critical patent/KR20140100039A/ko
Application granted granted Critical
Publication of KR101430927B1 publication Critical patent/KR101430927B1/ko

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
    • 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

Abstract

본 발명은 클라우드 스트리밍 기반의 가상 API 제공 방법 및 시스템에 관한 것으로, 특히, 가상 API를 통해 클라이언트 단말기의 리소스를 서비스장치에서 콘텐츠 실행에 적용하고, 실행 결과를 클라이언트 단말기로 제공함으로써, 클라이언트 단말기의 리소스를 가상 API를 통해 서비스장치에서 콘텐츠 실행 시 자신의 리소스처럼 이용 가능하다. 또한, 서비스장치는 여러 종류의 콘텐츠를 실행하기 위하여 필요한 리소스를 모두 저장하고 있지 않아도 되기 때문에, 리소스를 저장하기 위한 메모리 공간이 많이 필요하지 않은 효과가 있다.

Description

클라우드 스트리밍 기반의 가상 API 제공 방법, 시스템, 서비스장치 및 클라이언트 단말기{Method for providing virtual API based on cloud steaming, system, client terminal and service apparatus}
본 발명은 클라우드 스트리밍 기반의 가상 API 제공 방법 및 시스템에 관한 것으로, 더욱 상세하게는 가상 API를 통해 클라이언트 단말기의 리소스를 서비스장치에서 콘텐츠 실행에 적용하고, 실행 결과를 클라이언트 단말기로 제공하는 클라우드 스트리밍 기반의 가상 API 제공 방법, 시스템, 서비스장치 및 클라이언트 단말기에 관한 것이다.
이동통신망의 발달과 단말기 사양의 발전에 따라 종래의 단순한 통신장치 또는 정보 제공 장치의 범주를 벗어나 이동통신단말기는 현대인의 필수 소지품이 되었고, 토탈 엔터테인먼트 기기로 진화해 가고 있는 추세에 있다.
최근에는 성능이 낮은 클라이언트 단말기가 대용량의 영상 등을 처리하는데 무리가 있으므로 원격지에 있는 클라우드 서버(Cloud Server)를 통해 해당 데이터를 처리하도록 하고, 그 처리된 결과 화면만을 클라이언트 단말기에서 수신하여 디스플레이하는 클라우딩 컴퓨팅(Cloud Computing) 기술이 사용되고 있다.
따라서, 클라우드 컴퓨팅 환경에서는 개별 기술에 대한 전문성이 없이도 서비스를 이용하는 형태로 IT 환경을 구축하고 이를 적용할 수 있게 되었다.
클라우딩 컴퓨팅은 크게 SaaS(Software as a Service), PaaS(Platform as a Service), IaaS(Infrastructure as a Service) 등의 3 개 분야로 나눌 수 있다. 여기서, SaaS는 소프트웨어 어플리케이션 서비스를 제공하는 형태로서, 각 기업의 업무환경이 다른데 획일화 된 기능과 인터페이스를 제공하는 기존의 ASP(Active Server Pages)와 달리 사용자의 입맛에 맞춰 웹 2.0 기술과 XML(eXtensible Makeup Language) 기술 등이 접속된 서비스이다. 또한, PaaS는 표준화 된 플랫폼을 서비스로 제공하는 것으로서, SaaS를 사용하다 다른 어플리케이션들과 통합의 한계에 부딪히게 될 때 Open API 형태로 통합할 수 있는 플랫폼을 제공한다. 또한, IaaS는 인프라스트럭처, 예를 들면, 서버나 스토리지, 네트워크들을 서비스로 제공하는 것으로서, 소프트웨어를 서비스하기 위해서 IDC(Internet Data Center)라는 공간과 그 공간 안에서 서버나 스토리지, 네트워크 장비들이 필요하게 될 때 이런 것들을 클라우드 환경으로 만들어 필요에 따라 인프라 자원을 사용할 수 있게 하는 서비스이다.
한편, 클라우드 스트리밍 서비스를 이용하는 사용자가 증가하면서, 사용자들은 다양하고 고 성능의 콘텐츠를 요구하고 있다. 이런, 콘텐츠를 실행하기 위하여, 서비스장치는 여러 종류의 클라이언트 단말기에 적합한 리소스를 구비하고 있어야 하며, 클라이언트 단말기에 의해 선택되는 콘텐츠를 서비스장치가 구비한 리소스만을 이용하여 실행해야만 한다. 이럴 경우, 서비스장치는 많은 종류의 리소스를 구비하여야 하고, 많은 리소스를 저장하기 위한 메모리도 필요한 문제가 있다.
한국등록특허 10-0817651 B1, 2008년 03월 21일 등록 (명칭: 디바이스 관리 시스템)
이러한 종래의 문제점을 해결하기 위하여, 본 발명의 목적은 클라이언트 단말기의 리소스를 가상 API를 통해 서비스장치에서 이용하여 콘텐츠를 실행하고, 실행 결과를 클라이언트 단말기로 제공할 수 있는 클라우드 스트리밍 기반의 가상 API 제공 방법, 시스템, 서비스장치 및 클라이언트 단말기를 제공하고자 한다.
상술한 바와 같은 목적을 달성하기 위한 본 발명의 실시 예에 따른 클라우드 스트리밍 기반의 가상 API 제공 시스템은 서비스장치로 적어도 하나의 콘텐츠 실행을 요청하고, 서비스장치로부터 수신되는 요청 신호에 따라 적어도 하나의 리소스 정보를 전송하고, 서비스장치로부터 가상의 리소스 정보를 통해 실행되는 콘텐츠에 대한 실행 결과를 수신하여 출력하는 클라이언트 단말기 및 클라이언트 단말기의 요청에 따라 적어도 하나의 콘텐츠를 실행하기 위한 리소스 정보를 확인하고, 클라이언트 단말기에 구비된 적어도 하나의 리소스 정보를 수집하고, 수집된 리소스 정보 중에서 콘텐츠를 실행하기 위하여 필요한 리소스 정보의 존재 여부에 따라 클라이언트 단말기로부터 수집된 리소스 정보를 가상의 리소스 정보로 인식하고, 가상의 리소스 정보를 이용하여 콘텐츠를 실행하는 서비스장치를 포함하는 것을 특징으로 한다.
본 발명의 실시 예에 따른 서비스장치는 적어도 하나의 클라이언트 단말기와 통신하여 가상 API를 통해 콘텐츠를 실행하기 위한 데이터를 송수신하는 서비스통신부 및 클라이언트 단말기의 요청에 따라 적어도 하나의 콘텐츠를 실행하기 위한 리소스 정보를 확인하고, 클라이언트 단말기에 구비된 적어도 하나의 리소스 정보를 수집하고, 수집된 리소스 정보 중에서 콘텐츠를 실행하기 위하여 필요한 리소스 정보의 존재 여부에 따라 클라이언트 단말기로부터 수집된 리소스 정보를 가상의 리소스 정보로 인식하고, 가상의 리소스 정보를 이용하여 콘텐츠를 실행하도록 제어하는 서비스제어부를 포함하는 것을 특징으로 한다.
또한, 본 발명에 따른 서비스장치에 있어서, 클라이언트 단말기에 대한 리소스 정보와 대응하는 가상의 리소스 정보를 저장하는 서비스저장부를 더 포함하는 것을 특징으로 한다.
또한, 본 발명에 따른 서비스장치에 있어서, 서비스통신부, 서비스제어부 또는 서비스저장부가 클라우드 컴퓨팅 기반으로 동작하는 하나 이상의 서버로 구현되는 것을 특징으로 한다.
본 발명의 실시 예에 따른 클라우드 스트리밍 기반의 가상 API 제공 방법은 서비스장치가 클라이언트 단말기의 요청에 따라 적어도 하나의 콘텐츠를 실행하기 위한 리소스 정보를 확인하는 단계와, 서비스장치가 클라이언트 단말기에 구비된 적어도 하나의 리소스 정보를 수집하는 단계와, 서비스장치가 수집된 리소스 정보 중에서 콘텐츠를 실행하기 위하여 필요한 리소스 정보의 존재 여부를 판단하는 단계와, 필요한 리소스 정보가 존재하는 경우, 서비스장치가 클라이언트 단말기로부터 수집된 리소스 정보를 가상의 리소스 정보로 인식하는 단계 및 서비스장치가 가상의 리소스 정보를 이용하여 콘텐츠를 실행하는 단계를 포함하는 것을 특징으로 한다.
또한, 본 발명에 따른 클라우드 스트리밍 기반의 가상 API 제공 방법에 있어서, 리소스 정보는 오디오 드라이버, 비디오 드라이버, 입출력 수단, 통신 인터페이스, GPS, 카메라, 게임 패드, 근거리 무선통신 드라이버, 데이터 통신 드라이버 중 적어도 하나인 것을 특징으로 한다.
또한, 본 발명에 따른 클라우드 스트리밍 기반의 가상 API 제공 방법에 있어서, 인식하는 단계는 서비스장치가 가상 API를 통해 가상의 리소스 정보를 인식하는 것을 특징으로 한다.
또한, 본 발명에 따른 클라우드 스트리밍 기반의 가상 API 제공 방법에 있어서, 인식하는 단계는 서비스장치가 가상의 리소스 정보에 대한 싱크 타입을 확인하는 것을 특징으로 한다.
또한, 본 발명에 따른 클라우드 스트리밍 기반의 가상 API 제공 방법에 있어서, 실행하는 단계는 서비스장치가 콘텐츠를 실행하기 위해 필요한 리소스 정보를 확인하는 단계와, 서비스장치가 리소스 정보에 따라 콘텐츠에 대한 데이터를 변환하는 단계 및 서비스장치가 변환된 데이터를 실행하는 단계를 포함하는 것을 특징으로 한다.
또한, 본 발명에 따른 클라우드 스트리밍 기반의 가상 API 제공 방법에 있어서, 실행하는 단계 이후에, 서비스장치가 콘텐츠에 대한 실행 결과를 클라이언트 단말기로 전송하는 단계를 더 포함하는 것을 특징으로 한다.
본 발명의 과제 해결을 위한 또 다른 수단으로서, 클라우드 스트리밍 기반의 가상 API 제공 방법을 실행하는 프로그램을 기록한 컴퓨터 판독 가능한 기록매체를 제공한다.
본 발명에 따르면, 클라이언트 단말기의 리소스를 가상 API를 통해 서비스장치에서 콘텐츠 실행 시 자신의 리소스처럼 이용 가능하다.
또한, 서비스장치는 여러 종류의 콘텐츠를 실행하기 위하여 필요한 리소스를 모두 저장하고 있지 않아도 되기 때문에, 리소스를 저장하기 위한 메모리 공간이 많이 필요하지 않은 효과가 있다.
또한, 통신망으로 연결 가능한 클라이언트 단말기의 부족한 컴퓨팅 능력을 클라우드 서비스장치를 통해 극복하며, 클라이언트 단말기에 지원되지 않는 다양한 형태의 데이터 포맷, 코덱 또는 디바이스 제어를 지원하기 위해 클라이언트 단말기의 성능을 업그레이드하거나, 데이터 포맷의 지원을 위해 프로토콜을 변경하지 않고도 클라이언트 단말기가 콘텐츠를 이용하도록 지원할 수 있다.
도 1은 본 발명의 실시 예에 따른 클라우드 스트리밍 기반의 가상 API 제공 시스템을 나타내는 도면이다.
도 2는 본 발명의 실시 예에 따른 클라이언트 단말기의 구성을 나타내는 도면이다.
도 3은 본 발명의 실시 예에 따른 서비스장치의 구성을 나타내는 도면이다.
도 4는 본 발명의 실시 예에 따른 서비스장치의 동작을 설명하기 위한 흐름도이다.
도 5는 본 발명의 실시 예에 따른 클라이언트 단말기의 동작을 설명하기 위한 흐름도이다.
이하 본 발명의 바람직한 실시 예를 첨부한 도면을 참조하여 상세히 설명한다. 다만, 하기의 설명 및 첨부된 도면에서 본 발명의 요지를 흐릴 수 있는 공지 기능 또는 구성에 대한 상세한 설명은 생략한다. 또한, 도면 전체에 걸쳐 동일한 구성 요소들은 가능한 한 동일한 도면 부호로 나타내고 있음에 유의하여야 한다.
이하에서 설명되는 본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니 되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위한 용어의 개념으로 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다. 따라서 본 명세서에 기재된 실시 예와 도면에 도시된 구성은 본 발명의 가장 바람직한 일 실시 예에 불과할 뿐이고, 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형 예들이 있을 수 있음을 이해하여야 한다.
이하에서는 본 발명의 실시 예에 따른 클라이언트 단말기는 통신망을 통해 클라우드 스트리밍 기반의 가상 API(Application Programing Interface)를 이용하여 콘텐츠를 실행할 수 있는 이동통신단말기를 대표적인 예로서 설명하지만 클라이언트 단말기는 이동통신단말기에 한정된 것이 아니고, 모든 정보통신기기, 멀티미디어 단말기, 유선 단말기, 고정형 단말기 및 IP(Internet Protocol) 단말기 등의 다양한 단말기에 적용될 수 있다. 또한, 클라이언트 단말기는 휴대폰, PMP(Portable Multimedia Player), MID(Mobile Internet Device), 스마트폰(Smart Phone), 데스크톱(Desktop), 태블릿컴퓨터(Tablet PC), 노트북(Note book), 넷북(Net book) 및 정보통신 기기 등과 같은 다양한 이동통신 사양을 갖는 모바일(Mobile) 단말기일 때 유리하게 활용될 수 있다.
도 1은 본 발명의 실시 예에 따른 클라우드 스트리밍 기반의 가상 API 제공 시스템을 나타내는 도면이다.
도 1을 참조하면, 본 발명에 따른 클라이언트 스트리밍 기반의 가상 API 제공 시스템(100)은 클라이언트 단말기(10), 서비스장치(20) 및 통신망(30)으로 구성된다.
또한, 본 발명에 따른 서비스장치(20)나 클라이언트 단말기(10)에 탑재되는 프로세서는 본 발명에 따른 방법을 실행하기 위한 프로그램 명령을 처리할 수 있다. 일 구현 예에서, 이 프로세서는 싱글 쓰레드(Single-threaded) 프로세서일 수 있으며, 다른 구현 예에서 본 프로세서는 멀티 쓰레드(Multithreaded) 프로세서일 수 있다. 나아가 본 프로세서는 메모리 혹은 저장 장치 상에 저장된 명령을 처리하는 것이 가능하다.
통신망(30)은 클라이언트 단말기(10) 및 서비스장치(20) 사이의 데이터 전송 및 정보 교환을 위한 일련의 데이터 송수신 동작을 수행한다. 특히, 통신망(30)은 다양한 형태의 통신망이 이용될 수 있으며, 예컨대, WLAN(Wireless LAN), 와이파이(Wi-Fi), 와이브로(Wibro), 와이맥스(Wimax), HSDPA(High Speed Downlink Packet Access) 등의 무선 통신방식 또는 이더넷(Ethernet), xDSL(ADSL, VDSL), HFC(Hybrid Fiber Coax), FTTC(Fiber to The Curb), FTTH(Fiber To The Home) 등의 유선 통신방식이 이용될 수 있다. 한편, 통신망(30)은 상기에 제시된 통신방식에 한정되는 것은 아니며, 상술한 통신 방식 이외에도 기타 널리 공지되었거나 향후 개발될 모든 형태의 통신 방식을 포함할 수 있다.
클라이언트 단말기(10)는 통신망(30)을 통해 서비스장치(20)와 연결되어 클라우드 스트리밍 기반의 가상 API를 이용하여 콘텐츠를 실행하기 위한 모든 데이터를 송수신한다. 특히, 본 발명에 따른 클라이언트 단말기(10)는 서비스장치(20)로 콘텐츠 실행을 요청한다. 그리고, 클라이언트 단말기(10)는 서비스장치(20)로부터 수신되는 요청 신호에 따라 리소스 정보를 서비스장치(20)로 전송한다. 여기서, 리소스 정보는 클라이언트 단말기(10)에 구비되어 있는 리소스에 대한 리스트로서, 오디오 드라이버, 비디오 드라이버, 입출력 수단, 통신 인터페이스, GPS(Global Positioning System), 카메라, 게임 패드 등이 포함될 수 있다. 예를 들어, 오디오 드라이버는 스피커 기능과 마이크 기능을 실행할 수 있는 리소스이고, 비디오 드라이버는 2D(Dimension) 또는 3D 등의 다차원 영상을 디스플레이 할 수 있는 리소스이고, 입출력 수단은 마우스, 키보드, 터치입력 등을 통해 데이터를 입력 또는 출력할 수 있는 리소스이고, 통신 인터페이스는 데이터 통신 방식, 통신 유효 거리, 유무선 방식 등에 따라 구분되는 리소스로서, 블루투스(Bluetooth), 유에스비(USB), 유선통신, 무선통신 등의 리소스를 포함하고, GPS는 GPS 위성 또는 셀 기반의 위치정보를 이용하는 리소스이고, 카메라는 영상을 촬영할 수 있는 리소스이고, 게임 패드는 게임 조작을 위한 조이스틱 등의 입력 수단이 되는 리소스가 된다.
클라이언트 단말기(10)는 서비스장치(20)로부터 가상의 리소스 정보를 통해 실행되는 콘텐츠에 대한 실행 결과를 수신하여 출력한다. 즉, 클라이언트 단말기(10)는 자신의 리소스 정보를 가상 API를 통해 이용하여 서비스장치(20)에서 실행되는 콘텐츠에 대한 실행 결과를 수신하여 사용자에게 제공한다. 여기서, 가상 API는 코딩 또는 코드에 직접 액세스 할 필요 없이 가상 인터페이스를 통해 기존의 운영체제의 응용 프로그램(어플리케이션, 콘텐츠)을 통합하기 위한 인터페이스를 제공한다. 이러한 가상 API는 브라우저 기반의 레거시(Legacy) 응용 프로그램을 빠르고 쉽게 통합할 뿐만 아니라, 자동화된 프로세서와 데이터를 전송할 수도 있다. 또한, 가상 API는 프로세서와 레거시 응용 프로그램의 기능을 캡슐화 광대역 스크립트에 기초하여 웹 서비스 또는 컴포넌트 객체 모델(COM, Component Object Model)의 구성 요소로 적용될 수 있다. 여기서, 컴포넌트 객체 모델은 다양한 언어로 만들어진 소프트웨어 컴포넌트들이 자신의 기능을 다른 소프트웨어와 공유하고 통합될 수 있도록 하는, 이진 코드 레벨에서의 서비스가 된다.
반면, API는 응용 프로그램에서 사용할 수 있도록 운영체제나 프로그래밍 언어를 제공하는 기능을 제어할 수 있게 하는 인터페이스로서, 파일 제어, 창 제어, 화상 처리, 문자 제어 등을 위한 인터페이스가 포함된다.
서비스장치(20)는 통신망(30)을 통해 다수의 클라이언트 단말기(10)와 연결되어 클라우드 스트리밍 기반의 가상 API를 이용하여 콘텐츠를 실행하기 위한 모든 데이터를 송수신한다. 특히, 본 발명에 따른 서비스장치(20)는 클라이언트 단말기(10)의 요청에 따라 콘텐츠를 실행하기 위한 리소스 정보를 확인한다. 그리고, 서비스장치(20)는 클라이언트 단말기(10)에 구비된 리소스 정보를 수집한다. 예를 들어, 리소스 정보는 클라이언트 단말기(10)에 구비된 리소스에 대한 리스트로서, 오디오 드라이버, 비디오 드라이버, 입출력 수단, 통신 인터페이스, GPS, 카메라, 게임 패드 등이 포함된다.
서비스장치(20)는 수집된 리소스 정보 중에서 콘텐츠를 실행하기 위하여 필요한 리소스 정보의 존재 여부에 따라 클라이언트 단말기(10)로부터 수집된 리소스 정보를 가상의 리소스 정보로 인식한다. 즉, 서비스장치(20)는 콘텐츠 실행을 위해 필요한 리소스 정보와, 클라이언트 단말기(10)로부터 수집된 리소스 정보를 비교하고, 비교 결과, 콘텐츠 실행을 위해 필요한 리소스 정보가 클라이언트 단말기(10)로부터 수집된 리소스 정보에 포함된 경우, 클라이언트 단말기(10)의 리소스 정보를 가상 API를 통해 서비스장치(20)의 리소스 정보로 인식한다.
서비스장치(20)는 가상의 리소스 정보를 이용하여 콘텐츠를 실행한다. 이후, 서비스장치(20)는 콘텐츠 실행 결과를 클라이언트 단말기(10)로 제공한다.
상술한 본 발명의 실시 예에 따른 클라우드 스트리밍 기반의 가상 API 제공 시스템(100)에 적용되는 각 장치의 동작 방법을 도 2와 도 3을 참조하여 보다 구체적으로 설명하도록 한다.
이를 통해, 본 발명은 클라이언트 단말기의 리소스를 가상 API를 통해 서비스장치에서 콘텐츠 실행 시 자신의 리소스처럼 이용 가능하다. 또한, 서비스장치는 여러 종류의 콘텐츠를 실행하기 위하여 필요한 리소스를 모두 저장하고 있지 않아도 되기 때문에, 리소스를 저장하기 위한 메모리 공간이 많이 필요하지 않은 효과가 있다.
한편, 본 발명의 실시 예에 따른 리소스 정보는 상기에 제시된 리소스에 한정되는 것이 아니고, 클라이언트 단말기(10)에 구비될 수 있는 모든 리소스 정보가 포함되며, 이러한 리소스 정보는 가상 API를 통해 서비스장치(20)에서 콘텐츠 실행에 적용될 수 있다.
도 2는 본 발명의 실시 예에 따른 클라이언트 단말기의 구성을 나타내는 도면이다.
도 2를 참조하면, 본 발명에 따른 클라이언트 단말기(10)는 제어부(11), 입력부(12), 표시부(13), 저장부(14), 오디오처리부(15) 및 통신부(16)로 구성된다.
입력부(12)는 숫자 및 문자 정보 등의 다양한 정보를 입력 받고, 각종 기능을 설정 및 클라이언트 단말기(10)의 기능 제어와 관련하여 입력되는 신호를 제어부(11)로 전달한다. 또한, 입력부(12)는 사용자의 터치 또는 조작에 따른 입력 신호를 발생하는 키패드와 터치패드 중 적어도 하나를 포함하여 구성될 수 있다. 이때, 입력부(12)는 표시부(13)와 함께 하나의 터치패널(또는 터치스크린(touch screen))의 형태로 구성되어 입력과 표시 기능을 동시에 수행할 수 있다. 또한, 입력부(12)는 키보드, 키패드, 마우스, 조이스틱 등과 같은 입력 장치 외에도 향후 개발될 수 있는 모든 형태의 입력 수단이 사용될 수 있다. 특히, 본 발명에 따른 입력부(12)는 콘텐츠 실행을 요청하는 입력 신호 및 콘텐츠 동작을 제어하기 위한 입력 신호 등을 제어부(11)로 전달한다.
표시부(13)는 단말기(10)의 기능 수행 중에 발생하는 일련의 동작상태 및 동작결과 등에 대한 정보를 표시한다. 또한, 표시부(13)는 클라이언트 단말기(10)의 메뉴 및 사용자가 입력한 사용자 데이터 등을 표시할 수 있다. 여기서, 표시부(13)는 LCD(Liquid Crystal Display), TFT-LCD(Thin Film Transistor LCD), OLED(Organic Light Emitting Diodes), 발광다이오드(LED), AMOLED(Active Matrix Organic LED), 플렉시블 디스플레이(Flexible display) 및 3차원 디스플레이 등으로 구성될 수 있다. 이때, 표시부(13)는 터치스크린 형태로 구성될 수 있고, 이와 같이, 표시부(13)가 터치스크린 형태로 형성된 경우, 표시부(13)는 입력부(12)의 기능 중 일부 또는 전부를 수행할 수 있다. 특히, 본 발명에 따른 표시부(13)는 콘텐츠 선택 화면 및 콘텐츠 실행 화면 등을 출력한다.
저장부(14)는 데이터를 저장하기 위한 장치로, 주 기억 장치 및 보조 기억 장치를 포함하고, 클라이언트 단말기(10)의 기능 동작에 필요한 응용 프로그램을 저장한다. 이러한 저장부(14)는 크게 프로그램 영역과 데이터 영역을 포함할 수 있다. 여기서, 단말기(10)는 사용자의 요청에 상응하여 각 기능을 활성화하는 경우, 제어부(11)의 제어 하에 해당 응용 프로그램들을 실행하여 각 기능을 제공하게 된다. 특히, 본 발명에 따른 프로그램 영역은 클라이언트 단말기(10)를 부팅시키는 운영체제, 콘텐츠 실행을 요청하는 프로그램, 리소스 정보를 검색하는 프로그램 등을 저장한다. 또한, 데이터 영역은 클라이언트 단말기(10)의 사용에 따라 발생하는 데이터가 저장되는 영역이다. 특히, 본 발명에 따른 데이터 영역은 리소스 정보, 서비스장치(20)로부터 제공되는 콘텐츠 실행에 관련된 데이터 등을 저장한다. 여기서, 리소스 정보는 클라이언트 단말기(10)에 구비된 오디오 드라이버, 비디오 드라이버, 입출력 수단, 통신 인터페이스, GPS, 카메라, 게임 패드 등이 포함된다. 예를 들어, 오디오 드라이버는 스피커 기능과 마이크 기능을 실행할 수 있는 리소스이고, 비디오 드라이버는 2D 또는 3D 등의 다차원 영상을 디스플레이 할 수 있는 리소스이고, 입출력 수단은 마우스, 키보드, 터치입력 등을 통해 데이터를 입력 또는 출력할 수 있는 리소스이고, 통신 인터페이스는 데이터 통신 방식, 통신 유효 거리, 유무선 방식 등에 따라 구분되는 리소스로서, 블루투스(Bluetooth), 유에스비(USB), 유선통신, 무선통신 등의 리소스를 포함하고, GPS는 GPS 위성 또는 셀 기반의 위치정보를 이용하는 리소스이고, 카메라는 영상을 촬영할 수 있는 리소스이고, 게임 패드는 게임 조작을 위한 조이스틱 등의 입력 수단이 되는 리소스가 된다.
오디오처리부(15)는 오디오 신호를 재생하여 출력하기 위한 스피커(SPK) 또는 마이크(MIC)로부터 입력되는 오디오 신호를 제어부(11)에 전달하는 기능을 수행한다. 이러한 오디오처리부(15)는 마이크를 통해 입력되는 아날로그 형식의 오디오 신호를 디지털 형식으로 변환하여 제어부(11)에 전달할 수 있다. 또한, 오디오처리부(15)는 제어부(11)로부터 출력되는 디지털 형식의 오디오 신호를 아날로그 신호로 변환하여 스피커를 통해 출력할 수 있다. 특히, 본 발명에 따른 오디오처리부(15)는 콘텐츠 실행에 따라 발생하는 효과음 또는 실행음 등을 출력한다.
통신부(16)는 서비스장치(20)와 통신망(30)을 통해 데이터를 송수신하기 위한 기능을 수행한다. 여기서, 통신부(16)는 송신되는 신호의 주파수를 상승 변환 및 증폭하는 RF 송신 수단과 수신되는 신호를 저잡음 증폭하고 주파수를 하강 변환하는 RF 수신 수단 등을 포함한다. 이러한 통신부(16)는 무선통신 모듈(미도시) 및 유선통신 모듈(미도시) 중 적어도 하나를 포함할 수 있다. 그리고, 무선통신 모듈은 무선 통신 방법에 따라 데이터를 송수신하기 위한 구성이며, 단말기(10)가 무선 통신을 이용하는 경우, 무선망 통신 모듈, 무선랜 통신 모듈 및 무선팬 통신 모듈 중 어느 하나를 이용하여 데이터를 서비스장치(20)로 전송하거나, 수신할 수 있다. 또한, 유선통신 모듈은 유선으로 데이터를 송수신하기 위한 것이다. 유선통신 모듈은 유선을 통해 통신망(30)에 접속하여, 클라이언트 단말기(10) 및 서비스장치(10)에 데이터를 전송하거나, 수신할 수 있다. 즉, 클라이언트 단말기(10)는 유선통신 모듈을 이용하여 통신망(30)에 접속하며, 통신망(30)을 통해 서비스장치(20)와 데이터를 송수신할 수 있다. 특히, 본 발명에 따른 통신부(16)는 서비스장치(20)와 통신하여 가상 API를 통해 콘텐츠를 실행하는 데이터 및 리소스 정보 등을 송수신한다.
제어부(11)는 운영 체제(OS, Operation System) 및 각 구성을 구동시키는 프로세스 장치가 될 수 있다. 예컨대, 제어부(11)는 중앙처리장치(CPU, Central Processing Unit)가 될 수 있다. 제어부(11)는 단말기(10)의 전원이 켜지면, 운영 체제를 보조 기억 장치로부터 주 기억 장치로 이동시킨 후, 운영 체제를 구동하기 위한 부팅(booting)을 수행하고, 필요한 신호 제어를 수행한다. 특히, 본 발명에 따른 제어부(11)는 서비스장치(20)로 콘텐츠 실행을 요청한다. 그리고, 제어부(11)는 서비스장치(20)로부터 수신되는 요청 신호에 따라 리소스 정보를 서비스장치(20)로 전송한다. 여기서, 리소스 정보는 클라이언트 단말기(10)에 구비되어 있는 리소스에 대한 리스트로서, 오디오 드라이버, 비디오 드라이버, 입출력 수단, 통신 인터페이스, GPS, 카메라, 게임 패드 등이 포함될 수 있다.
제어부(11)는 서비스장치(20)로부터 가상의 리소스 정보를 통해 실행되는 콘텐츠에 대한 실행 결과를 수신하여 출력한다. 즉, 제어부(11)는 자신의 리소스 정보를 가상 API를 통해 이용하여 서비스장치(20)에서 실행되는 콘텐츠에 대한 실행 결과를 수신하여 사용자에게 제공한다.
도 3은 본 발명의 실시 예에 따른 서비스장치의 구성을 나타내는 도면이다.
도 3을 참조하면, 본 발명에 따른 서비스장치(20)는 서비스제어부(21), 서비스저장부(22) 및 서비스통신부(23)로 구성된다. 여기서, 서비스제어부(21)는 가상 API 관리모듈(21a) 및 리소스 정보 확인모듈(21b)을 포함하고, 서비스저장부(22)는 가상의 리소스 정보(22a)를 포함한다.
서비스통신부(23)는 통신망(30)을 통해 클라이언트 단말기(10)와 게임 어플리케이션의 실행을 위한 데이터를 송수신하는 기능을 수행한다. 특히, 본 발명에 따른 서비스통신부(23)는 클라이언트 단말기(10)와 통신하여 가상 API를 통해 콘텐츠를 실행하기 위한 데이터를 송수신한다.
서비스저장부(22)는 서비스장치(20)의 기능 실행에 따른 모든 프로그램을 저장한다. 특히, 본 발명에 따른 서비스저장부(22)는 클라이언트 단말기(10)의 리소스 정보를 수집하는 프로그램, 콘텐츠 실행을 위해 필요한 리소스 정보와 클라이언트 단말기(10)로부터 수집된 리소스 정보를 비교하는 프로그램, 클라우드 스트리밍 기반의 가상 API를 이용하여 콘텐츠를 제공하는 프로그램 등을 저장한다. 또한, 서비스저장부(22)는 클라이언트 단말기에 대한 리소스 정보와 대응하는 가상의 리소스 정보(22a)를 저장한다.
서비스제어부(21)는 서비스장치(20)의 운영 체제 및 각 구성을 구동시키는 프로세스 장치가 될 수 있다. 특히, 본 발명에 따른 서비스제어부(21)는 클라이언트 단말기(10)의 요청에 따라 콘텐츠를 실행하기 위한 리소스 정보를 확인한다. 여기서, 리소스 정보는 오디오 드라이버, 비디오 드라이버, 입출력 수단, 통신 인터페이스, GPS, 카메라, 게임 패드 등이 포함된다.
그리고, 서비스제어부(21)는 클라이언트 단말기(10)에 구비된 리소스 정보를 수집한다. 여기서, 서비스제어부(21)는 수집된 리소스 정보 중에서 콘텐츠를 실행하기 위하여 필요한 리소스 정보의 존재 여부를 판단한다.
필요한 리소스 정보가 존재하는 경우, 서비스제어부(21)는 클라이언트 단말기(10)로부터 수집된 리소스 정보를 가상의 리소스 정보로 인식한다. 즉, 서비스제어부(21)는 콘텐츠 실행을 위해 필요한 리소스 정보와, 클라이언트 단말기(10)로부터 수집된 리소스 정보를 비교하고, 비교 결과, 콘텐츠 실행을 위해 필요한 리소스 정보가 클라이언트 단말기(10)로부터 수집된 리소스 정보에 포함된 경우, 클라이언트 단말기(10)의 리소스 정보를 가상 API를 통해 서비스장치(20)의 리소스 정보로 인식한다. 이때, 서비스제어부(21)는 가상의 리소스 정보에 대한 싱크 타입을 확인한다. 여기서, 가상 API는 코딩 또는 코드에 직접 액세스 할 필요 없이 가상 인터페이스를 통해 기존의 운영체제의 응용 프로그램을 통합하기 위한 인터페이스를 제공한다. 이러한 가상 API는 브라우저 기반의 레거시 응용 프로그램을 빠르고 쉽게 통합할 뿐만 아니라, 자동화된 프로세서와 데이터를 전송할 수도 있다. 또한, 가상 API는 프로세서와 레거시 응용 프로그램의 기능을 캡슐화 광대역 스크립트에 기초하여 웹 서비스 또는 컴포넌트 객체 모델의 구성 요소로 적용될 수 있다. 여기서, 컴포넌트 객체 모델은 다양한 언어로 만들어진 소프트웨어 컴포넌트들이 자신의 기능을 다른 소프트웨어와 공유하고 통합될 수 있도록 하는, 이진 코드 레벨에서의 서비스가 된다.
반면, API는 응용 프로그램에서 사용할 수 있도록 운영체제나 프로그래밍 언어를 제공하는 기능을 제어할 수 있게 하는 인터페이스로서, 파일 제어, 창 제어, 화상 처리, 문자 제어 등을 위한 인터페이스가 포함된다.
이에 따라, 서비스제어부(21)는 콘텐츠 실행을 위한 리소스 정보를 가상 API를 통해 인식하는 과정에서 클라이언트 단말기(10)에 구비된 리소스 정보를 동기화하여 서비스장치(20)에서 이용할 수 있도록 제공한다. 즉, 서비스제어부(21)는 클라이언트 단말기(10)의 리소스 정보를 가상 API를 통해 서비스장치(20)의 어플리케이션(콘텐츠 등)에서 사용할 수 있도록 한다.
서비스제어부(21)는 가상의 리소스 정보를 이용하여 콘텐츠를 실행한다. 여기서, 서비스제어부(21)는 콘텐츠를 실행하기 위해 필요한 리소스 정보를 확인하고, 리소스 정보에 따라 콘텐츠에 대한 데이터를 변환하고, 변환된 데이터를 실행한다. 이후, 서비스제어부(21)는 콘텐츠에 대한 실행 결과를 클라이언트 단말기(10)로 전송한다.
이와 같은 서비스장치(20)의 기능을 보다 효과적으로 수행하기 위하여, 서비스제어부(21)는 가상 API 관리모듈(21a)과, 리소스 정보 확인모듈(21b)를 구비한다. 특히, 가상 API 관리모듈(21a)은 클라이언트 단말기(10)의 요청에 따라 콘텐츠를 실행하기 위하여 클라이언트 단말기(10)에 구비된 리소스 정보를 가상 API를 통해 서비스장치(20)의 리소스로 인식할 수 있도록 제어하는 기능을 수행한다.
가상 API 관리모듈(21a)은 서비스장치(20)가 제공하는 디바이스 드라이버를 제공한다. 이때, 가상 디바이스 드라이버는 클라이언트 단말기(10)가 제한된 컴퓨팅 능력을 가지고 있는 경우에 클라이언트 단말기(10)가 원하는 정보가 실행될 드라이버를 이용하도록 지원하는 컴퓨팅 서비스를 가능하도록 한다. 상세하게는, 가상 디바이스 드라이버가 서비스장치(10)에 설치되면, 가상 API 관리모듈(21a)은 클라이언트 단말기(10)가 요청한 콘텐츠를 처리 가능한 형태의 정보로 변환할 수 있으며, 클라이언트 단말기(10)와 서비스장치(20) 간의 콘텐츠 실행을 위한 데이터 송수신할 수 있는 가상 인터페이스를 제공할 수 있다.
리소스 정보 확인모듈(21b)은 클라이언트 단말기(10)의 요청에 따라 콘텐츠를 실행하기 위하여 해당되는 클라이언트 단말기(10)의 리소스 정보를 수집한다. 이전에, 리소스 정보 확인모듈(21b)는 클라이언트 단말기(10)의 요청에 따라 선택되는 콘텐츠에 대한 리소스 정보를 확인한다. 그리고, 리소스 정보 확인모듈(21b)은 클라이언트 단말기(10)로부터 요청된 콘텐츠를 실행하기 위한 리소스 정보와 클라이언트 단말기(10)에 구비된 리소스 정보를 비교한다. 비교 결과에 따라, 리소스 정보 확인모듈(21b)은 클라이언트 단말기(10)의 리소스를 가상 API를 통해 서비스장치(20)의 리소스로 인식하여 콘텐츠를 실행할 수 있도록 한다. 예를 들어, 오디오 드라이버는 스피커 기능과 마이크 기능을 실행할 수 있는 리소스이고, 비디오 드라이버는 2D 또는 3D 등의 다차원 영상을 디스플레이 할 수 있는 리소스이고, 입출력 수단은 마우스, 키보드, 터치입력 등을 통해 데이터를 입력 또는 출력할 수 있는 리소스이고, 통신 인터페이스는 데이터 통신 방식, 통신 유효 거리, 유무선 방식 등에 따라 구분되는 리소스로서, 블루투스(Bluetooth), 유에스비(USB), 유선통신, 무선통신 등의 리소스를 포함하고, GPS는 GPS 위성 또는 셀 기반의 위치정보를 이용하는 리소스이고, 카메라는 영상을 촬영할 수 있는 리소스이고, 게임 패드는 게임 조작을 위한 조이스틱 등의 입력 수단이 되는 리소스가 된다.
또한, 상술한 바와 같이 구성되는 서비스장치(20)는 서버 기반 컴퓨팅 기반 방식 또는 클라우드 방식으로 동작하는 하나 이상의 서버로 구현될 수 있다. 특히, 클라우드 컴퓨팅 장치를 이용하여 클라우드 스트리밍 기반의 가상 API를 이용하여 콘텐츠를 실행하기 위한 리소스 정보는 인터넷 상의 클라우드 컴퓨팅 장치에 영구적으로 저장될 수 있는 클라우드 컴퓨팅 기능을 통해 제공될 수 있다. 여기서, 클라우드 컴퓨팅은 데스크톱, 태블릿 컴퓨터, 노트북, 넷북 및 스마트폰 등의 디지털 단말기에 인터넷 기술을 활용하여 가상화된 IT(Information Technology) 자원, 예를 들어, 하드웨어(서버, 스토리지, 네트워크 등), 소프트웨어(데이터베이스, 보안, 웹 서버 등), 서비스, 데이터 등을 온 디맨드(On demand) 방식으로 서비스하는 기술을 의미한다.
한편, 클라이언트 단말기(10)나 서비스장치(20)에 탑재되는 메모리는 그 장치 내에서 정보를 저장한다. 일 구현예의 경우, 메모리는 컴퓨터로 판독 가능한 매체이다. 일 구현 예에서, 메모리는 휘발성 메모리 유닛 일 수 있으며, 다른 구현예의 경우, 메모리는 비휘발성 메모리 유닛 일 수도 있다. 일 구현예의 경우, 저장장치는 컴퓨터로 판독 가능한 매체이다. 다양한 서로 다른 구현 예에서, 저장장치는 예컨대 하드디스크 장치, 광학디스크 장치, 혹은 어떤 다른 대용량 저장장치를 포함할 수도 있다.
비록 본 명세서와 도면에서는 예시적인 장치 구성을 기술하고 있지만, 본 명세서에서 설명하는 기능적인 동작과 주제의 구현물들은 다른 유형의 디지털 전자 회로로 구현되거나, 본 명세서에서 개시하는 구조 및 그 구조적인 등가물들을 포함하는 컴퓨터 소프트웨어, 펌웨어 혹은 하드웨어로 구현되거나, 이들 중 하나 이상의 결합으로 구현 가능하다. 본 명세서에서 설명하는 주제의 구현물들은 하나 이상의 컴퓨터 프로그램 제품, 다시 말해 본 발명에 따른 장치의 동작을 제어하기 위하여 혹은 이것에 의한 실행을 위하여 유형의 프로그램 저장매체 상에 인코딩된 컴퓨터 프로그램 명령에 관한 하나 이상의 모듈로서 구현될 수 있다. 컴퓨터로 판독 가능한 매체는 기계로 판독 가능한 저장 장치, 기계로 판독 가능한 저장 기판, 메모리 장치, 기계로 판독 가능한 전파형 신호에 영향을 미치는 물질의 조성물 혹은 이들 중 하나 이상의 조합일 수 있다.
도 4는 본 발명의 실시 예에 따른 서비스장치의 동작을 설명하기 위한 흐름도이다.
도 4를 참조하면, 본 발명에 따른 서비스장치(20)는 S11 단계에서 클라이언트 단말기(10)로부터 콘텐츠 실행을 요청하는 신호를 수신한다. 그리고, 서비스장치(20)는 S13 단계에서 클라이언트 단말기(10)의 요청에 따라 콘텐츠를 실행하기 위한 리소스 정보를 확인한다. 여기서, 리소스 정보는 오디오 드라이버, 비디오 드라이버, 입출력 수단, 통신 인터페이스, GPS, 카메라, 게임 패드 등이 포함된다. 이후, 서비스장치(20)는 S15 단계에서 클라이언트 단말기(10)에 구비된 리소스 정보를 수집한다.
서비스장치(20)는 S17 단계에서 콘텐츠 실행을 위해 필요한 리소스 정보와 클라이언트 단말기(10)로부터 수집된 리소스 정보를 비교한다. 즉, 서비스장치(20)는 수집된 리소스 정보 중에서 콘텐츠를 실행하기 위하여 필요한 리소스 정보의 존재 여부를 판단한다.
필요한 리소스 정보가 존재하는 경우, 서비스장치(20)는 S19 단계에서 클라이언트 단말기(10)로부터 수집된 리소스 정보를 가상의 리소스 정보로 인식한다. 즉, 비교 결과, 서비스장치(20)는 콘텐츠 실행을 위해 필요한 리소스 정보가 클라이언트 단말기(10)로부터 수집된 리소스 정보에 포함된 경우, 클라이언트 단말기(10)의 리소스 정보를 가상 API를 통해 서비스장치(20)의 리소스 정보로 인식한다. 이때, 서비스장치(20)는 가상 API를 통해 가상의 리소스 정보를 인식할 수 있다. 또한, 서비스장치(20)는 가상의 리소스 정보에 대한 싱크 타입을 확인한다. 이에 따라, 서비스제어부(21)는 콘텐츠 실행을 위한 리소스 정보를 가상 API를 통해 인식하는 과정에서 클라이언트 단말기(10)에 구비된 리소스 정보를 동기화하여 서비스장치(20)에서 이용할 수 있도록 제공한다.
서비스장치(20)는 S21 단계에서 가상의 리소스 정보를 이용하여 콘텐츠를 실행한다. 여기서, 서비스장치(20)는 콘텐츠를 실행하기 위해 필요한 리소스 정보를 확인하고, 리소스 정보에 따라 콘텐츠에 대한 데이터를 변환하고, 변환된 데이터를 실행한다. 이후, 서비스장치(20)는 S23 단계에서 콘텐츠에 대한 실행 결과를 클라이언트 단말기(10)로 전송한다.
한편, 서비스장치(20)가 가상 API를 이용하지 않고, 일반적인 API를 통해 클라우드 스트리밍 기반으로 어플리케이션을 실행하게 되면, 모든 종류의 어플리케이션을 실행하기 위한 리소스를 보유하여야 하고, 이럴 경우 유지 비용, 리소스 저장 및 관리 문제가 발생하게 된다. 하지만, 본 발명의 서비스장치(20)가 클라우드 스트리밍 기반으로 가상 API를 통해 클라이언트 단말기(10)의 리소스를 이용하게 되면, 클라이언트 단말기(10)의 리소스를 서비스장치(20) 자신의 리소스처럼 이용할 수 있기 때문에, 리소스 저장 및 관리에 따른 부하가 줄어들게 되고, 클라이언트 단말기(10)의 상태에 따라 다양한 종류의 어플리케이션 실행이 가능하다.
이를 통해, 본 발명은 클라이언트 단말기의 리소스를 가상 API를 통해 서비스장치에서 콘텐츠 실행 시 자신의 리소스처럼 이용 가능하다. 또한, 서비스장치는 여러 종류의 콘텐츠를 실행하기 위하여 필요한 리소스를 모두 저장하고 있지 않아도 되기 때문에, 리소스를 저장하기 위한 메모리 공간이 많이 필요하지 않은 효과가 있다.
도 5는 본 발명의 실시 예에 따른 클라이언트 단말기의 동작을 설명하기 위한 흐름도이다.
도 5를 참조하면, 본 발명에 따른 클라이언트 단말기(10)는 S31 단계에서 서비스장치(20)로 적어도 하나의 콘텐츠 실행을 요청한다.
클라이언트 단말기(10)는 S33 단계에서 서비스장치(20)로부터 리소스 정보의 전송을 요청하는 신호가 수신되는지 확인한다. 이때, 리소스 정보의 요청을 위한 신호가 수신되면, 클라이언트 단말기(10)는 S35 단계에서 서비스장치(20)로부터 수신되는 요청 신호에 따라 리소스 정보를 검색하여 서비스장치(20)로 전송한다. 여기서, 리소스 정보는 클라이언트 단말기(10)에 구비되어 있는 리소스에 대한 리스트로서, 오디오 드라이버, 비디오 드라이버, 입출력 수단, 통신 인터페이스, GPS, 카메라, 게임 패드 등이 포함될 수 있다.
클라이언트 단말기(10)는 S37 단계에서 서비스장치(20)로부터 가상의 리소스 정보를 통해 실행되는 콘텐츠에 대한 실행 결과를 수신한다. 그리고, 클라이언트 단말기(10)는 S39 단계에서 수신된 콘텐츠에 대한 실행 결과를 출력한다. 즉, 클라이언트 단말기(10)는 자신의 리소스 정보를 가상 API를 통해 이용하여 서비스장치(20)에서 실행되는 콘텐츠에 대한 실행 결과를 수신하여 사용자에게 제공한다.
컴퓨터 프로그램 명령어와 데이터를 저장하기에 적합한 컴퓨터로 판독 가능한 매체는, 예컨대 기록매체는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(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), 플래시 메모리, EPROM(Erasable Programmable ROM), EEPROM(Electrically Erasable Programmable ROM)과 같은 반도체 메모리를 포함한다. 프로세서와 메모리는 특수 목적의 논리 회로에 의해 보충되거나, 그것에 통합될 수 있다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함할 수 있다. 이러한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
본 명세서는 다수의 특정한 구현물의 세부사항들을 포함하지만, 이들은 어떠한 발명이나 청구 가능한 것의 범위에 대해서도 제한적인 것으로서 이해되어서는 안되며, 오히려 특정한 발명의 특정한 실시형태에 특유할 수 있는 특징들에 대한 설명으로서 이해되어야 한다. 개별적인 실시형태의 문맥에서 본 명세서에 기술된 특정한 특징들은 단일 실시형태에서 조합하여 구현될 수도 있다. 반대로, 단일 실시형태의 문맥에서 기술한 다양한 특징들 역시 개별적으로 혹은 어떠한 적절한 하위 조합으로도 복수의 실시형태에서 구현 가능하다. 나아가, 특징들이 특정한 조합으로 동작하고 초기에 그와 같이 청구된 바와 같이 묘사될 수 있지만, 청구된 조합으로부터의 하나 이상의 특징들은 일부 경우에 그 조합으로부터 배제될 수 있으며, 그 청구된 조합은 하위 조합이나 하위 조합의 변형물로 변경될 수 있다.
마찬가지로, 특정한 순서로 도면에서 동작들을 묘사하고 있지만, 이는 바람직한 결과를 얻기 위하여 도시된 그 특정한 순서나 순차적인 순서대로 그러한 동작들을 수행하여야 한다거나 모든 도시된 동작들이 수행되어야 하는 것으로 이해되어서는 안 된다. 특정한 경우, 멀티태스킹과 병렬 프로세싱이 유리할 수 있다. 또한, 상술한 실시형태의 다양한 시스템 컴포넌트의 분리는 그러한 분리를 모든 실시형태에서 요구하는 것으로 이해되어서는 안되며, 설명한 프로그램 컴포넌트와 시스템들은 일반적으로 단일의 소프트웨어 제품으로 함께 통합되거나 다중 소프트웨어 제품에 패키징 될 수 있다는 점을 이해하여야 한다.
한편, 본 명세서와 도면에 개시된 본 발명의 실시 예들은 이해를 돕기 위해 특정 예를 제시한 것에 지나지 않으며, 본 발명의 범위를 한정하고자 하는 것은 아니다. 여기에 개시된 실시 예들 이외에도 본 발명의 기술적 사상에 바탕을 둔 다른 변형 예들이 실시 가능하다는 것은, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 자명한 것이다.
본 발명은 클라우드 스트리밍 기반의 가상 API 제공 방법 및 시스템에 관한 것으로, 가상 API를 통해 클라이언트 단말기의 리소스를 서비스장치에서 이용하여 콘텐츠를 실행하고, 실행 결과를 클라이언트 단말기로 제공할 수 있다. 따라서, 서비스장치에서 콘텐츠 실행 시 클라이언튼 단말기의 리소스를 자신의 리소스처럼 이용 가능하다. 이는 시판 또는 영업의 가능성이 충분할 뿐만 아니라 현실적으로 명백하게 실시할 수 있는 정도이므로 산업상 이용가능성이 있다.
10: 클라이언트 단말기 20: 서비스장치 30: 통신망
11: 제어부 12: 입력부 13: 표시부
14: 저장부 15: 오디오처리부 16: 통신부
21: 서비스제어부 22: 서비스저장부 23: 서비스통신부
21a: 가상 API 관리모듈 21b: 리소스 정보 확인모듈
22a: 가상의 리소스 정보
100: 클라우드 스트리밍 기반의 가상 API 제공 시스템

Claims (11)

  1. 서비스장치로 적어도 하나의 콘텐츠 실행을 요청하고, 상기 서비스장치로부터 수신되는 요청 신호에 따라 적어도 하나의 리소스 정보를 전송하고, 상기 서비스장치로부터 가상의 리소스 정보를 통해 실행되는 콘텐츠에 대한 실행 결과를 수신하여 출력하는 클라이언트 단말기; 및
    상기 클라이언트 단말기의 요청에 따라 적어도 하나의 콘텐츠를 실행하기 위한 리소스 정보를 확인하고, 상기 클라이언트 단말기에 구비된 적어도 하나의 리소스 정보를 수집하고, 상기 수집된 리소스 정보 중에서 상기 콘텐츠를 실행하기 위하여 필요한 리소스 정보의 존재 여부에 따라 상기 클라이언트 단말기로부터 수집된 리소스 정보를 가상의 리소스 정보로 인식하고, 상기 가상의 리소스 정보를 이용하여 상기 콘텐츠를 실행하는 상기 서비스장치;
    를 포함하는 것을 특징으로 하는 클라우드 스트리밍 기반의 가상 API 제공 시스템.
  2. 적어도 하나의 클라이언트 단말기와 통신하여 가상 API를 통해 콘텐츠를 실행하기 위한 데이터를 송수신하는 서비스통신부; 및
    클라이언트 단말기의 요청에 따라 적어도 하나의 콘텐츠를 실행하기 위한 리소스 정보를 확인하고, 상기 클라이언트 단말기에 구비된 적어도 하나의 리소스 정보를 수집하고, 상기 수집된 리소스 정보 중에서 상기 콘텐츠를 실행하기 위하여 필요한 리소스 정보의 존재 여부에 따라 상기 클라이언트 단말기로부터 수집된 리소스 정보를 가상의 리소스 정보로 인식하고, 상기 가상의 리소스 정보를 이용하여 상기 콘텐츠를 실행하도록 제어하는 서비스제어부;
    를 포함하는 것을 특징으로 하는 서비스장치.
  3. 제2항에 있어서,
    상기 클라이언트 단말기에 대한 리소스 정보와 대응하는 가상의 리소스 정보를 저장하는 서비스저장부;
    를 더 포함하는 것을 특징으로 하는 서비스장치.
  4. 제2항 내지 제3항 중 어느 한 항에 있어서,
    상기 서비스통신부, 서비스제어부 또는 서비스저장부가 클라우드 컴퓨팅 기반으로 동작하는 하나 이상의 서버로 구현되는 것을 특징으로 하는 서비스장치.
  5. 서비스장치가 클라이언트 단말기의 요청에 따라 적어도 하나의 콘텐츠를 실행하기 위한 리소스 정보를 확인하는 단계;
    상기 서비스장치가 상기 클라이언트 단말기에 구비된 적어도 하나의 리소스 정보를 수집하는 단계:
    상기 서비스장치가 상기 수집된 리소스 정보 중에서 상기 콘텐츠를 실행하기 위하여 필요한 리소스 정보의 존재 여부를 판단하는 단계;
    상기 필요한 리소스 정보가 존재하는 경우, 상기 서비스장치가 상기 클라이언트 단말기로부터 수집된 리소스 정보를 가상의 리소스 정보로 인식하는 단계; 및
    상기 서비스장치가 상기 가상의 리소스 정보를 이용하여 상기 콘텐츠를 실행하는 단계;
    를 포함하는 것을 특징으로 하는 클라우드 스트리밍 기반의 가상 API 제공 방법.
  6. 제5항에 있어서, 상기 리소스 정보는
    오디오 드라이버, 비디오 드라이버, 입출력 수단, 통신 인터페이스, GPS, 카메라, 게임 패드 중 적어도 하나인 것을 특징으로 하는 클라우드 스트리밍 기반의 가상 API 제공 방법.
  7. 제5항에 있어서, 상기 인식하는 단계는
    상기 서비스장치가 가상 API를 통해 상기 가상의 리소스 정보를 인식하는 것을 특징으로 하는 클라우드 스트리밍 기반의 가상 API 제공 방법.
  8. 제5항에 있어서, 상기 인식하는 단계는
    상기 서비스장치가 상기 가상의 리소스 정보에 대한 싱크 타입을 확인하는 것을 특징으로 하는 클라우드 스트리밍 기반의 가상 API 제공 방법.
  9. 제5항에 있어서, 상기 실행하는 단계는
    상기 서비스장치가 상기 콘텐츠를 실행하기 위해 필요한 리소스 정보를 확인하는 단계;
    상기 서비스장치가 상기 리소스 정보에 따라 상기 콘텐츠에 대한 데이터를 변환하는 단계; 및
    상기 서비스장치가 상기 변환된 데이터를 실행하는 단계;
    를 포함하는 것을 특징으로 하는 클라우드 스트리밍 기반의 가상 API 제공 방법.
  10. 제5항에 있어서, 상기 실행하는 단계 이후에,
    상기 서비스장치가 상기 콘텐츠에 대한 실행 결과를 상기 클라이언트 단말기로 전송하는 단계;
    를 더 포함하는 것을 특징으로 하는 클라우드 스트리밍 기반의 가상 API 제공 방법.
  11. 제5항 내지 제10항 중 어느 한 항에 기재된 클라우드 스트리밍 기반의 가상 API 제공 방법을 실행하는 프로그램을 기록한 컴퓨터 판독 가능한 기록매체.
KR1020130012750A 2013-02-05 2013-02-05 클라우드 스트리밍 기반의 가상 api 제공 방법, 시스템, 서비스장치 및 클라이언트 단말기 KR101430927B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020130012750A KR101430927B1 (ko) 2013-02-05 2013-02-05 클라우드 스트리밍 기반의 가상 api 제공 방법, 시스템, 서비스장치 및 클라이언트 단말기

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130012750A KR101430927B1 (ko) 2013-02-05 2013-02-05 클라우드 스트리밍 기반의 가상 api 제공 방법, 시스템, 서비스장치 및 클라이언트 단말기

Publications (2)

Publication Number Publication Date
KR20140100039A KR20140100039A (ko) 2014-08-14
KR101430927B1 true KR101430927B1 (ko) 2014-08-18

Family

ID=51746044

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130012750A KR101430927B1 (ko) 2013-02-05 2013-02-05 클라우드 스트리밍 기반의 가상 api 제공 방법, 시스템, 서비스장치 및 클라이언트 단말기

Country Status (1)

Country Link
KR (1) KR101430927B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102552753B1 (ko) * 2018-10-24 2023-07-05 에스케이텔레콤 주식회사 딜레이 절감을 위한 vmi 화면 표시 방법 및 장치

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110040604A (ko) * 2009-10-14 2011-04-20 삼성전자주식회사 클라우드 서버, 클라이언트 단말, 디바이스, 클라우드 서버의 동작 방법 및 클라이언트 단말의 동작 방법
KR20110052714A (ko) * 2008-08-25 2011-05-18 인터내셔널 비지네스 머신즈 코포레이션 이름 분석을 사용한 가상 리소스의 프로비저닝

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110052714A (ko) * 2008-08-25 2011-05-18 인터내셔널 비지네스 머신즈 코포레이션 이름 분석을 사용한 가상 리소스의 프로비저닝
KR20110040604A (ko) * 2009-10-14 2011-04-20 삼성전자주식회사 클라우드 서버, 클라이언트 단말, 디바이스, 클라우드 서버의 동작 방법 및 클라이언트 단말의 동작 방법

Also Published As

Publication number Publication date
KR20140100039A (ko) 2014-08-14

Similar Documents

Publication Publication Date Title
CN106133826B (zh) 用于语言模型自定义的灵活模式
KR101479464B1 (ko) 클라우드 스트리밍 기반의 데이터 전송 제어 방법, 시스템, 클라이언트 단말기 및 서비스장치
KR101755012B1 (ko) 컨텐츠 공유 방법, 시스템 및 그의 단말기
KR20140131087A (ko) 학습 컨텐츠 제공 방법, 이를 위한 시스템 및 장치
KR20140056673A (ko) 클라우드 스트리밍 기반의 게임 제공 방법, 이를 위한 시스템, 이를 위한 클라이언트 단말기, 이를 위한 서비스장치 및 이 방법이 기록된 컴퓨터로 판독 가능한 기록 매체
KR101479463B1 (ko) 클라우드 스트리밍 기반의 데이터 전송 방법, 시스템, 클라이언트 단말기 및 서비스장치
KR20150046862A (ko) 클라우드 컴퓨팅 기반의 데이터 제공 방법, 이를 위한 시스템 및 장치
KR101899970B1 (ko) 모바일 클라우드 환경에 적용되는 모바일 단말과 클라우드 서버 및 이를 이용한 모바일 클라우드 컴퓨팅 방법
KR101430928B1 (ko) 클라우드 스트리밍 기반의 데이터 이동 방법, 시스템, 클라이언트 단말기 및 서비스장치
KR101430927B1 (ko) 클라우드 스트리밍 기반의 가상 api 제공 방법, 시스템, 서비스장치 및 클라이언트 단말기
KR101467748B1 (ko) 클라우드 컴퓨팅 기반의 데이터 관리 방법, 이를 위한 시스템 및 장치
KR20150035100A (ko) 스크롤 반응형 광고배너 제공 방법, 이를 위한 시스템 및 장치
CN109074357A (zh) 动态地管理服务的不同版本
KR101544732B1 (ko) 클라우드 서비스를 이용한 어플리케이션 제공 방법, 이를 위한 시스템 및 장치
KR20140066270A (ko) 클라우드 스트리밍 기반의 게임 제공 방법, 이를 위한 시스템, 이를 위한 클라이언트 단말기, 이를 위한 서비스장치 및 이 방법이 기록된 컴퓨터로 판독 가능한 기록 매체
US11651332B2 (en) Distributed collaborative environment using physical notes
KR101412310B1 (ko) 가상단말 클라우드 네트워크 시스템 및 이기종 단말 플랫폼 어플리케이션 제공방법
KR102004968B1 (ko) 메신저 서비스의 첨부파일 관리 방법, 이를 위한 시스템, 이를 위한 단말기 및 이를 위한 서비스장치
KR101532909B1 (ko) 메신저 서비스의 첨부파일 관리 방법, 이를 위한 시스템 및 이를 위한 단말 장치
KR101876510B1 (ko) 오픈 api를 적용한 런처 서비스 제공 방법, 이를 위한 시스템 및 장치
KR101565741B1 (ko) 어플리케이션 간의 데이터 연동 방법, 이를 위한 시스템, 이를 위한 단말기 및 이를 위한 서비스장치
KR20140090393A (ko) 단말기의 사용자 인터페이스 제공 방법, 이를 위한 시스템 및 장치
KR102163111B1 (ko) 어플리케이션을 이용한 푸쉬 서비스 제공 방법 및 이를 위한 장치
KR20120112951A (ko) 컨텐츠 제공 방법, 시스템 및 그의 단말기
KR101401937B1 (ko) 플러그인 방식의 화면 가상화 제공 방법, 이를 위한 시스템, 이를 위한 단말기 및 이를 위한 서비스장치

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20180711

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20190718

Year of fee payment: 6