KR101162865B1 - 하이퍼바이저 기반의 광고를 위한 단말장치 및 그의 동작 방법 - Google Patents

하이퍼바이저 기반의 광고를 위한 단말장치 및 그의 동작 방법 Download PDF

Info

Publication number
KR101162865B1
KR101162865B1 KR1020100062388A KR20100062388A KR101162865B1 KR 101162865 B1 KR101162865 B1 KR 101162865B1 KR 1020100062388 A KR1020100062388 A KR 1020100062388A KR 20100062388 A KR20100062388 A KR 20100062388A KR 101162865 B1 KR101162865 B1 KR 101162865B1
Authority
KR
South Korea
Prior art keywords
advertisement
module
user
unit
hypervisor
Prior art date
Application number
KR1020100062388A
Other languages
English (en)
Other versions
KR20120001549A (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 KR1020100062388A priority Critical patent/KR101162865B1/ko
Priority to US13/171,750 priority patent/US20110321044A1/en
Priority to EP11171929.0A priority patent/EP2402858B1/en
Priority to CN201110190897.5A priority patent/CN102314390B/zh
Priority to JP2011144208A priority patent/JP5320440B2/ja
Publication of KR20120001549A publication Critical patent/KR20120001549A/ko
Application granted granted Critical
Publication of KR101162865B1 publication Critical patent/KR101162865B1/ko

Links

Images

Classifications

    • 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/448Execution paradigms, e.g. implementations of programming paradigms
    • 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/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4494Execution paradigms, e.g. implementations of programming paradigms data driven
    • 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/451Execution arrangements for user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Development Economics (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Game Theory and Decision Science (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • Human Computer Interaction (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

하이퍼바이저 기반의 광고를 위한 단말장치 및 방법이 개시된다. 본 단말장치는 광고를 제공하는 광고 모듈, 사용자 모듈의 사용 시간을 모니터링하는 광고 시간 컨트롤부, 및 광고 시간 컨트롤부의 모니터링 결과에 기초하여, 광고 모듈을 동작시키는 클라이언트 하이퍼바이저부;를 포함한다. 이에 의해, 광고주 및 단말장치의 사용자가 만족할 수 있는 광고 제공이 가능하다.

Description

하이퍼바이저 기반의 광고를 위한 단말장치 및 그의 동작 방법{Terminal device for advertisement based hypervisor and operating method thereof}
본 발명은 하이퍼바이저 기반의 광고를 위한 단말장치 및 그의 동작 방법에 관한 것으로, 보다 상세하게는 클라이언트 하이퍼바이저 상에서 동작하는 광고 가상머신 및 광고 운영체제를 포함하는 광고 시스템에 의해 광고를 하는 하이퍼바이저 기반의 광고를 위한 단말장치 및 그의 동작 방법에 관한 것이다.
고전적인 광고 방식으로는 간판, 전단지, 현수막과 같은 실체적인 형체가 있는 방식이었다. 이러한 고전적인 광고 방식에서는 광고 대상을 특정할 수 없고, 광고물이 광고 대상에게 노출될 수 있도록 하기 위한 장소 및 인력을 필요로 한다.
하지만, 개인용 컴퓨터의 보급이 확대되고, 인터넷과 같은 통신망이 발전함에 따라, 고전적인 광고 방식에 비하여 온라인 광고 방식 혹은 소프트웨어를 이용한 광고 방식이 보다 효율적인 광고 방식으로 인식되고 있다.
보다 구체적으로, 온라인 광고 방식의 경우 사용자가 특정 정보를 검색했을 때 해당 광고가 노출되거나, 소프트웨어를 이용한 광고 방식의 경우 해당 소프트웨어를 사용하는 사용자에게 해당 광고가 노출되는 것이므로, 광고 대상이 특정될 수 있으므로, 불특정 다수에게 광고 컨텐츠를 전달하는 것에 비하여 큰 광고 효과를 거둘 수 있다. 또한, 온라인 광고 방식 및 소프트웨어를 이용한 광고 방식은 별도의 광고물을 필요로 하지 않으므로, 그에 따른 장소 및 인력이 불필요하다.
온라인 광고 방식 및 소프트웨어를 이용한 광고 방식이 고전적인 광고 방식에 비하여 효율적인 광고 방식이기는 하지만, 비용을 지불하고 광고를 게재하는 광고주의 입장에서는 자신의 광고가 얼마나 효율적으로 광고 대상에게 전달이 되었는지를 알고자 한다.
이러한 이유로, 기존의 온라인 광고 방식 및 소프트웨어를 이용한 광고 방식으로 가장 많이 사용되는 것이 배너(banner)를 이용한 광고 방식이다. 배너를 이용한 광고 방식에서는 사용자가 배너를 클릭(click)하면 해당 광고가 사용자에게 노출이 된 것으로 판단한다. 이 경우, 사용자에게 광고를 봤다는 확인으로 클릭과 같은 인위적인 행위를 요구하는 것이기 때문에, 사용자에게 큰 불편을 줄 수 있고, 사용자가 광고를 봤더라도 배너를 클릭하지 않을 경우 배너에 의한 광고 효과를 정확히 알 수 없다.
기존의 온라인 광고 방식 및 소프트웨어를 이용한 광고 방식의 다른 예로, 센서와 같은 별도의 하드웨어를 기반으로 한 방식도 개시되어 있다. 이것은 사용자가 광고 컨텐츠를 봤다는 별도의 확인을 할 필요가 없으나, 사용자측의 컴퓨터에 사용자의 시선을 추적하기 위한 별도의 하드웨어가 설치되어야 하는 것이기 때문에, 실제적으로 구현이 용이하지 않다.
상술한 광고 방식 이외에도 온라인 및 소프트웨어를 이용하여 보다 효과적으로 광고 컨텐츠를 광고 대상에게 전달하고, 광고 효과를 알기 위한 여러 방안들이 안출되었지만, 대부분 2차원 평면상에서 광고 컨텐츠가 일정 공간을 차지하고 있음에 따라, 강제적인 광고 컨텐츠의 노출로 인해 사용자에게 거부감을 줄 수 있으며, 광고 컨텐츠가 차지하고 있는 공간으로 인해 실질적인 어플리케이션의 영역이 좁아져 어플리케이션 본래의 동작을 방해하는 문제점이 있다.
본 발명의 실시예는 사용자가 클라이언트 하이퍼바이저 기반으로 동작하는 단말장치를 이용하는 도중 광고주의 광고 정책에 따라 광고 컨텐츠가 재생하도록 하여 광고를 노출시키는 하이퍼바이저 기반의 광고를 위한 단말장치 및 그의 동작 방법을 제공함을 목적으로 한다.
본 발명의 일 실시예에 따르면, 사용자 모듈; 광고 컨텐츠를 제공하는 광고 모듈; 상기 사용자 모듈의 사용 시간을 모니터링하는 광고 시간 컨트롤부; 및 상기 광고 시간 컨트롤부의 모니터링 결과에 기초하여, 상기 광고 모듈을 동작시키는 클라이언트 하이퍼바이저부;를 포함하는 하이퍼바이저 기반의 광고를 위한 단말장치가 제공된다.
상기 광고 시간 컨트롤부는, 상기 모니터링 결과와 기설정된 광고 스케쥴을 참조하여 상기 광고 모듈이 동작할 시간이 되었다고 판단되면, 상기 클라이언트 하이퍼바이저부로 상기 광고 모듈로의 동작전환을 요청하며, 상기 클라이언트 하이퍼바이저부는, 상기 동작 요청에 대하여 상기 광고 모듈을 동작시킬 수 있다.
상기 클라이언트 하이퍼바이저부는, 상기 사용자 모듈 및 상기 광고 모듈 중 어느 하나에 상기 입출력 제어권을 선택적으로 부여하는 운영체제(OS) 스위치를 포함할 수 있다.
상기 광고 시간 컨트롤부는, 상기 사용자 모듈에 포함된 사용자 어플리케이션에 내장된 것일 수 있다.
상기 광고 시간 컨트롤부는, 상기 사용자 모듈에 포함된 상기 사용자 어플리케이션과 연동하는 단독 어플리케이션일 수 있다.
상기 광고 모듈에 의해 제공된 상기 광고 컨텐츠의 재생 관련 정보를 로그로 기록하는 로그부; 및 외부로부터 광고 정책을 수신하여 상기 광고 시간 컨트롤부에 상기 광고 스케쥴을 제공하는 광고 스케쥴 컨트롤부;를 더 포함할 수 있다.
상기 광고 시간 컨트롤부는, 상기 광고 모듈의 누적 동작시간과 상기 광고 스케쥴을 참조하여 상기 광고 모듈의 누적 동작시간이 상기 광고 스케쥴에서 설정된 기준 동작시간 미만인 경우 상기 광고 모듈의 동작을 요청하며, 상기 클라이언트 하이퍼바이저는, 상기 동작 요청에 대하여 상기 광고 모듈을 동작시킬 수 있다.
상기 광고 시간 컨트롤부가 참조하는 상기 누적 동작시간은 상기 로그부에 의해 기록된 로그로부터 획득한 것일 수 있다.
상기 로그부는 상기 광고 모듈이 동작을 시작한 시점부터 동작을 완료한 시점까지 재생된 광고 컨텐츠의 재생 관련 정보를 기록하는 것일 수 있다.
상기 로그부, 및 상기 광고 스케쥴 컨트롤부는, 상기 광고 모듈 내에 포함된 상기 광고 어플리케이션부에 내장되는 것일 수 있다.
상기 로그부, 및 상기 광고 설정 컨트롤부는, 상기 광고 모듈내에 설치되어 상기 광고 어플리케이션부와 연동하는 단독 어플리케이션인 것일 수 있다.
상기 광고 모듈은, 상기 광고 컨텐츠의 재생이 완료되면, 상기 클라이언트 하이퍼바이저부에 광고 재생의 완료를 통지하고, 상기 사용자 모듈로의 동작 전환을 요청하며, 상기 클라이언트 하이퍼바이저부는, 상기 사용자 모듈을 재동작시키는 것일 수 있다.
본 발명의 일 실시예에 따르면, 사용자 모듈, 광고를 제공하는 광고 모듈을 포함하는 하이퍼바이저 기반의 광고를 위한 단말장치의 동작 방법에 있어서, 상기 사용자 모듈의 사용 시간을 모니터링하는 단계; 및 상기 모니터링 결과에 기초하여, 상기 광고 모듈을 동작시키는 단계;를 포함하는 하이퍼바이저 기반의 광고를 위한 단말장치의 동작 방법이 제공된다.
상기 동작시키는 단계는, 상기 모니터링 결과와 기설정된 광고 스케쥴을 참조하여 상기 광고 모듈이 동작할 시간이 되었다고 판단되면, 상기 광고 모듈을 동작시키는 것일 수 있다.
본 발명의 일 실시예에 따른 하이퍼바이저 기반의 광고를 위한 단말장치의 동작 방법은, 상기 광고 모듈에 의해 제공되는 상기 광고의 재생 관련 정보를 로그로 기록하는 단계; 및 외부로부터 광고 정책을 수신하여 상기 광고 스케쥴을 제공하는 단계;를 더 포함할 수 있다.
상기 기록하는 단계는, 상기 광고 모듈이 동작을 시작한 시점부터 동작을 완료한 시점까지 상기 광고의 재생 관련 정보를 기록하는 것일 수 있다.
상기 동작시키는 단계는, 상기 광고 모듈의 누적 동작시간과 상기 광고 스케쥴을 참조하여 상기 광고 모듈의 누적 동작시간이 상기 광고 스케쥴에서 설정된 기준 동작시간 미만인 경우 상기 광고 모듈을 동작시키는 것일 수 있다.
상기 누적 동작시간은 상기 기록된 로그로부터 획득하는 것일 수 있다.
본 발명의 일 실시예에 따른 하이퍼바이저 기반의 광고를 위한 단말장치의 동작 방법은, 상기 광고 제공이 완료되면, 상기 사용자 모듈을 재동작시키는 단계;를 더 포함하는 것일 수 있다.
본 발명의 일 실시예에 따르면, 광고 정책을 저장하는 광고 관리 서버; 및 사용자 모듈, 광고를 제공하는 광고 모듈, 상기 사용자 모듈의 사용 시간을 모니터링하는 광고 시간 컨트롤부, 및 상기 광고 시간 컨트롤부의 모니터링 결과와 상기 광고 관리 서버로부터 수신 되는 광고 정책에 따라서, 상기 광고 모듈을 동작시키는 클라이언트 하이퍼바이저부를 내장하는 단말장치; 를 포함하는 하이퍼바이저 기반의 광고를 위한 시스템이 제공된다.
본 발명의 실시예에 따른 하이퍼바이저 기반의 광고를 위한 단말장치 및 그의 동작 방법은 사용자가 단말장치를 사용하고 있는 상태에서 광고주의 광고 정책에 따른 광고 시간이 되면, 광고 컨텐츠가 자동으로 재생됨으로써, 사용자가 광고를 시청하기 위하여 혹은 광고를 시청하였음을 확인하기 위하여 별도의 동작을 필요로 하지 않기 때문에, 광고 노출에 따른 거부감을 해소할 수 있는 효과가 있다.
또한, 본 발명의 실시예에 따른 하이퍼바이저 기반의 광고를 위한 단말장치 및 그의 동작 방법은 클라이언트 하이퍼바이저 상에 광고 가상 머신과 광고 운영체제가 사용자 가상 머신과 사용자 운영체제와는 별도로 설치됨으로써, 광고 컨텐츠를 재생하기 위한 동작이 사용자 가상 머신과 사용자 운영체제에 영향을 미치지 않으므로, 사용자가 단말장치를 사용함에 있어 불편함을 주지 않는 효과가 있다.
또한, 본 발명의 실시예에 따른 하이퍼바이저 기반의 광고를 위한 단말장치 및 그의 동작 방법은 사용자는 클라이언트 하이퍼바이저에 대한 제어 권한이 부여되지 않기 때문에, 광고 가상 머신 및 광고 운영체제와 같은 광고 시스템을 사용자가 삭제 혹은 조작이 불가능하다. 그러므로, 광고주에게 안정적인 광고 효과를 보증할 수 있는 효과가 있다.
도 1은 본 발명의 일 실시예에 따른 광고 시스템의 네트워크 구성도,
도 2는 본 발명의 일 실시예에 따른 광고를 위한 단말장치의 블럭도,
도 3은 본 발명의 다른 실시예에 따른 광고를 위한 단말장치의 블럭도,
도 4는 본 발명의 일 실시예에 따른 광고를 위한 단말장치의 동작 방법을 설명하기 위한 흐름도, 그리고,
도 5는 본 발명의 다른 실시예에 따른 광고를 위한 단말장치의 동작 방법을 설명하기 위한 흐름도이다.
이상의 본 발명의 목적들, 다른 목적들, 특징들 및 이점들은 첨부된 도면과 관련된 이하의 바람직한 실시예들을 통해서 쉽게 이해될 것이다. 그러나 본 발명은 여기서 설명되는 실시예들에 한정되지 않고 다른 형태로 구체화될 수도 있다. 오히려, 여기서 소개되는 실시예들은 개시된 내용이 철저하고 완전해질 수 있도록 그리고 당업자에게 본 발명의 사상이 충분히 전달될 수 있도록 하기 위해 제공되는 것이다. 본 명세서에서, 어떤 구성요소가 다른 구성요소 상에 있다고 언급되는 경우에 그것은 다른 구성요소 상에 직접 형성될 수 있거나 또는 그들 사이에 제 3의 구성요소가 개재될 수도 있다는 것을 의미한다. 또한 도면들에 있어서, 구성요소들의 두께는 기술적 내용의 효과적인 설명을 위해 과장된 것이다.
본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 '포함한다(comprises)' 및/또는 '포함하는(comprising)'은 언급된 구성요소는 하나 이상의 다른 구성요소의 존재 또는 추가를 배제하지 않는다.
이하, 도면을 참조하여 본 발명을 상세히 설명하도록 한다. 아래의 특정 실시예들을 기술하는데 있어서, 여러 가지의 특정적인 내용들은 발명을 더 구체적으로 설명하고 이해를 돕기 위해 작성되었다. 하지만 본 발명을 이해할 수 있을 정도로 이 분야의 지식을 갖고 있는 독자는 이러한 여러 가지의 특정적인 내용들이 없어도 사용될 수 있다는 것을 인지할 수 있다. 어떤 경우에는, 발명을 기술하는 데 있어서 흔히 알려졌으면서 발명과 크게 관련 없는 부분들은 본 발명을 설명하는 데 있어 별 이유 없이 혼돈이 오는 것을 막기 위해 기술하지 않음을 미리 언급해 둔다.
한편 본원 명세서에서는, 클라이언트 하이퍼바이저부(또는 OS 스위치)가 사용자 모듈(또는 광고용 모듈)을 실행(또는 구동 또는 활성화)시킨다는 의미는 클라이언트 하이퍼바이저부(또는 OS 스위치)가 사용자 모듈(또는 광고용 모듈)이 동작할 수 있는 자원을 할당(또는 분배)한다는 의미로 사용하기로 한다. 또한, 본원 명세서에서 클라이언트 하이퍼바이저부(또는 OS 스위치)가 사용자 모듈(또는 광고용 모듈)에 자원을 할당한다는 표현은 사용자 모듈(또는 광고용 모듈)이 동작하는데 필요한 모든 자원을 모두 할당받는 것을 의미하는 것으로 사용하기로 한다.. 또한, 본원 명세서와 도면들에서 클라이언트 하이퍼바이저부(또는 OS 스위치)가 입출력 제어권을 사용자 모듈(또는 광고용 모듈)에게 부여한다는 표현은, 특별히 입출력 제어권만을 부여한다는 표현이 있는 경우를 제외하고는, 사용자 모듈(또는 광고용 모듈)이 동작하는데 필요한 모든 자원을 할당받는 것을 의미하는 것으로 사용하기로 한다.
도 1은 본 발명의 일 실시예에 따른 광고 시스템의 네트워크 구성도이다.
도 1을 참조하면, 본 발명의 일 실시예에 따른 광고 시스템은 하이퍼바이저(hypervisor) 기반의 광고를 위한 단말장치(이하, '단말장치'라 한다)(100), 광고 관리 서버(300), 및 광고주 서버(400)를 포함하며, 이들은 상호 통신 가능하도록 네트워크(200)를 통해 연결된다. 여기서, 네트워크(200)는 무선 혹은 유선의 통신망을 통칭하며, 통신망의 종류는 한정되지 않는다.
본 실시예에서의 단말장치(100)는 하이퍼바이저를 기반으로 동작하는 장치이다. 일반적으로, 하이퍼바이저는 서버에서 다수의 운영체제(Operating System : OS)를 동시에 실행하기 위한 가상 플랫폼으로, 가상 머신 모니터(virtual machine monitor)라고 하기도 한다. 이러한 하이퍼바이저의 개념을 서버가 아닌 단말장치에 적용한 것이 클라이언트 하이퍼바이저이다.
서버 하이퍼바이저와 클라이언트 하이퍼바이저의 차이점을 간략히 살펴보면, 서버 하이퍼바이저는 가상머신의 이동성(portability)와 물리적 하드웨어의 활용 부분에 초점이 맞추어져 있으나, 클라이언트 하이퍼바이저는 클라이언트 장치의 관리와 개인적인 용도 및 업무적 용도와 같은 목적에 따라 가상머신을 분리하여 보안을 강화하는데 초점이 맞추어져 있다. 또한, 서버 하이퍼바이저는 지원 가능한 하드웨어 모델의 범위가 좁은 반면, 클라이언트 하이퍼바이저는 다양한 모바일 기기의 사양을 지원한다.
이러한 클라이언트 하이퍼바이저를 기반으로 동작하는 단말장치(100)는 하이퍼바이저가 메인 OS의 역할을 하고, 그 클라이언트 하이퍼바이저 상에서 가상 머신들이 게스트(guest) OS로 동작하는 형태일 수 있다.
단말장치(100)는 클라이언트 하이퍼바이저부 상에 적어도 하나의 가상 머신(Virtual machine)이 설치되고, 각 가상 머신 상에는 각각의 운영체제부가 설치되며, 각 운영체제부 상에는 각각의 어플리케이션부가 설치될 수 있다. 또한, 하나의 운영체제부 상에는 하나 혹은 그 이상의 어플리케이션부가 설치될 수 있다.
본 실시예에서의 단말장치(100)에는 클라이언트 하이퍼바이저부 상에 사용자 가상 머신과 광고 가상 머신이 설치된다. 또한, 사용자 가상 머신 상에는 사용자 운영체제부가 설치되고, 광고 가상 머신 상에서는 광고 어플리케이션부가 설치된다.
본 실시예에서, 사용자 어플리케이션부는 광고 컨텐츠 재생을 위한 광고 어플리케이션부를 제외하고, 사용자의 필요에 의해 혹은 단말장치(100)에서 기본으로 제공하는 어플리케이션을 일컫는 것으로, 복수 개일 수 있다. 즉, 사용자 운영체제부 상에는 하나 혹은 그 이상의 사용자 어플리케이션부가 설치될 수 있다.
도 1에서는 단말장치(100)로 데스크탑 형태의 컴퓨터를 도시하였으나, 이는 반드시 여기에 한정되지는 않는다. 보다 구체적으로, 단말장치(100)는 운영체제(Operating System : OS)가 사용되는 장치 즉, 적어도 하나의 운영체제를 동시에 구동할 수 있고, 여러 운영체제들 간의 자원 분배와 독립적인 동작이 보장되는 장치라면 모두 적용 가능하다. 예를 들면, 통상의 컴퓨터 장치, 및 스마트폰이 적용될 수 있다. 단말장치(100)의 구체적인 구성에 대하여는 후술하는 도 2에서 보다 구체적으로 설명한다.
광고 관리 서버(300)는 광고주 서버(400)와 단말장치(100) 간의 중간 매개체 역할을 하는 서버에 해당한다. 본 실시예에서는, 각각 하나의 단말장치(100), 광고주 서버(400)가 네트워크(200)를 통해 광고 관리 서버(300)와 연결되어 있는 상태를 도시하였다. 하지만, 이는 설명의 편의를 위한 것일 뿐, 이에 한정되지 않음은 자명하다.
즉, 광고 관리 서버(300)는 여러 광고주로부터 광고를 위임받을 수 있으므로, 하나 혹은 그 이상의 광고주 서버(400)와 연결될 수 있다. 또한, 광고 관리 서버(300)는 여러 광고주 서버(400)로부터 제공받는 광고 컨텐츠를 여러 사용자에게 배포하여야 하므로, 복수의 단말장치(100)와 연결될 수 있다.
광고 관리 서버(300)는 클라이언트 하이퍼바이저 관리부(310), 광고 할당부(320), 광고 추적부(330), 및 광고 컨텐츠 데이터베이스(Database : DB)(340)를 포함한다.
클라이언트 하이퍼바이저 관리부(310)는 단말장치(100)의 클라이언트 하이퍼바이저부를 관리한다. 여기서, 클라이언트 하이퍼바이저부의 관리라 함은, 클라이언트 하이퍼바이저부가 최신의 정보를 유지할 수 있도록 정보를 전송, 저장, 갱신 및 삭제하는 행위를 포함한다.
광고 할당부(320)는 광고주 서버(400)로부터 광고주의 광고 정책, 및 광고 컨텐츠를 제공받는다. 광고 할당부(320)는 광고주의 광고 정책을 단말장치(100)로 전송할 수 있다. 이에 의해, 광고주의 광고 정책이 단말장치(100)에서 광고 컨텐츠를 재생할 때 적용될 수 있다.
광고 추적부(330)는 단말장치(100)에서 광고 컨텐츠가 재생된 결과를 기록한 로그를 네트워크(200)를 통해 가져온 후, 광고 결과를 추적한다. 광고 할당부(320) 및 광고 추적부(330)는 네트워크(200)를 통해 단말장치(100)와 직접 통신이 가능할 수 있다. 광고 추적부(330)의 광고 결과에 대한 추적 결과는 사용자의 단말장치(100)에 대한 사용 가능 시간, 혹은 단말장치(100)에 설치된 사용자 가상 머신, 사용자 어플리케이션부와 같은 어플리케이션의 사용 가능 시간을 연장하는데 사용될 수 있다.
통상적으로, 사용자는 단말장치(100) 혹은 소정 어플리케이션을 정해진 금액을 지불하고 구입하여 사용하여야 한다. 본 실시예에서는, 이와 같은 경우를 광고 시스템과 연계할 수 있다. 즉, 사용자가 단말장치(100)를 통해 광고를 시청하면, 그 시청 결과를 단말장치(100) 혹은 소정 어플리케이션의 비용으로 환산하여 대체할 수 있다. 이 경우, 사용자 입장에서는 비용 절감의 효과를 기대할 수 있고, 광고주 입장에서는 광고 노출의 기회를 보장할 수 있는 효과가 있다.
광고 컨텐츠 DB(340)는 광고 컨텐츠를 저장하는 데이터베이스로, 여러 광고주 서버(400)로부터 위임받은 광고에 대한 광고 컨텐츠를 저장한다. 광고 컨텐츠 DB(340)에는 광고주 서버(400) 별로 하나 혹은 그 이상의 광고 컨텐츠가 저장될 수 있다. 또한, 광고 컨텐츠 DB(340)는 광고주 서버(400)의 광고 정책을 저장할 수도 있다. 이를 기반으로, 광고 할당부(320)에서 광고 스케쥴을 설정할 수 있다.
광고주 서버(400)는 광고를 하고자 하는 주체에 해당하는 서버로, 광고 관리 서버(300)로 광고 컨텐츠 및 광고 정책을 전송하여 광고를 위임한다. 경우에 따라서, 광고주 서버(400)는 광고 관리 서버(300)를 통하지 않고, 단말장치(100)로 직접 광고 컨텐츠를 제공할 수도 있다.
도 2는 본 발명의 일 실시예에 따른 광고를 위한 단말장치의 블럭도이다.
도 2를 참조하면, 본 발명의 일 실시예에 따른 단말장치(100)는 클라이언트 하이퍼바이저부(110), 사용자 모듈(120), 및 광고 모듈(130)을 포함한다.
클라이언트 하이퍼바이저부(110)는 본 광고용 단말장치(100) 자원에 대한 사용권을 사용자 모듈(120) 혹은 광고 모듈(130)에게 선택적으로 할당할 수 있다.
사용자 모듈(120)과 광고 모듈(130) 각각은 클라이언트 하이퍼바이저부(111)상에 설치되며, 클라이언트 하이퍼바이스부(111)에 의해 자원을 할당받아서 서로 독립적으로 동작할 수 있다.
본 실시예에서, 클라이언트 하이퍼바이저부(110) 상에는 사용자 가상 머신(121)과 광고 가상 머신(131)이 설치된다.
클라이언트 하이퍼바이저부(110)의 운영체제(OS) 스위치(이하, "OS 스위치"라 한다)(111)는 사용자 가상 머신(121) 및 광고 가상 머신(131)에 선택적으로 입출력 제어권을 부여한다.
단말장치(100)에 전원이 온되어 동작이 시작되면, 클라이언트 하이퍼바이저부(110)는 OS 스위치(111)를 통해 디폴트로 설정되어 있는 하나의 사용자 운영체제부(122)에 입출력 제어권을 부여한다. 이후, 광고 스케쥴에 따라 광고 운영체제부(132)가 동작할 시간이 되면, OS 스위치(111)는 사용자 가상 머신(121)에 기부여된 입출력 제어권을 광고 가상 머신(131)으로 전환 부여한다. 또한, 광고 컨텐츠의 재생이 완료되면, 클라이언트 하이퍼바이저부(110)는 OS 스위치(111)를 통해 현재 광고 가상 머신(131)에 부여되어 있는 입출력 제어권을 다시 사용자 가상 머신(121)으로 부여한다.
클라이언트 하이퍼바이저부(110)에서 사용자 운영체제부(122) 및 광고 운영체제부(132)를 선택적으로 동작시킨다는 것은, 사용자 운영체제부(122) 및 광고 운영체제부(132) 중 선택된 하나에 자원을 할당한다는 의미가 될 수 있다. 자원을 할당하기 위한 방법으로 클라이언트 하이퍼바이저부(110)가 OS 스위치(111)를 통해 사용자 가상 머신(121) 혹은 광고 가상 머신(131)에 입출력 제어권을 부여할 수 있다.
클라이언트 하이퍼바이저부(110) 상에는 사용자 모듈(120)과 광고 모듈(130)이 구비된다. 사용자 모듈(120)은 사용자 가상 머신(121), 사용자 운영체제부(122), 및 사용자 어플리케이션부(123)를 포함하며, 광고 모듈(130)은 광고 가상 머신(131), 광고 운영체제부(132), 및 광고 어플리케이션부(133)를 포함한다.
본 실시예에서는, 사용자 모듈(120)이 각각 하나의 사용자 가상 머신(121), 사용자 운영체제부(122), 및 사용자 어플리케이션부(123)를 포함하고 있는 것을 도시하였으나, 이는 반드시 여기에 한정되지는 않는다. 즉, 사용자 모듈(120)에는 각 복수의 사용자 가상 머신(121), 사용자 운영체제부(122), 및 사용자 어플리케이션부(123)가 설치될 수 있다. 또한, 하나의 사용자 운영체제부(122) 상에는 복수의 사용자 어플리케이션부(123)가 설치될 수 있다.
사용자 어플리케이션부(123)는 광고 시간 컨트롤부(124)를 포함한다. 광고 시간 컨트롤부(124)는 사용자 어플리케이션부(123)의 사용 시간을 모니터링한다. 광고 시간 컨트롤부(124)는 자체적으로 현재 시간을 알기 위한 시계 기능을 포함할 수 있다. 광고 시간 컨트롤부(124)는 시계 기능을 통해 기설정된 광고 스케쥴과 사용자 어플리케이션부(123)의 사용 시간 모니터링 결과를 참조하여, 광고 운영체제부(132)가 동작할 시간이 되었는지를 판단할 수 있다.
광고 운영체제부(132)가 동작할 시간이 된 것으로 판단될 경우, 광고 시간 컨트롤부(124)는 사용자 운영체제부(122), 사용자 가상 머신(121)을 통해 클라이언트 하이퍼바이저부(110)로 광고 운영체제부(132)의 동작을 요청한다. 본 실시예에서, 광고 시간 컨트롤부(124)는 사용자 어플리케이션부(123)에 내장되어 사용자 어플리케이션부(123)의 사용 시간을 모니터링하는 기능 모듈에 해당한다.
또한, 광고 시간 컨트롤부(124)는 광고 어플리케이션부(133)의 누적 동작시간과 기설정된 광고 스케쥴을 참조하여, 광고 어플리케이션부(133)의 누적 동작시간이 광고 스케쥴에 설정되어 있는 기준 동작시간보다 적은 경우에도 광고 운영체제부(132)의 동작을 요청할 수 있다. 이때, 광고 시간 컨트롤부(124)는 광고 모듈(130)의 로그부(134)에 기록된 로그를 통해 광고 어플리케이션부(133)의 누적 동작시간을 획득할 수 있다. 예를 들면, 광고 스케쥴에 기준 동작시간이 2시간으로 설정되어 있다고 할 때, 로그부(134)에 기록된 로그를 통해 판단된 광고 어플리케이션부(133)의 누적 동작시간이 1시간 30분이라면, 광고주의 광고 정책에 따라 광고 어플리케이션부(133)는 최소 30분은 더 동작하여야 한다. 이 경우, 광고 시간 컨트롤부(124)는 클라이언트 하이퍼바이저부(110)에 광고 어플리케이션부(133)의 동작을 요청할 수 있다.
본 실시예에서는 설명의 편의상, 사용자 운영체제부(122) 상에 하나의 사용자 어플리케이션부(123)가 설치되어 있는 상태를 예시하였다. 하지만, 대부분 사용자 운영체제부(122) 상에는 복수의 사용자 어플리케이션부(123)가 설치될 수 있다. 이 경우, 광고 시간 컨트롤부(124)는 복수의 사용자 어플리케이션부(123) 각각에 내장될 수 있다. 혹은, 복수의 사용자 어플리케이션부(123) 중 유료로 사용이 가능한 사용자 어플리케이션부(123)에 내장될 수 있다.
광고 시간 컨트롤부(124)는 사용자 어플리케이션부(123)의 사용 시간을 모니터링함으로써, 사용자가 사용자 어플리케이션부(123)를 기설정된 시간 만큼 사용하면 광고를 시청하도록 하는 것이다. 이를 위해, 광고 시간 컨트롤부(124)는 광고 모듈(130)의 광고 스케쥴 컨트롤부(135)로부터 제공받는 광고 스케쥴을 참조한다.
광고 스케쥴에는 사용자 어플리케이션부(123)의 사용 시간 대비 광고 컨텐츠의 재생 시간이 설정되어 있을 수 있다. 또한, 광고 스케쥴에는 광고 어플리케이션부(133)의 기준 동작시간이 설정되어 있을 수 있다.
사용자 어플리케이션부(123)는 사용자와의 인터페이스가 가능하다. 즉, 사용자에게 소정 정보를 제공하기 위한 UI(User Interface)를 제공할 수 있고, UI를 통해 사용자로부터 소정 신호를 입력받을 수 있다.
광고 가상 머신(131), 광고 운영체제부(132), 및 광고 어플리케이션부(133)는 광고를 위한 전용 모듈에 해당한다. 광고 가상 머신(131)은 클라이언트 하이퍼바이저부(110) 상에 설치되고, 광고 가상 머신(131) 상에 광고 운영체제부(132)가 설치되며, 광고 운영체제부(132) 상에 광고 어플리케이션부(133)가 설치된다.
광고 운영체제부(132)는 광고 시스템을 위한 전용 운영체제로, 광고 컨텐츠를 재생하는 광고 어플리케이션부(133)를 동작시킨다. 광고 운영체제부(132)는 클라이언트 하이퍼바이저부(110)에 의해 입출력 제어권이 부여되면 동작할 수 있다. 광고 운영체제부(132)는 광고 가상 머신(131)이 클라이언트 하이퍼바이저부(110)로부터 입출력 제어권을 부여받으면, 자동 실행되어 광고 어플리케이션부(133)를 동작시킨다. 이에 의해, 광고 어플리케이션부(133)는 광고 컨텐츠를 재생할 수 있다.
광고 어플리케이션부(133)는 광고 컨텐츠 재생을 위한 전용 어플리케이션으로, 하드웨어 상의 메모리에 저장되어 있는 광고 컨텐츠를 독출하여 재생하거나 내장된 컨텐츠를 재생할 수 있다. 여기서, 재생의 의미는 광고 컨텐츠에 포함되어 있는 영상과 사운드를 출력하는 것이다.
광고 어플리케이션부(133)는 로그부(134), 및 광고 스케쥴 컨트롤부(135)를 포함한다. 로그부(134)는 광고 어플리케이션부(133)에 의해 재생된 광고 컨텐츠의 재생 관련 정보를 로그로 기록한다.
광고 스케쥴 컨트롤부(135)는 외부 즉, 광고 관리 서버(300) 혹은 광고주 서버(400)로부터 수신된 광고 정책을 이용하여 사용자 어플리케이션부(123)의 광고 시간 컨트롤부(124)에 광고 스케쥴을 제공한다.
광고 스케쥴 컨트롤부(135)는 광고주의 광고 정책에 따라 스케쥴 정보를 설정한다. 보다 구체적으로, 사용자 어플리케이션부(123)는 그 성격에 따라 광고 운영체제부(132)를 동작시키기 위한 사용 시간이 서로 다르게 설정된다. 예를 들면, A 사용자 어플리케이션부(123)는 3시간을 사용하면, 광고 운영체제부(132)가 동작되어야 하고, B 사용자 어플리케이션부(123)는 5시간을 사용하면, 광고 운영체제부(132)가 동작되어야 할 수 있다. 또한, 각 사용자 어플리케이션부(123) 별로 광고 운영체제부(132)의 동작 시간도 상이하게 설정될 수 있다.
광고 스케쥴 컨트롤부(135)에서 설정한 스케쥴 정보를 표 1에 예시하였다.
사용자 어플리케이션부 명 사용 시간 광고 어플리케이션부 기준 동작시간
A 03:00 0:30
B 05:00 2:00
C 02:30 0:30
상기의 표 1은 광고 스케쥴 컨트롤부(135)에 의해 설정되는 스케쥴 정보를 설명하기 위한 것일 뿐, 표 1의 기재된 내용에 한정되지 않는다.
표 1과 같이 스케쥴 정보가 설정되어 있을 경우, 광고 시간 컨트롤부(124)는 A 사용자 어플리케이션부(123)의 사용 시간이 3시간이 되면, 광고 어플리케이션부(133)는 30분 동안 광고 컨텐츠를 재생할 수 있다. 이는 사용자의 개입 없이 이루어지는 동작이다.
광고 스케쥴 컨트롤부(135)는 광고 관리 서버(300)의 광고 할당부(320)와 직접적으로 통신이 이루어질 수 있다. 즉, 광고 스케쥴 컨트롤부(135)는 광고 할당부(320)로부터 광고주의 광고 정책을 주기적 혹은 비주기적으로 제공받을 수 있다.
도 3을 참조하면, 본 발명의 다른 실시예에 따른 단말장치(100)는 클라이언트 하이퍼바이저부(110), 사용자 모듈(120), 및 광고 모듈(130)을 포함한다. 사용자 모듈(120)은 사용자 가상 머신(121), 사용자 운영체제부(122), 사용자 어플리케이션부(123), 및 광고 시간 컨트롤부(124)를 포함하며, 광고 모듈(130)은 광고 가상 머신(131), 광고 운영체제부(132), 광고 어플리케이션부(133), 로그부(134), 및 광고 스케쥴 컨트롤부(135)를 포함한다.
도시한 바와 같이, 본 실시예에 따른 단말장치(100)는 도 2에 도시한 단말장치(100)와 유사한 구성을 갖는다. 이에 따라, 동일한 구성에 대하여는 동일한 부호를 표기하였으며, 동일한 구성에 대한 설명은 생략한다.
사용자 운영체제부(122) 상에는 사용자 어플리케이션부(123), 및 광고 시간 컨트롤부(124)가 설치된다. 그러므로, 클라이언트 하이퍼바이저부(110)에 의해 사용자 가상 머신(121)이 입출력 제어권을 부여받으면, 사용자 가상 머신(121)상에서 사용자 운영체제부(122)가 동작하고, 사용자의 선택에 의해 사용자 어플리케이션부(123)가 동작한다. 사용자 어플리케이션부(123)의 동작과 함께, 광고 시간 컨트롤부(124)도 동작을 시작한다.
광고 시간 컨트롤부(124)는 자체 시계 기능에 의해 사용자 어플리케이션부(123)의 동작시간을 모니터링하는 것으로, 본 실시예에서는 이러한 기능을 수행하기 위한 단독 어플리케이션으로 구현된다. 도시한 바와 같이, 광고 시간 컨트롤부(124)는 사용자 운영체제부(122) 상에 사용자 어플리케이션부(123)와 동일 레벨로 설치되는 것으로, 사용자 어플리케이션부(123)와 연동할 수 있다.
광고 시간 컨트롤부(124)는 사용자 어플리케이션부(123)의 사용 시간 모니터링 결과와 광고 스케쥴을 참조하여, 광고 운영체제부(132)가 동작할 시간이 된 것으로 판단되면, 사용자 운영체제부(122) 및 사용자 가상 머신(121)을 통해 클라이언트 하이퍼바이저부(110)로 광고 운영체제부(132)의 동작을 요청한다.
본 실시예에서 사용자 운영체제부(122) 상에 복수의 사용자 어플리케이션부(123)가 설치되었다면, 광고 시간 컨트롤부(124)는 복수의 사용자 어플리케이션부(123) 각각에 대한 사용 시간을 모니터링할 수 있다. 또한, 복수의 사용자 어플리케이션부(123)는 그 성격에 따라 광고 컨텐츠가 실행되도록 설정된 사용 시간이 서로 상이할 수 있다.
광고 운영체제부(132) 상에는 광고 어플리케이션부(133), 로그부(134), 및 광고 스케쥴 컨트롤부(135)가 설치된다. 광고 어플리케이션부(133)는 광고 컨텐츠를 재생하고, 로그부(134)는 광고 컨텐츠 재생 결과에 따른 재생 관련 정보를 로그로 기록하며, 광고 스케쥴 컨트롤부(135)는 광고 정책에 따른 광고 스케쥴을 제공한다.
도시한 바와 같이, 본 실시예에서는 로그부(134), 및 광고 스케쥴 컨트롤부(135)가 광고 어플리케이션부(133)와 별도로 각 기능을 수행하는 단독 어플리케이션으로 구현된 것을 예시하였다.
광고 스케쥴 컨트롤부(135)는 주기적 혹은 비주기적으로 변경되는 광고주의 광고 정책을 반영하여 광고 스케쥴을 제어하는 것으로, 광고 스케쥴을 광고 시간 컨트롤부(124)에 제공할 수 있다.
도 2에 도시한 단말장치(100)에서는 광고 시간 컨트롤부(124)가 사용자 어플리케이션부(123)에 내장되고, 또한 로그부(134) 및 광고 스케쥴 컨트롤부(135)가 광고 어플리케이션부(133)에 내장되어 있는 상태를 도시하였다. 이러한 경우, 광고 시간 컨트롤부(124), 로그부(134), 및 광고 스케쥴 컨트롤부(135)는 각각의 기능을 수행하는 기능 모듈에 해당한다.
도 2에 도시한 단말장치(100)의 구성을 변형하여, 도 3에 도시한 본 실시예에서는 광고 시간 컨트롤부(124), 로그부(134), 및 광고 스케쥴 컨트롤부(135) 각각이 단독 어플리케이션으로 구현된 상태를 도시하였다.
도시한 바와 같이, 광고 시간 컨트롤부(124), 로그부(134), 및 광고 스케쥴 컨트롤부(135)가 사용자 어플리케이션부(123) 혹은 광고 어플리케이션부(133)에 포함되어 기능 모듈로 구현되거나 혹은, 각 단독 어플리케이션으로 구현되는 것과 무관하게 각각의 기능들은 모두 동일하다.
도시하지는 않았으나, 다른 변형 예로, 광고 시간 컨트롤부(124)는 사용자 어플리케이션부(123)에 포함된 기능 모듈로 구현하고, 로그부(134) 및 광고 스케쥴 컨트롤부(135)는 광고 어플리케이션부(133)와 별도로 단독 어플리케이션으로 구현할 수 있다.
또한, 또 다른 변형 예로, 광고 시간 컨트롤부(124)는 사용자 어플리케이션부(123)에 포함된 기능 모듈로 구현하고, 로그부(134)도 광고 어플리케이션부(133)에 포함된 기능 모듈로 구현하되, 광고 스케쥴 컨트롤부(135)만을 단독 어플리케이션으로 구현할 수도 있다.
도 4는 본 발명의 일 실시예에 따른 광고를 위한 단말장치의 동작 방법을 설명하기 위한 흐름도이다.
여기에서는 도 1 및 도 2를 참조하여 본 발명의 일 실시예에 따른 광고를 위한 단말장치의 동작 방법을 설명한다. 즉, 단말장치(100)가 도 2에 도시한 형태로 구성되었을 경우의 동작 방법을 설명한다.
단말장치(100)에 전원이 온되면, 클라이언트 하이퍼바이저부(110)가 동작된다. 이때, 클라이언트 하이퍼바이저부(110)는 디폴트로 기설정되어 있는 어느 하나의 운영체제에 입출력 제어권을 부여한다. 여기에서는 클라이언트 하이퍼바이저부(110)가 처음 동작할 때 입출력 제어권을 사용자 가상 머신(121)에 부여하도록 설정되어 있는 것으로 가정한다. 이에 의해, 클라이언트 하이퍼바이저부(110)는 OS 스위치(111)에 의해 사용자 모듈에 입출력 제어권을 부여한다(S501).
클라이언트 하이퍼바이저부(110)에 의해 사용자 모듈에 입출력 제어권이 부여되면, 사용자 가상 머신(121)상에서 사용자 운영체제부(122)가 동작을 시작한다(S503).
사용자 운영체제부(122)가 동작되면, 사용자는 사용자 운영체제부(122) 상에 설치된 적어도 하나의 사용자 어플리케이션부(123)를 선택적으로 실행시킬 수 있다. 사용자가 사용자 어플리케이션부(123)를 선택하면, 선택된 사용자 어플리케이션부(123)가 동작을 시작한다(S505). 사용자 어플리케이션부(123)의 동작이 시작되면, 광고 시간 컨트롤부(124)는 사용자 어플리케이션부(123)의 사용 시간을 모니터링한다(S507).
광고 시간 컨트롤부(124)에서 사용자 어플리케이션부(123)의 사용 시간을 모니터링을 하고 있는 상태에서, 광고 운영체제부(132)가 동작할 시간이 되었다고 판단되면(S509-Y), 사용자 어플리케이션부(123)는 클라이언트 하이퍼바이저부(110)로 광고 운영체제부(132)의 동작을 요청한다(S511).
사용자 어플리케이션부(123)로부터 광고 운영체제부(132)의 동작 요청을 받은 클라이언트 하이퍼바이저부(110)는 광고 가상 머신(131)에 입출력 제어권을 부여한다(S513).
광고 가상 머신(131)에 입출력 제어권이 부여됨에 따라, 광고 가상 머신(131)과 광고 운영체제부(132)가 동작을 시작하고, 광고 운영체제부(132)상에서 광고 어플리케이션부(133)가 동작한다. 광고 어플리케이션부(133)는 광고 컨텐츠를 재생한다(S515).
광고 어플리케이션부(133)에 의해 재생된 광고 컨텐츠의 재생이 완료되면(S517-Y), 로그부(134)는 광고 컨텐츠 재생 관련 정보를 로그로 기록한다(S519). 로그부(134)는 해당 로그를 저장해 두었다가, 추후 광고 관리 서버(300)로 전송할 수 있다.
광고 어플리케이션부(133)는 광고 컨텐츠의 재생이 완료되고, 재생 관련 정보의 저장까지 완료되면, 클라이언트 하이퍼바이저부(110)로 광고 재생 완료를 통지한다(S521).
클라이언트 하이퍼바이저부(110)는 광고 재생 완료를 통지받으면, 현재 광고 가상 머신(131)에 부여되어 있는 입출력 제어권을 다시 사용자 가상 머신(121)로 재부여한다(S523). 클라이언트 하이퍼바이저부(110)에 의해 사용자 가상 머신(121)으로 입출력 제어권이 재부여되면, S503 단계로 피드백하여 동일한 단계가 반복될 수 있다.
도 5는 본 발명의 다른 실시예에 따른 광고를 위한 단말장치의 동작 방법을 설명하기 위한 흐름도이다.
S601 단계 내지 S607 단계는 도 4의 S501 단계 내지 S507 단계와 동일하다. 그러므로, S601 단계 내지 S607 단계에 대한 설명은 생략한다.
광고 시간 컨트롤부(124)에서 사용자 어플리케이션부(123)의 사용 시간을 모니터링하고 있는 상태에서, 광고 어플리케이션부(133)의 누적 동작시간(ADtime)이 기설정된 광고 스케쥴에서 설정된 기준 동작시간(REFtime) 미만인 것으로 판단되면(S609-Y), 사용자 어플리케이션부(123)는 사용자 운영체제부(122) 및 사용자 가상 머신(121)을 통해 클라이언트 하이퍼바이저부(110)로 광고 운영체제부(132)의 동작을 요청한다(S611).
클라이언트 하이퍼바이저부(110)가 사용자 어플리케이션부(123)로부터 광고 운영체제부(132)의 동작 요청을 받은 이후의 S613 단계 및 S615 단계는 도 4의 S513 단계 및 S515 단계가 동일하다. 그러므로, S613 단계 및 S615 단계에 대한 설명은 생략한다.
S615 단계에서, 광고 어플리케이션부(133)에 의해 광고 컨텐츠가 재생되고 있는 도중에, 사용자로부터 광고 시청 중지 요청신호가 입력될 수 있다. 만약, 광고 어플리케이션부(133)로 광고 시청 중지 요청신호가 입력되면(S617-Y), 광고 어플리케이션부(133)는 로그부(134)를 통해 광고 시청 중지 요청신호가 입력된 시점까지 재생된 광고 컨텐츠의 재생 관련 정보를 로그로 기록한다(S619).
만약, 광고 어플리케이션부(133)로 광고 시청 중지 요청신호가 입력되지 않으면(S617-N), 광고 어플리케이션부(133)는 광고 컨텐츠 재생을 완료한 후, 재생된 광고 컨텐츠에 대한 재생 관련 정보를 로그부(134)를 통해 기록한다(S621).
이후, 광고 어플리케이션부(133)는 클라이언트 하이퍼바이저부(110)로 광고 재생 완료 통지 및 사용자 운영체제부(122)의 동작을 요청한다(S623).
클라이언트 하이퍼바이저부(110)는 현재 광고 가상 머신(131)에 부여되어 있는 입출력 제어권을 다시 사용자 가상 머신(121)로 재부여한다(S525). 클라이언트 하이퍼바이저부(110)에 의해 사용자 가상 머신(121)으로 입출력 제어권이 재부여되면, S603 단계로 피드백하여 동일한 단계가 반복될 수 있다.
광고주 입장에서 효과적인 광고 효과를 기대하기 위해서는, 일단 광고 컨텐츠가 재생되면 사용자가 광고 컨텐츠를 중지시키기 못하도록 하는 것이 바람직하다. 하지만, 광고 시청 중 불가피하게 계속 광고를 볼 수 없는 상황이 발생할 수 있는데, 사용자에게 아무런 선택권이 없다면, 사용자는 광고에 대한 거부감이 생길 수 있다. 상기 절차의 경우, 광고 컨텐츠가 재생된 상태에서 사용자가 광고를 중지시킬 수 있는 권한이 있음에 따라, 추후 다시 광고를 시청할 수 있도록 선택할 수 있다. 이때, 로그부(134)는 사용자가 광고를 시청한 시점까지의 재생 관련 정보를 기록해 둠으로써, 사용자가 광고의 일부를 시청하였더라도, 실제 시청한 범위에 대하여는 보상이 이루어지도록 할 수 있다.
도 4 및 도 5에서는 도 2에 도시한 구성의 단말장치(100)의 동작 방법에 대하여 설명하였다. 단말장치(100)가 도 3과 같은 구성으로 변형될 경우에는, 사용자 어플리케이션부(123) 및 광고 어플리케이션부(133)에서 수행하는 단계의 적어도 일부가 광고 시간 컨트롤부(124), 로그부(134), 및 광고 스케쥴 컨트롤부(135)에서 수행하는 것으로 변경될 것이다. 또한, 사용자 어플리케이션부(123)와 광고 시간 컨트롤부(124), 그리고, 광고 어플리케이션부(133), 로그부(134), 및 광고 스케쥴 컨트롤부(135) 간의 신호 입출력을 위한 절차가 더 필요할 수 있다.
상술한 실시예에서 언급한 "광고 재생"은 광고 어플리케이션의 실행 뿐만 아니라 광고 웹페이지로 연결되는 것까지도 포함하며, 광고를 일방적으로 보여주는 것이 아니고, 사용자로부터 어떤 액션(즉, 사용자와의 상호 작용)을 받을 수 있는 것까지도 포함한다.
상술한 도 2 및 도 3의 실시예에서는 각 구성요소들이 하나의 기능 블록 안에 포함된 것으로 도시되었으나, 이는 설명의 편의를 위한 것으로 반드시 하나의 장치에 구현되는 것을 의미하는 것이 아니다. 따라서, 이러한 구성에만 본원 발명이 한정되는 것이 아니며, 예를 들면, 이들 구성요소의 적어도 하나 이상은 별도의 기능 블록으로 구현되는 것도 가능하다. 여기서, 별도라고 함은 논리적으로 구분되거나, 위치적으로 구분되거나, 또는 서로 다른 소프트웨어나 하드웨어로 구분되는 것을 포함하는 의미이다.
본 발명의 실시 예에 따른 방법들은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다.
상기와 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. 그러므로, 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.
100 : 단말장치 110 : 클라이언트 하이퍼바이저부
120 : 사용자 시스템 130 : 광고 시스템
200 : 네트워크 300 : 광고 관리 서버
400 : 광고주 서버

Claims (20)

  1. 클라이언트 하이퍼바이저부;
    상기 클라이언트 하이퍼바이저부 상에 설치되는 사용자 가상 머신, 상기 사용자 가상 머신 상에 설치되는 사용자 운영체제부, 및 상기 사용자 운영체제부 상에 설치되는 사용자 어플리케이션부를 포함하는 사용자 모듈;
    상기 클라이언트 하이퍼바이저부 상에 설치되는 광고 가상 머신, 상기 광고 가상 머신 상에 설치되는 광고 운영체제부, 및 상기 광고 운영체제부 상에 설치되어 광고를 제공하는 광고 어플리케이션부를 포함하는 광고 모듈; 및
    상기 사용자 모듈의 사용 시간을 모니터링하고, 상기 모니터링 결과와 기설정된 광고 스케쥴을 참조하여 상기 광고 모듈이 동작할 시간이 되었다고 판단되면, 상기 클라이언트 하이퍼바이저부에게 상기 광고 모듈을 동작시킬 것을 요청하는 광고 시간 컨트롤부; 를 포함하며,
    상기 광고 시간 컨트롤부는 상기 사용자 모듈에 포함되어 있고, 상기 클라이언트 하이퍼바이저부는, 상기 광고 시간 컨트롤부로부터 상기 광고 모듈의 동작 요청이 있는 경우 상기 사용자 모듈에 할당된 자원을 상기 광고 모듈로 전환함으로써 상기 광고 모듈을 동작시키는 것을 특징으로 하는 하이퍼바이저 기반의 광고를 위한 단말장치.
  2. 제1항에 있어서,
    상기 광고 모듈은,
    상기 광고의 재생이 완료되면 광고 재생 완료를 상기 클라이언트 하이퍼바이저부로 통지하며,
    상기 클라이언트 하이퍼바이저부는, 상기 광고 재생 완료를 통지받은 경우 상기 광고 모듈에 할당된 자원을 상기 사용자 모듈로 전환하는 것을 특징으로 하는 하이퍼바이저 기반의 광고를 위한 단말장치.
  3. 제 1 항에 있어서,
    상기 클라이언트 하이퍼바이저부는, 상기 사용자 모듈 및 상기 광고 모듈 중 어느 하나에 입출력 제어권을 선택적으로 부여하는 운영체제(OS) 스위치를 포함하는 것을 특징으로 하는 하이퍼바이저 기반의 광고를 위한 단말장치.
  4. 제 1 항에 있어서,
    상기 광고 시간 컨트롤부는, 상기 사용자 모듈의 사용자 어플리케이션부에 포함된 것을 특징으로 하는 하이퍼바이저 기반의 광고를 위한 단말장치.
  5. 제 1 항에 있어서,
    상기 광고 시간 컨트롤부는, 상기 사용자 운영체제부 상에 설치된 것을 특징으로 하는 하이퍼바이저 기반의 광고를 위한 단말장치.
  6. 제 1 항에 있어서,
    상기 광고 모듈은,
    상기 광고 어플리케이션부에 의해 제공된 상기 광고의 재생 관련 정보를 로그로 기록하는 로그부; 및
    외부로부터 광고 정책을 수신하여 상기 광고 시간 컨트롤부에 상기 광고 스케쥴을 제공하는 광고 스케쥴 컨트롤부;를 더 포함하는 것을 특징으로 하는 하이퍼바이저 기반의 광고를 위한 단말장치.
  7. 제 6 항에 있어서,
    상기 광고 시간 컨트롤부는, 상기 광고 모듈의 누적 동작시간과 상기 광고 스케쥴을 참조하여 상기 광고 모듈의 누적 동작시간이 상기 광고 스케쥴에서 설정된 기준 동작시간 미만인 경우 상기 클라이언트 하이퍼바이저부에게 상기 광고 모듈의 동작을 요청하며,
    상기 클라이언트 하이퍼바이저부는, 상기 동작 요청에 따라서 상기 광고 모듈을 동작시키는 것을 특징으로 하는 하이퍼바이저 기반의 광고를 위한 단말장치.
  8. 제 7 항에 있어서,
    상기 광고 시간 컨트롤부가 참조하는 상기 누적 동작시간은 상기 로그부에 의해 기록된 로그로부터 획득한 것을 특징으로 하는 하이퍼바이저 기반의 광고를 위한 단말장치.
  9. 제 6 항에 있어서,
    상기 로그부는 상기 광고 모듈이 동작을 시작한 시점부터 동작을 완료한 시점까지 재생된 광고의 재생 관련 정보를 기록하는 것을 특징으로 하는 하이퍼바이저 기반의 광고를 위한 단말장치.
  10. 제 6 항에 있어서,
    상기 로그부, 및 상기 광고 스케쥴 컨트롤부는, 상기 광고 어플리케이션부에 포함된 것을 특징으로 하는 하이퍼바이저 기반의 광고를 위한 단말장치.
  11. 제 6 항에 있어서,
    상기 로그부, 및 상기 광고 설정 컨트롤부는, 상기 광고 운영체제부 상에 설치된 것을 특징으로 하는 하이퍼바이저 기반의 광고를 위한 단말장치.
  12. 제 1 항에 있어서,
    상기 광고 모듈은, 상기 광고의 재생이 완료되면, 상기 클라이언트 하이퍼바이저부에 광고 재생의 완료를 통지하고, 상기 사용자 모듈로의 동작 전환을 요청하며,
    상기 클라이언트 하이퍼바이저부는, 상기 사용자 모듈을 재동작시키는 것을 특징으로 하는 하이퍼바이저 기반의 광고를 위한 단말장치.
  13. 클라이언트 하이퍼바이저부, 사용자 모듈, 광고를 제공하는 광고 모듈을 포함하는 하이퍼바이저 기반의 광고를 위한 단말장치의 동작 방법에 있어서,
    상기 사용자 모듈은, 상기 클라이언트 하이퍼바이저부 상에 설치되는 사용자 가상 머신, 상기 사용자 가상 머신 상에 설치되는 사용자 운영체제부, 및 상기 사용자 운영체제부 상에 설치되는 사용자 어플리케이션부를 포함하고,
    상기 광고 모듈은, 상기 클라이언트 하이퍼바이저부 상에 설치되는 광고 가상 머신, 상기 광고 가상 머신 상에 설치되는 광고 운영체제부, 및 상기 광고 운영체제부 상에 설치되어 광고를 제공하는 광고 어플리케이션부를 포함하며,
    상기 방법은,
    상기 사용자 모듈에 포함된 광고 시간 컨트롤부가 상기 사용자 모듈의 사용 시간을 모니터링하는 단계;
    상기 광고 시간 컨트롤부가 상기 광고 모듈이 동작할 시간이 되었다고 판단되면, 상기 클라이언트 하이퍼바이저부에게 상기 광고 모듈의 동작을 요청하는 단계; 및
    상기 클라이언트 하이퍼바이저부는, 상기 광고 모듈의 동작을 요청받은 경우, 상기 사용자 모듈에 할당된 자원을 상기 광고 모듈에게 전환하여 할당함으로써 상기 광고 모듈을 동작시키는 단계;를 포함하는 것을 특징으로 하는 하이퍼바이저 기반의 광고를 위한 단말장치의 동작 방법.
  14. 제 13 항에 있어서,
    상기 광고 모듈의 동작을 요청하는 단계는,
    상기 모니터링 결과와 기설정된 광고 스케쥴을 참조하여 상기 광고 모듈이 동작할 시간이 되었는지 여부를 판단하는 것을 특징으로 하는 하이퍼바이저 기반의 광고를 위한 단말장치의 동작 방법.
  15. 제 14 항에 있어서,
    상기 광고 모듈에 포함된 로그부가, 상기 광고 모듈에 의해 제공되는 상기 광고의 재생 관련 정보를 로그로 기록하는 단계; 및
    상기 광고 모듈에 포함된 광고 스케쥴 컨트롤부가, 외부로부터 광고 정책을 수신하여 상기 광고 스케쥴을 상기 광고 시간 컨트롤부에게 제공하는 단계;를 더 포함하는 것을 특징으로 하는 하이퍼바이저 기반의 광고를 위한 단말장치의 동작 방법.
  16. 제 15 항에 있어서,
    상기 기록하는 단계는, 상기 광고 모듈이 동작을 시작한 시점부터 동작을 완료한 시점까지 상기 광고의 재생 관련 정보를 기록하는 것을 특징으로 하는 하이퍼바이저 기반의 광고를 위한 단말장치의 동작 방법.
  17. 제 16 항에 있어서,
    상기 광고 모듈의 동작을 요청하는 단계는, 상기 광고 모듈의 누적 동작시간과 상기 광고 스케쥴을 참조하여 상기 광고 모듈의 누적 동작시간이 상기 광고 스케쥴에서 설정된 기준 동작시간 미만인 경우 상기 광고 모듈의 동작을 요청하는 것을 특징으로 하는 하이퍼바이저 기반의 광고를 위한 단말장치의 동작 방법.
  18. 제 17 항에 있어서,
    상기 누적 동작시간은 상기 기록된 로그로부터 획득되는 것을 특징으로 하는 하이퍼바이저 기반의 광고를 위한 단말장치의 동작 방법.
  19. 제 14 항에 있어서,
    상기 광고 모듈은, 상기 광고의 재생이 완료되면, 상기 클라이언트 하이퍼바이저부에게 광고 재생의 완료를 통지하고, 상기 사용자 모듈로의 동작 전환을 요청하는 단계; 및
    상기 클라이언트 하이퍼바이저부는, 상기 사용자 모듈을 재동작시키는 단계;를 더 포함하는 것을 특징으로 하는 하이퍼바이저 기반의 광고를 위한 단말장치의 동작 방법.
  20. 광고 정책을 저장하는 광고 관리 서버; 및
    클라이언트 하이퍼바이저부, 상기 클라이언트 하이퍼바이저부 상에 설치되는 사용자 가상 머신, 상기 사용자 가상 머신 상에 설치되는 사용자 운영체제부, 및 상기 사용자 운영체제부 상에 설치되는 사용자 어플리케이션부를 포함하는 사용자 모듈, 상기 클라이언트 하이퍼바이저부 상에 설치되는 광고 가상 머신, 상기 광고 가상 머신 상에 설치되는 광고 운영체제부, 및 상기 광고 운영체제부 상에 설치되어 광고를 제공하는 광고 어플리케이션부를 포함하는 광고 모듈, 및 상기 사용자 모듈의 사용 시간을 모니터링하고, 상기 모니터링 결과와 상기 광고 관리 서버로부터 광고 정책을 전송받고, 전송받은 광고 정책을 참조하여 상기 광고 모듈이 동작할 시간이 되었다고 판단되면, 상기 클라이언트 하이퍼바이저부에게 상기 광고 모듈을 동작시킬 것을 요청하는 광고 시간 컨트롤부를 포함하는 사용자 단말장치;를 포함하며,
    상기 광고 시간 컨트롤부는 상기 사용자 모듈에 포함되어 있고, 상기 클라이언트 하이퍼바이저부는, 상기 광고 시간 컨트롤부로부터 상기 광고 모듈의 동작 요청이 있는 경우 상기 사용자 모듈에 할당된 자원을 상기 광고 모듈로 전환함으로써 상기 광고 모듈을 동작시키며,
    상기 광고 모듈은, 광고의 재생이 완료되면 광고 재생 완료를 상기 클라이언트 하이퍼바이저부로 통지하며, 상기 클라이언트 하이퍼바이저부는, 상기 광고 재생 완료를 통지받은 경우 상기 광고 모듈에 할당된 자원을 상기 사용자 모듈로 전환하는 것을 특징으로 하는 하이퍼바이저 기반의 광고를 위한 시스템.
KR1020100062388A 2010-06-29 2010-06-29 하이퍼바이저 기반의 광고를 위한 단말장치 및 그의 동작 방법 KR101162865B1 (ko)

Priority Applications (5)

Application Number Priority Date Filing Date Title
KR1020100062388A KR101162865B1 (ko) 2010-06-29 2010-06-29 하이퍼바이저 기반의 광고를 위한 단말장치 및 그의 동작 방법
US13/171,750 US20110321044A1 (en) 2010-06-29 2011-06-29 Client hypervisor-based terminal device and operating method thereof
EP11171929.0A EP2402858B1 (en) 2010-06-29 2011-06-29 Client Hypervisor-Based Terminal Device and Operating Method Thereof
CN201110190897.5A CN102314390B (zh) 2010-06-29 2011-06-29 基于客户机管理程序的终端装置及其操作方法
JP2011144208A JP5320440B2 (ja) 2010-06-29 2011-06-29 クライアントハイパーバイザー基盤の端末装置及びその動作方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100062388A KR101162865B1 (ko) 2010-06-29 2010-06-29 하이퍼바이저 기반의 광고를 위한 단말장치 및 그의 동작 방법

Publications (2)

Publication Number Publication Date
KR20120001549A KR20120001549A (ko) 2012-01-04
KR101162865B1 true KR101162865B1 (ko) 2012-07-04

Family

ID=45609238

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100062388A KR101162865B1 (ko) 2010-06-29 2010-06-29 하이퍼바이저 기반의 광고를 위한 단말장치 및 그의 동작 방법

Country Status (1)

Country Link
KR (1) KR101162865B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102407757B1 (ko) * 2019-09-18 2022-06-10 주식회사 케이티 가상 모바일 시스템 및 가상 모바일 서비스 제공 방법

Also Published As

Publication number Publication date
KR20120001549A (ko) 2012-01-04

Similar Documents

Publication Publication Date Title
US20200259760A1 (en) Simple Integration of an On-Demand Compute Environment
US10826799B2 (en) Apparatus for providing cloud service based on cloud service brokerage and method thereof
JP5843823B2 (ja) プログラム実行状態の保存
US8656021B2 (en) Methods and apparatus for constructing an execution environment in which the application operates
US20240126588A1 (en) Configurable virtual machines
US11064041B2 (en) Apparatus for providing cloud service using cloud service brokerage based on multiple clouds and method thereof
JP5320440B2 (ja) クライアントハイパーバイザー基盤の端末装置及びその動作方法
CN102945149A (zh) 多个显示装置任务栏
JP5346405B2 (ja) ネットワークシステム
JP2013524343A (ja) 共有リソースに対する認定要求レートの管理
KR102181178B1 (ko) 개별화된 시간 관리를 위한 효율적인 데이터베이스 아키텍쳐를 통한 콘텐츠 제공 방법 및 시스템
CN103797461A (zh) 网络系统及其控制方法
KR101162865B1 (ko) 하이퍼바이저 기반의 광고를 위한 단말장치 및 그의 동작 방법
US20140244545A1 (en) System, method, and recording medium
KR101104454B1 (ko) 백그라운드에서 사용자용 가상머신의 상태를 설정할 수 있는 단말장치와 그 방법
KR101105528B1 (ko) 클라이언트 하이퍼바이저 기반의 광고 시스템에서 사용자에 의해 광고 제어가 가능한 광고용 단말장치 및 방법
KR101132443B1 (ko) 관리정책을 기반으로 서비스 가상머신을 관리할 수 있는 단말장치 및 그 방법
CN110704181A (zh) 资源配置方法、装置及存储介质
KR101115762B1 (ko) 클라이언트 하이퍼바이저 기반의 가상 머신을 관리할 수 있는 단말장치 및 방법
KR101141889B1 (ko) 클라이언트 하이퍼바이저 기반의 사용자 단말장치 및 그의 온/오프라인 서비스 제공 방법 그리고 온/오프라인 서비스 제공 시스템
KR101173378B1 (ko) 클라이언트 하이퍼바이저 기반의 단말장치 및 이를 이용한 광고 서비스 제공 방법
KR101182464B1 (ko) 서비스 제공자에 의한 사용자용 가상머신 관리 시스템 및 방법
JP6237200B2 (ja) 文書情報処理システム、文書情報処理方法、文書情報処理装置及び文書情報処理プログラム
Chuang MapReduce Accounting System Integrated with High-Performance Computing Infrastructure
Dentella Citrix XenApp Performance Essentials

Legal Events

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

Payment date: 20150305

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20160330

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20170309

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20180403

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20190401

Year of fee payment: 8