KR20210090510A - 멀티 스크린을 사용하여 가상 모바일 인프라 서비스를 제공하는 방법 - Google Patents

멀티 스크린을 사용하여 가상 모바일 인프라 서비스를 제공하는 방법 Download PDF

Info

Publication number
KR20210090510A
KR20210090510A KR1020200003892A KR20200003892A KR20210090510A KR 20210090510 A KR20210090510 A KR 20210090510A KR 1020200003892 A KR1020200003892 A KR 1020200003892A KR 20200003892 A KR20200003892 A KR 20200003892A KR 20210090510 A KR20210090510 A KR 20210090510A
Authority
KR
South Korea
Prior art keywords
screen
terminal
host terminal
application
neighboring
Prior art date
Application number
KR1020200003892A
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 주식회사 케이티
Priority to KR1020200003892A priority Critical patent/KR20210090510A/ko
Publication of KR20210090510A publication Critical patent/KR20210090510A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/1423Digital output to display device ; Cooperation and interconnection of the display device with other functional units controlling a plurality of local displays, e.g. CRT and flat panel display
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/0485Scrolling or panning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/1454Digital output to display device ; Cooperation and interconnection of the display device with other functional units involving copying of the display data of a local workstation or window to a remote workstation or window so that an actual copy of the data is displayed simultaneously on two or more displays, e.g. teledisplay
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/04Changes in size, position or resolution of an image
    • G09G2340/045Zooming at least part of an image, i.e. enlarging it or shrinking it
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2360/00Aspects of the architecture of display systems
    • G09G2360/04Display device controller operating with a plurality of display units

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

멀티 스크린을 사용하여 가상 모바일 인프라 서비스를 제공하는 방법 및 그 서버 장치가 제공된다. 이 방법은 멀티스크린 제어 서버가 가상 모바일 인프라(Virtual Movile Infrastructure, VMI) 서비스를 제공하는 방법으로서, 호스트 단말 및 상기 호스트 단말이 등록한 적어도 하나의 이웃 단말과 네트워크를 통해 연결하는 단계, 상기 호스트 단말로부터 수신한 어플리케이션 실행 요청을 가상화 서버로 전달하고, 상기 어플리케이션 실행 요청에 따라 상기 가상화 서버의 가상 머신에서 실행된 어플리케이션 화면을 상기 가상화 서버로부터 수신하는 단계, 상기 호스트 단말로부터 수신한 화면 배치 정보에 기초하여 상기 어플리케이션 화면을 구성하는 전체 영역을 적어도 두개의 영역으로 분할하는 단계, 그리고 분할한 각각의 영역을 포함하는 분할 어플리케이션 화면을 상기 호스트 단말 및 상기 적어도 하나의 이웃 단말에게 각각 전송하는 단계를 포함한다.

Description

멀티 스크린을 사용하여 가상 모바일 인프라 서비스를 제공하는 방법{METHOD FOR PROVIDING VIRTUAL MOBILE INFRASTRUCTURE SERVICE USING MULTI-SCREEN}
본 발명은 멀티 스크린을 사용하여 가상 모바일 인프라(Virtual Movile Infrastructure, 이하, ' VMI'라 통칭함) 서비스를 제공하는 방법에 관한 것이다.
광대역 이동통신 시장이 활성화되고 스마트폰 등의 보급률이 확대됨에 따라, 광대역 이동통신과 스마트폰을 기업 서비스에 활용하고자 하는 요구가 증가하였다. 특히, BYOD(Bring Your Own Device) 서비스의 확산으로 개인 소유의 단말을 업무용으로 사용하는 기업이 빠르게 증가하는 추세이다. 따라서, 개인 소유의 단말을 용도에 따라 가상 머신(Virtual Machine, 이하, 'VM'으로 통칭함)으로 분리해서 쓰는 기술이 시도되고 있다. 이를 통해 사용자는 개인 소유의 단말을 업무용 영역과, 개인용 영역으로 각각 가상화시켜 사용할 수 있다. 이러한 가상화 기술로서, VMI가 있다.
VMI는 VDI(Virtual Desktop Infrastructure)가 데스크탑 및 모바일 장치에서 데스크탑 응용 프로그램을 실행할 수 있도록 하는 것과 동일한 원칙을 확장한 것이다. VMI는 원격 서버에 있는 VM에서 모바일 앱을 실행하는 모바일 중심 기술이다. 이는 본질적으로 모바일 엔드 포인트에서 씬 클라이언트 앱으로 액세스할 수 있는 데이터 센터에서 실행되는 가상 장치를 생성한다.
VMI는 하나의 디바이스에 복수의 운영체제(Operating System, OS)를 구동시키거나 동일한 운영체제(OS)에 두개의 인스턴스를 지원함으로써, 마치 별개의 운영체제(OS)처럼 사용할 수 있게 한다.
기존의 VMI에서는 데이터 센터, 즉, 가상화 서버 내의 가상 머신과 실제 단말의 클라이언트가 1 대 1로 맵핑된다. 따라서, 가상 머신에서 실행하는 앱의 대상 단말이 특정될 수 밖에 없다. 예를들어, 태블릿용 앱은 태블릿 PC에서만 실행할 수 있고, 스마트폰용 앱은 스마트폰에서만 실행할 수 있다.
최근 고해상도의 모바일 기기가 급속하게 발전하면서, 듀얼 스크린 서비스가 나오고 있지만, 종래의 VMI 서비스를 듀얼 스크린에 적용하기에는 한계가 존재한다.
본 발명이 해결하고자 하는 과제는 VMI 화면을 복수의 단말 각각의 스크린을 통해 분할하여 표시하고 각 스크린의 터치 입력 신호를 통합하여 VMI 화면의 제어 신호로 사용함으로써, 다대다의 새로운 UX(User Experience Design)를 제공할 수 있는 방법을 제공하는 것이다.
본 발명의 한 특징에 따르면, 멀티스크린 제어 서버가 가상 모바일 인프라(Virtual Mobile Infrastructure, VMI) 서비스를 제공하는 방법으로서, 호스트 단말 및 상기 호스트 단말이 등록한 적어도 하나의 이웃 단말과 네트워크를 통해 연결하는 단계, 상기 호스트 단말로부터 수신한 어플리케이션 실행 요청을 가상화 서버로 전달하고, 상기 어플리케이션 실행 요청에 따라 상기 가상화 서버의 가상 머신에서 실행된 어플리케이션 화면을 상기 가상화 서버로부터 수신하는 단계, 상기 호스트 단말로부터 수신한 화면 배치 정보에 기초하여 상기 어플리케이션 화면을 구성하는 전체 영역을 적어도 두개의 영역으로 분할하는 단계, 그리고 분할한 각각의 영역을 포함하는 분할 어플리케이션 화면을 상기 호스트 단말 및 상기 적어도 하나의 이웃 단말에게 각각 전송하는 단계를 포함한다.
상기 분할하는 단계 이전에, 적어도 두개의 화면 레이아웃을 상기 호스트 단말에게 제공하는 단계, 상기 호스트 단말 및 상기 적어도 하나의 이웃 단말을 상기 적어도 두개의 화면 레이아웃에 배치한 화면 배치 정보를 상기 호스트 단말로부터 수신하는 단계를 더 포함하고, 상기 분할하는 단계는, 상기 화면 배치 정보에 기초하여 각 화면 레이아웃에 상기 적어도 두개의 영역을 표시하고, 상기 분할 어플리케이션 화면은, 상기 각 화면 레이아웃에 표시된 영역을 포함할 수 있다.
상기 각 화면 레이아웃에 표시되는 영역은, 서로 다른 영역일 수 있다.
상기 분할 어플리케이션 화면은, 상기 가상화 서버로부터 수신한 어플리케이션 화면의 비율을 유지하여 상기 호스트 단말 및 상기 적어도 하나의 이웃 단말 각각의 화면 크기로 생성될 수 있다.
상기 분할 어플리케이션 화면은, 상하 영역 또는 좌우 영역에 형성된 여백을 통하여 상기 어플리케이션 화면의 비율을 유지할 수 있다.
상기 연결하는 단계는, 상기 호스트 단말로부터 적어도 하나의 이웃 단말의 등록 정보를 수신하고, 상기 등록 정보는, 상기 적어도 하나의 이웃 단말을 식별할 수 있는 정보를 포함할 수 있다.
상기 등록 정보는, 상기 호스트 단말이 근거리 통신을 통하여 인식한 적어도 하나의 이웃 단말의 정보를 포함할 수 있다.
상기 각각 전송하는 단계 이후, 상기 호스트 단말 및 상기 적어도 하나의 이웃 단말 각각으로부터 화면 제어를 위한 입력 신호들을 수신하는 단계, 상기 입력 신호들을 상기 가상 머신에서 생성된 전체 어플리케이션 화면에 대응되는 입력 신호로 변환하고, 변환된 입력 신호를 상기 가상화 서버로 전송하는 단계, 상기 가상화 서버로부터 상기 변환된 입력 신호에 따라 생성된 어플리케이션 화면을 수신하는 단계, 그리고 상기 변환된 입력 신호에 따라 생성된 어플리케이션 화면을 상기 화면 배치 정보에 기초하여 분할하여 상기 호스트 단말 및 상기 적어도 하나의 이웃 단말 각각으로 전송하는 단계를 더 포함할 수 있다.
상기 적어도 하나의 이웃 단말은, 상기 분할 어플리케이션 화면과 상기 가상 머신에서 실행된 어플리케이션 화면을 선택적으로 표시할 수 있다.
상기 입력 신호들은, 화면을 스크롤(Scroll)하는 신호를 포함할 수 있다.
상기 각각 전송하는 단계 이후, 상기 호스트 단말 또는 상기 적어도 하나의 이웃 단말로부터 화면 확대 신호 또는 화면 축소 신호를 수신하는 단계, 상기 화면 확대 신호 또는 상기 화면 축소 신호를 전송한 호스트 단말 또는 이웃 단말의 분할 어플리케이션 화면을 상기 화면 확대 신호 또는 상기 화면 축소 신호를 적용하여 확대 또는 축소하는 단계, 그리고 확대 또는 축소한 분할 어플리케이션 화면을 상기 호스트 단말 또는 상기 이웃 단말에게 전송하는 단계를 더 포함할 수 있다.
본 발명의 다른 특징에 따르면, 멀티스크린 제어 서버가 가상 모바일 인프라(Virtual Movile Infrastructure, VMI) 서비스를 제공하는 방법으로서, 호스트 단말 및 상기 호스트 단말이 등록한 복수의 이웃 단말과 네트워크를 통해 연결하는 단계, 상기 복수의 이웃 단말 각각으로부터 수신한 어플리케이션 실행 요청들을 가상화 서버로 전달하는 단계, 상기 가상화 서버로부터 상기 어플리케이션 실행 요청들에 따라 상기 가상화 서버의 가상 머신들에서 실행된 각각의 어플리케이션 화면을 상기 가상화 서버로부터 수신하는 단계, 상기 각각의 어플리케이션 화면을 가상 머신에 대응하는 각각의 이웃 단말에게 전송하는 단계, 그리고 상기 각각의 어플리케이션 화면을 하나의 어플리케이션 화면으로 생성하여 상기 호스트 단말에게 전송하는 단계를 포함한다.
상기 호스트 단말에게 전송하는 단계는, 상기 각각의 이웃 단말의 가로 길이 해상도의 합을 상기 하나의 어플리케이션 화면의 가로 길이의 해상도로 생성하고, 상기 각각의 이웃 단말의 세로 길이 해상도 중 가장 긴 해상도를 상기 하나의 어플리케이션 화면의 세로 길이의 해상도로 생성할 수 있다.
상기 호스트 단말에게 전송하는 단계 이후, 상기 호스트 단말로부터 상기 하나의 어플리케이션 화면에 대한 입력 신호를 수신하는 단계, 상기 입력 신호를 상기 가상 머신들로 각각 전송하는 단계, 그리고 상기 가상 머신들에서 생성된 상기 입력 신호에 따른 각각의 어플리케이션 화면을 상기 가상화 서버로부터 수신하고, 상기 수신한 각각의 어플리케이션 화면을 통합한 하나의 어플리케이션 화면을 상기 호스트 단말로 전송하는 단계를 더 포함할 수 있다.
실시예에 따르면, 가상 모바일 서비스 화면과 제어를 다대다 맵핑을 통한 스크린의 통합으로 넓은 화면에서 영상을 제공하고 터치 입력을 통합하여 제공할 수 있다.
또한, 고화질의 서비스를 단순히 고해상도의 작은 화면이 아닌 여러 스크린을 통합하여 큰 화면으로 제공할 수 있어서, 기존의 모바일 화면 사이즈에서 제한되었던 사용자 UX가 다양하게 변화 발전될 수 있다.
도 1은 본 발명의 실시예에 따른 멀티 스크린을 사용하는 가상 모바일 인프라 서비스 시스템의 구성을 나타낸 블록도이다.
도 2는 도 1의 멀티스크린 제어 서버의 세부 구성을 나타낸 블록도이다.
도 3은 본 발명의 한 실시예에 따른 멀티스크린을 사용하는 VMI 서비스의 개념도이다.
도 4는 도 3의 VMI 서비스를 설명하는 한 예시도이다.
도 5는 도 3의 VMI 서비스를 설명하는 다른 예시도이다.
도 6은 본 발명의 실시예에 따른 여백을 이용하여 분할 어플리케이션 화면을 생성하는 예시이다.
도 7은 본 발명의 한 실시예에 따른 화면 제어를 설명하는 개념도이다.
도 8은 도 7의 화면 제어를 설명하는 한 예시이다.
도 9는 도 7의 화면 제어를 설명하는 다른 예시이다.
도 10은 본 발명의 다른 실시예에 따른 화면 제어를 설명하는 개념도이다.
도 11은 도 10의 화면 제어를 설명하는 한 예시이다.
도 12는 본 발명의 한 실시예에 따른 멀티스크린 제어 서버의 동작을 나타낸 순서도이다.
도 13은 본 발명의 다른 실시예에 따른 멀티스크린 제어 서버의 동작을 나타낸 순서도이다.
도 14는 본 발명의 다른 실시예에 따른 멀티스크린을 사용하는 VMI 서비스의 개념도이다.
도 15는 도 14의 VMI 서비스를 설명하는 한 예시이다.
도 16은 도 14의 VMI 서비스를 설명하는 다른 예시이다.
아래에서는 첨부한 도면을 참고로 하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함" 한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
또한, 명세서에 기재된 "…부", "…기", "…모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다.
본 발명에서 설명하는 장치들은 적어도 하나의 프로세서, 메모리 장치, 통신 장치 등을 포함하는 하드웨어로 구성되고, 지정된 장소에 하드웨어와 결합되어 실행되는 프로그램이 저장된다. 하드웨어는 본 발명의 방법을 실행할 수 있는 구성과 성능을 가진다. 프로그램은 도면들을 참고로 설명한 본 발명의 동작 방법을 구현한 명령어(instructions)를 포함하고, 프로세서와 메모리 장치 등의 하드웨어와 결합하여 본 발명을 실행한다.
본 발명에서 단말은 스마트폰과 같은 모바일 단말, 스마트패드와 태블릿 PC와 같은 태블릿 단말, 데스크톱 컴퓨터, 텔레비전 등 다양한 형태의 통신 단말로서, 복수의 통신 인터페이스를 구비할 수 있다.
본 명세서에서 "전송 또는 제공"은 직접적인 전송 또는 제공하는 것 뿐만 아니라 다른 장치를 통해 또는 우회 경로를 이용하여 간접적으로 전송 또는 제공도 포함할 수 있다.
본 명세서에서 단수로 기재된 표현은 "하나" 또는 "단일" 등의 명시적인 표현을 사용하지 않은 이상, 단수 또는 복수로 해석될 수 있다.
본 명세서에서 도면에 관계없이 동일한 도면번호는 동일한 구성요소를 지칭하며, "및/또는" 은 언급된 구성 요소들의 각각 및 하나 이상의 모든 조합을 포함한다.
이하, 본 발명의 실시예에 따른 멀티 스크린을 사용하여 가상 모바일 인프라(Virtual Movile Infrastructure, 이하, ' VMI'라 통칭함) 서비스를 제공하는 방법에 대해 설명한다.
도 1은 본 발명의 실시예에 따른 멀티 스크린을 사용하는 가상 모바일 인프라 서비스 시스템의 구성을 나타낸 블록도이다.
도 1에 도시된 시스템의 구성은 본 발명의 일 실시예에 불과하므로 도 1을 통해 본 발명이 한정 해석되는 것은 아니며, 본 발명의 다양한 실시예들에 따라 도 1과 다르게 구성될 수도 있다.
도 1을 참조하면, 호스트 단말(100) 및 적어도 하나의 이웃 단말(201, 203, 205)은 통신망(300)을 통해 멀티스크린 제어 서버(400)에 접속한다. 멀티스크린 제어 서버(400)는 가상화 서버(500)와 연결된다.
가상화 서버(500)는 VMI 서비스를 제공하는 서버로서, 데이터 센터로도 지칭될 수 있다. 가상화 서버(500)는 복수의 모바일 환경을 위한 복수의 가상 머신(Virtual Machine, VM)(501, 503, 505)을 생성하고, 이처럼 생성된 VM(501, 503, 505)에 안드로이드 운영체제와 어플리케이션을 설치하여 사용자, 즉 호스트 단말(100) 및 적어도 하나의 이웃 단말(201, 203, 205)에게 제공할 가상 모바일 환경, 즉, VMI 서비스를 제공한다.
가상화 서버(500)는 복수의 가상 머신(501, 503, 505) 및 가상 머신 관리부(507)를 포함한다. 복수의 가상 머신(501, 503, 505)은 호스트 단말(100)의 유저 ID와 매핑될 수 있다. 복수의 가상 머신(501, 503, 505)은 각각의 독립된 운영 체제(Operating System, OS) 및 이러한 운영 체제(OS) 기반에서 실행되는 적어도 하나의 어플리케이션을 실행한다. 가상 머신 관리부(507)는 가상 머신(501, 503, 505)의 생성, 변경, 제거, 이전 등과 같은 가상 머신의 관리 기능 및 가상화 서버(500)의 자원 관리 기능을 직접적으로 수행할 수 있다.
가상 머신 관리부(507)는 물리적인 하드웨어 상에 접속되는 호스트 단말(100), 적어도 하나의 이웃 단말(201, 203, 205)에 대응되는 논리적인 모바일 환경을 위한 복수의 가상 머신(501, 503, 505)을 생성하여 관리한다. 이때, 가상화 환경 구현을 위해 하이퍼바이저(Hypervisor) 기술이 사용될 수 있다.
호스트 단말(100)은 자신에게 할당된 가상 머신(501, 503, 505)의 실행을 요청하고, 가상 머신(501, 503, 505)에서 실행된 어플리케이션 화면을 공유할 이웃 단말(201, 203, 205)을 등록한다.
적어도 하나의 이웃 단말(201, 203, 205)은 호스트 단말(100)과 지리적으로 인접한 단말이다. 호스트 단말(100)은 근거리 통신, 예를들어, 블루투스 방식으로 적어도 하나의 이웃 단말(201, 203, 205)을 인식할 수 있다.
한 실시예에 따르면, 멀티스크린 제어 서버(400)는 하나의 가상 머신(501, 503, 505)에서 실행된 어플리케이션의 화면을 여러 개로 분할하여 호스트 단말(100) 및 적어도 하나의 이웃 단말(201, 203, 205)로 전송한다. 예를들어, 보험 어플리케이션의 경우, 계약서 등은 스마트폰에서 출력하기에는 해상도나 화면 크기의 한계가 있다. 따라서, 여러 단말의 화면을 멀티스크린으로 활용하면 화면 크기나 해상도의 제약없이 이용할 수 있다.
다른 실시예에 따르면, 멀티스크린 제어 서버(400)는 복수의 이웃 단말(201, 203, 205)에 할당된 각각의 가상 머신(501, 503, 505)에서 실행된 어플리케이션 화면을 통합한 하나의 어플리케이션 화면을 호스트 단말(100)로 전송하고, 각 어플리케이션 화면을 각 이웃 단말(201, 203, 205)에 전송할 수 있다. 이런 경우, 호스트 단말(100)은 이웃 단말들(201, 203, 205)의 가상 머신 화면을 한 화면에서 표시하고 제어할 수 있다.
이때, 각각의 가상 머신(501, 503, 505)에서 실행된 어플리케이션들은 동일한 어플리케이션일 수 있다. 예를들어, 실시간 게임 어플리케이션일 수 있고, 호스트 단말(100)은 자신에게 할당된 가상 머신의 어플리케이션을 실행하면서 다른 이웃 단말들(201, 203, 205)의 어플리케이션 화면을 제어할 수 있다.
도 2는 도 1의 멀티스크린 제어 서버의 세부 구성을 나타낸 블록도이다.
도 2를 참조하면, 멀티스크린 제어 서버(400)는 단말 인터페이스부(401), 접속 관리부(403), 단말 데이터베이스(405) 및 멀티스크린 제어부(407)를 포함한다.
단말 인터페이스부(401)는 통신망(300)을 통하여 호스트 단말(100) 및 적어도 하나의 이웃 단말(201, 203, 205)과 연결되어 데이터를 송수신한다.
접속 관리부(403)는 VMI 서비스를 위해 LTE(Long Term Evolution) 통신 기술, 5G(Generation) 기술 등의 이동통신 기술을 통해 가상화 서버(100)와 단말(100, 201, 203, 205)이 상호 접속될 수 있도록 구현될 수 있다. 접속 관리부(403)는 호스트 단말(100) 및 적어도 하나의 이웃 단말(201, 203, 205)과 영상 신호 및 제어 입력 신호의 송수신을 수행할 수 있도록 하는 인터페이스를 제공한다.
단말 데이터베이스(405)는 로그인 정보 및 접속 제어 정보를 포함한다. 여기서, 로그인 정보는 호스트 단말(100) 또는 적어도 하나의 이웃 단말(201, 203, 205)로부터 수신되며, 로그인 정보를 통해 실행할 가상 머신(501, 503, 505)이 식별될 수 있다.
접속 제어 정보는 호스트 단말(100)에 의해 등록되는 정보로서, 호스트 단말(100) 또는 적어도 하나의 이웃 단말(201, 203, 205) 각각의 IP 주소, 포트(PORT) 등을 포함할 수 있다.
접속 제어 정보는 적어도 하나의 이웃 단말(201, 203, 205)을 식별할 수 있는 정보를 포함할 수 있다. 예를들어, 전화번호일 수 있다. 이러한 식별 정보는 호스트 단말(100)로부터 수신된다. 호스트 단말(100)은 근거리 통신을 통하여 인식한 적어도 하나의 이웃 단말(201, 203, 205)의 정보를 전송할 수 있다.
이때, 단말 데이터베이스(405)는 멀티 스크린 등록 정보, 배치 결과 및 스크린 해상도의 정보를 저장할 수 있다.
멀티스크린 제어부(407)는 가상화 서버(500)로부터 가상 머신(501, 503, 505)에서 실행된 어플리케이션 화면을 스트리밍 방식으로 수신한다.
멀티스크린 제어부(407)는 호스트 단말(100) 및 적어도 하나의 이웃 단말(201, 203, 205) 각각으로부터 화면 제어를 위한 입력 신호들을 수신할 수 있다.
멀티스크린 제어부(407)는 수신한 입력 신호들을 가상 머신(501, 503, 505)에서 생성된 전체 어플리케이션 화면에 대응되는 입력 신호로 변환하고, 변환된 입력 신호를 가상화 서버(500)로 전송할 수 있다. 멀티스크린 제어부(407)는 가상화 서버(500)로부터 변환된 입력 신호에 따라 생성된 어플리케이션 화면을 수신할 수 있다. 변환된 입력 신호에 따라 생성된 어플리케이션 화면을 화면 배치 정보에 기초하여 분할하여 호스트 단말(100) 및 적어도 하나의 이웃 단말(201, 203, 205) 각각으로 전송할 수 있다.
이때, 적어도 하나의 이웃 단말(201, 203, 205)은 분할 어플리케이션 화면과 가상 머신(501, 503, 505)에서 실행된 어플리케이션 화면을 선택적으로 표시할 수 있다.
도 3은 본 발명의 한 실시예에 따른 멀티스크린을 사용하는 VMI 서비스의 개념도이고, 도 4는 도 3의 VMI 서비스를 설명하는 한 예시도이고, 도 5는 도 3의 VMI 서비스를 설명하는 다른 예시도이다.
도 3을 참조하면, 멀티스크린 제어 서버(400)는 가상 머신 #1(501)에서 실행된 어플리케이션 화면을 스트리밍 방식으로 수신한다.
멀티스크린 제어 서버(400)는 호스트 단말(100) 및 적어도 하나의 이웃 단말(201, 203, 205)와 통신망(도 1의 300)을 통해 연결된다.
멀티스크린 제어 서버(400)는 호스트 단말(100)로부터 수신한 어플리케이션 실행 요청을 가상화 서버(500)로 전달한다. 멀티스크린 제어 서버(400)는 가상화 서버(500)로부터 어플리케이션 실행 요청에 따라 가상화 서버(500)의 가상 머신 #1(501)에서 실행된 어플리케이션 화면을 수신한다.
멀티스크린 제어 서버(400)는 호스트 단말(100)로부터 수신한 화면 배치 정보에 기초하여 어플리케이션 화면을 구성하는 전체 영역을 적어도 두개의 영역으로 분할한다. 이때, 연결된 단말이 총 4개이므로, 4개의 영역으로 분할한다.
멀티스크린 제어 서버(400)는 정해진 크기의 멀티스크린 화면(410)을 생성한다. 그리고 멀티스크린 화면(410)을 4개의 영역으로 분할한 레이아웃 화면(420)을 생성하고, 레이아웃 화면(420)을 호스트 단말(100)로 전송한다. 여기서, 레이아웃 화면(420)은 단말의 개수에 대응하는 레이아웃들을 포함한다. 즉, 레이아웃 화면(420)은 4개의 레이아웃을 포함한다.
이때, 4개의 레이아웃을 어떻게 배치할지에 관한 화면 배치 정보는 호스트 단말(100)에서 결정하여 멀티스크린 제어 서버(400)로 전송한다. 즉, 호스트 단말(100)은 멀티스크린 제어 서버(400)로부터 제공받은 레이아웃 화면(420)의 각 레이아웃들에 배치할 단말(100, 201, 203, 205) 화면을 결정하고, 결정에 따른 화면 배치 정보를 멀티스크린 제어 서버(400)로 전송할 수 있다.
즉, 4개의 레이아웃을 상하좌우에 각각 하나씩 배치하도록 호스트 단말(100)이 요청할 수 있다. 그리고 각 레이아웃에 어느 단말(100, 201, 203, 205)을 배치할지에 관한 화면 배치 정보를 호스트 단말(100)에서 결정한다.
멀티스크린 제어 서버(400)는 호스트 단말(100)로부터 수신한 화면 배치 정보에 기초하여 어플리케이션 화면의 영역을 분할한다. 멀티스크린 제어 서버(400)는 분할한 각 어플리케이션 화면의 영역을 각 레이아웃에 표시한 분할 어플리케이션 화면을 생성하여 호스트 단말(100) 및 적어도 하나의 이웃 단말(201, 203, 205)에게 전송한다. 즉, 각 단말(100, 201, 203, 205)에 표시되는 분할 어플리케이션 화면이 각각의 화면 레이아웃이라 할 수 있다.
이때, 각 화면 레이아웃에 표시되는 영역은, 서로 다른 영역일 수 있다. 도 4의 (A)와 같은 단말 대기화면은 도 4의 (B)와 같이 4개의 동일한 크기를 가진 영역으로 분할하되, 서로 다른 대기화면 영역으로 분할될 수 있다.
또한, 도 5를 참조하면, 어플리케이션 화면이 보험계약 체결 동의서 화면(P1)일 경우, 크기만으로 분할할 경우, 화면(P1)의 콘텐츠가 잘릴 수 있다. 따라서, 보험계약 체결 동의서 화면(P1)의 콘텐츠를 고려하여 사전에 분할 영역(P3, P5)을 지정해둘 수 있다. 그리고 지정된 분할 영역(P3, P5)에 기초하여 분할한 어플리케이션 화면을 호스트 단말(100)과 이웃 단말(201, 203, 205)에 전송할 수 있다.
이때, 분할 어플리케이션 화면은 가상화 서버(500)로부터 수신한 어플리케이션 화면의 비율을 유지하여 호스트 단말(100) 및 적어도 하나의 이웃 단말(201, 203, 205) 각각의 화면 크기로 생성될 수 있다.
또한, 분할 어플리케이션 화면은, 상하 영역 또는 좌우 영역에 형성된 여백을 통하여 어플리케이션 화면의 비율을 유지할 수 있다.
도 6은 본 발명의 실시예에 따른 여백을 이용하여 분할 어플리케이션 화면을생성하는 예시이다.
도 6의 (a)를 참조하면, 전체 어플리케이션 화면의 크기는 가로가 'X'이고, 세로가 'Y'이다. 도 6의 (b)를 참조하면, 단말 화면1은 가로가 'x1'이고 세로가 'y1'이고, 단말 화면2는 가로가 'x2'이고 세로가 'y2'이다. 이때, 'x2'는 'x1'보다 크고, 'y2'는 'y1'보다 크다.
단말 화면1과 단말 화면2를 평행하게 배치할 경우, 단말 화면2가 단말 화면1보다 크면 단말 화면1에 표시되는 어플리케이션 화면은 일부 잘리게 된다. 이를 방지하기 위하여 크기가 작은 단말 화면, 즉, 단말 화면1을 기준으로 분할 어플리케이션 화면의 레이아웃을 설정한다. 이때, 단말 화면1을 기준으로 하면, 단말 화면2의 상하 영역에 'z(y2-y1)' 만큼의 여백이 설정된다.
따라서, 분할 어플리케이션 화면의 레이아웃은 도 6의 (a)와 같이, 가로는 'x1+x2'이고, 세로는 'y1'이다.
도 7은 본 발명의 한 실시예에 따른 화면 제어를 설명하는 개념도이고, 도 8은 도 7의 화면 제어를 설명하는 한 예시이고, 도 9는 도 7의 화면 제어를 설명하는 다른 예시이다.
도 7을 참조하면, 멀티스크린 제어 서버(도 1의 400)는 멀티 스크린을 형성하는 4개의 단말(100, 201, 203, 205) 각각으로부터의 제어 입력(또는 터치 입력)을 수신한다. 멀티스크린 제어 서버(400)는 수신한 각각의 제어 입력을 하나의 제어 입력으로 변환할 수 있다. 여기서, 변환된 하나의 제어 입력은 VM(501, 503, 505)에서 생성된 전체 어플리케이션 화면(430)의 제어 입력이다. 이처럼, 변환된 하나의 제어 입력은 가상화 서버(500)로 전송되어, 대응하는 VM(501, 503, 505)으로 전달될 수 있다.
이어서, 멀티스크린 제어 서버(400)는 해당 VM(501, 503, 505)으로부터 변환된 하나의 제어 입력에 따라 생성된 어플리케이션 화면을 수신할 수 있다. 그리고 앞서 설명한 바와 같이, 수신한 어플리케이션 화면을 호스트 단말(100)의 화면 배치 정보에 기초하여 분할한 후, 호스트 단말(100) 및 적어도 하나의 이웃 단말(201, 203, 205) 각각으로 전송할 수 있다.
예를 들어, 도 8에서와 같이, 4개의 단말(100, 201, 203, 205)을 하나의 멀티 스크린으로 형성하여 입력되는 각 제어 입력이 멀티스크린 제어 서버(400)에 의해 하나의 어플리케이션 화면(430)의 제어 입력으로 변환되어 해당하는 VM(501, 503, 505)으로 전달될 수 있다.
구체적인 예로, 도 9를 참조하면, 멀티 스크린으로 등록된 4개의 단말(100, 201, 203, 205) 각각의 터치 입력(T1, T2, T3, T4)이 있으면 이러한 터치 입력이 멀티스크린 제어 서버(도 1의 400)로 전달되어 멀티스크린 제어 서버(400)의 전체 어플리케이션 화면(430)을 통해 표시된다. 그리고 이러한 4개의 터치 입력(T1, T2, T3, T4)이 멀티스크린 제어 서버(400)에 의해 하나의 터치 입력(T5)으로 변환되어 해당하는 VM(501, 503, 505)으로 전달될 수 있다. 물론, 이것도 하나의 예일 뿐이며, 이외에도 다양한 형태의 분할된 입력을 통한 다양한 제어 입력으로 구현될 수 있다.
또한, 멀티스크린 제어 서버(400)는 멀티 스크린으로 등록된 복수의 단말(100, 201, 203, 205)로부터 전달되는 제어 입력이 단말(100, 201, 203, 205) 자신의 스크린을 제어하기 위한 제어 입력인 경우, 해당 제어 입력을 전체 스크린 대비 해당 단말(100, 201, 203, 205)과 관련되어 분할된 스크린에 대한 제어 입력으로 변환한 후 해당 단말(100, 201, 203, 205)로 다시 전달함으로써 해당 단말(100, 201, 203, 205)의 스크린이 제어될 수 있도록 할 수 있다.
이것은 단말(100, 201, 203, 205)의 브라우저 제어 등에 이용될 수 있다. 예를 들어, 단말(100, 201, 203, 205)의 해상도보다 작게 표시되는 스크린을 드래그하여 이동시키거나 또는 해상도보다 크게 표시되어 일부만이 표시되는 경우 이를 스크롤하는 등의 제어 입력이 단말(100, 201, 203, 205) 자체의 스크린을 제어하기 위한 제어 입력으로 처리될 수 있도록 하기 위함이다.
또한, 이러한 제어 입력은 미리 설정된 형태의 제어 입력, 예를 들어, 클라이언트 앱 메뉴 기능을 통한 입력 등에 의해 구현될 수 있다.
도 10은 본 발명의 다른 실시예에 따른 화면 제어를 설명하는 개념도이고, 도 11은 도 10의 화면 제어를 설명하는 한 예시이다.
도 10을 참조하면, 스크린 A와 스크린 B의 화면 크기가 서로 다른 경우, 화면 크기가 상대적으로 작은 스크린 B는 제어 입력을 위한 용도로 사용하고, 스크린 A는 전체 화면의 출력을 위한 용도로 사용할 수 있다.
여기서, 스크린 A와 스크린 B는 도 1 ~ 내지 도 9에서 설명한 호스트 단말(100) 또는 적어도 하나의 이웃 단말(201, 203, 205) 중에서 선택된 2개의 단말 각각의 화면을 의미한다.
즉, 2개의 단말 중 하나의 단말이 영상만 표시되고 터치 입력 등의 제어 입력이 불가능한 모니터인 경우의 예가 적용될 수 있다. 이 경우에도, 마찬가지로, 멀티 스크린 등록, 배치 조정 등이 수행될 수 있다.
다만, 영상이 배치 조정된 결과대로 2개의 단말에 분할되어 표시되도록 할 수도 있으나, 모니터의 사용은 단말보다 매우 큰 화면의 표시에 이점이 있으므로, 이 경우에는 VM(501, 503, 505)의 전체 영상을 분할하지 않고 동일하게 2개의 단말에 모두 표시하여, 모니터를 통해 큰 화면으로 영상을 보면서, 영상에 대한 제어는 단말을 통해서만 수행될 수 있도록 구현될 수 있다.
이러한 예가 도 11에 도시되어 있다. 도 11을 참조하면, 어플리케이션 화면(P7)은 모니터 화면(P9)과 스마트폰 화면(P11)으로 분할될 수 있다.
모니터 화면(P9)에는 분할 어플리케이션 화면 혹은 전체 어플리케이션 화면만 표시되고, 스마트폰 화면(P11)에는 화면 제어 버튼 등을 표시할 수 있다. 이때, 화면 제어 버튼의 선택에 따라 분할된 스크린과 전체 스크린의 전환이 가능하도록 구현될 수 있다. 즉, 스마트폰 화면(P11)은 화면 제어 버튼을 사용하여 일부 화면 제어와 전체 화면 제어를 선택적으로 표시할 수 있다. 물론, 일부 화면 제어와 전체 화면 제어의 전환은 멀티스크린 제어 서버(도 1의 400)의 제어하에 이루어진다.
도 12는 본 발명의 한 실시예에 따른 멀티스크린 제어 서버의 동작을 나타낸 순서도이다.
도 12를 참조하면, 멀티스크린 제어 서버(400)는 호스트 단말(100)과 통신망(300)으로 연결된다(S101).
멀티스크린 제어 서버(400)는 통신망(300)에 연결된 단말들중에서 호스트 단말(100)로부터 적어도 하나의 이웃 단말(201, 203, 205)의 선택 정보를 수신한다(S103).
멀티스크린 제어 서버(400)는 호스트 단말(100) 및 적어도 하나의 이웃 단말(201, 203, 205)을 VMI 서비스 대상으로 설정한다(S105).
멀티스크린 제어 서버(400)는 호스트 단말(100)로부터 어플리케이션 실행 요청을 수신한다(S107).
멀티스크린 제어 서버(400)는 가상화 서버(500)로 어플리케이션 실행 요청을 전달하고, 가상 머신(501, 503, 505)에서 실행된 어플리케이션 화면을 수신한다(S109).
멀티스크린 제어 서버(400)는 호스트 단말(100)에게 제공한 화면 레이아웃에 설정된 화면 배치 정보를 수신한다(S111). 그리고 수신한 화면 배치 정보에 기초하여 어플리케이션 화면을 분할한다(S113).
멀티스크린 제어 서버(400)는 분할(S113)한 어플리케이션 화면을 호스트 단말(100) 및 적어도 하나의 이웃 단말(201, 203, 205)에게 각각 전송한다(S115).
도 13은 본 발명의 다른 실시예에 따른 멀티스크린 제어 서버의 동작을 나타낸 순서도이다.
도 13을 참조하면, 멀티스크린 제어 서버(400)는 호스트 단말(100) 및 적어도 하나의 이웃 단말(201, 203, 205)로부터 화면 입력 신호가 수신(S201)되면, 화면 입력 신호가 전체 제어인지 또는 개별 제어인지를 판단한다(S203).
여기서, 전체 제어는 화면 스크롤을 포함할 수 있다. 개별 제어는 화면 확대 또는 화면 축소를 포함할 수 있다.
멀티스크린 제어 서버(400)는 전체 제어로 판단되면, 화면 입력 신호를 전체 어플리케이션에 대한 입력 신호로 변환한다(S205).
멀티스크린 제어 서버(400)는 입력 신호를 가상 머신(501, 503, 505)으로 전송한다(S207).
멀티스크린 제어 서버(400)는 가상 머신(501, 503, 505)에서 입력 신호에 따라 실행된 어플리케이션 화면을 수신한다(S209). 그리고 어플리케이션 화면을 분할하여 호스트 단말(100) 및 적어도 하나의 이웃 단말(201, 203, 205)에게 각각 전송한다(S211).
한편, S203 단계에서 개별 제어로 판단되면, 멀티스크린 제어 서버(400)는 화면 입력 신호에 따른 분할 어플리케이션 화면을 처리하여 해당 단말(100, 201, 203, 205 중 하나)에 적용한다(S213). 예를들어, 개별 제어가 화면 확대일 경우, 화면 입력 신호를 전송한 단말의 분할 어플리케이션 화면을 확대하여 전송할 수 있다.
또한, 개별 제어가 화면 축소일 경우, 화면 입력 신호를 전송한 단말(100, 201, 203, 205 중 하나)의 분할 어플리케이션 화면을 축소하여 전송할 수 있다. 이때, 다른 단말들(100, 201, 203, 205 중 하나)의 화면에는 화면 확대 또는 축소가 발생하지 않는다.
도 14는 본 발명의 다른 실시예에 따른 멀티스크린을 사용하는 VMI 서비스의 개념도이다.
이때, 도 1과 동일한 구성 요소에 대한 설명은 생략한다.
도 14를 참조하면, 멀티스크린 제어 서버(400)는 호스트 단말(100) 및 적어도 하나의 이웃 단말(201, 203, 205) 각각으로부터 수신한 어플리케이션 실행 요청들을 가상화 서버(500)로 전달한다.
멀티스크린 제어 서버(400)는 가상화 서버(500)로부터 어플리케이션 실행 요청들에 따라 가상화 서버(500)의 가상 머신들(501, 503, 505)에서 실행된 각각의 어플리케이션 화면을 가상화 서버(500)로부터 수신한다.
멀티스크린 제어 서버(400)는 각각의 어플리케이션 화면을 가상 머신(501, 503, 505)에 대응하는 각각의 이웃 단말(201, 203, 205)에게 전송한다. 이때, 각각의 어플리케이션 화면을 하나의 어플리케이션 화면으로 생성하여 호스트 단말(100)에게 전송하고, 이웃 단말들(201, 203, 205)에는 해당 어플리케이션 화면을 전송한다.
멀티스크린 제어 서버(400)는 각각의 이웃 단말(201, 203, 205)의 가로 길이 해상도의 합을 하나의 어플리케이션 화면의 가로 길이의 해상도로 생성하고, 각각의 이웃 단말(201, 203, 205)의 세로 길이 해상도 중 가장 긴 해상도를 하나의 어플리케이션 화면의 세로 길이의 해상도로 생성할 수 있다.
멀티스크린 제어 서버(400)는 호스트 단말(100)로부터 하나의 어플리케이션 화면에 대한 입력 신호를 수신할 수 있다. 이때, 입력 신호를 가상 머신들(501, 503, 505)로 각각 전송한다. 그리고 가상 머신들(501, 503, 505)에서 생성된 입력 신호에 따른 각각의 어플리케이션 화면을 가상화 서버(500)로부터 수신한다. 그리고 수신한 각각의 어플리케이션 화면을 통합한 하나의 어플리케이션 화면을 호스트 단말(100)로 전송할 수 있다. 이때, 각각의 어플리케이션 화면은 이웃 단말(201, 203, 205)로 전송된다.
도 15는 도 14의 VMI 서비스를 설명하는 한 예시로서, 멀티스크린 제어 서버(400)가 가상 머신 별 어플리케이션 화면들을 하나의 어플리케이션 화면으로 통합하는 실시예를 나타낸다.
도 15의 (a)를 참조하면, 각 가상 머신들(501, 503, 505)에서 실행된 어플리케이션 화면들을 아래 방향(가로 방향)으로 3개 배치하는 형태로 배치할 수 있다.
도 15의 (b)를 참조하면, 각 가상 머신들(501, 503, 505)에서 실행된 어플리케이션 화면들을 옆 방향(세로 방향)으로 3개 배치할 수 있다.
도 15의 (c)를 참조하면, 각 가상 머신들(501, 503, 505)에서 실행된 어플리케이션 화면들 중에서 2개의 어플리케이션 화면들은 상방에서 세로 방향으로 배치한 후 나머지 2개의 스크린은 하방에 단독으로 배치할 수 있다.
도 16은 도 14의 VMI 서비스를 설명하는 다른 예시이다.
도 16을 참조하면, 멀티스크린 제어 서버(400)는 4개의 단말 화면, 즉, 스크린 A, 스크린 B, 스크린 C, 스크린 D를 상방에 2개 배치하고 하방에 2개 배치하는 형태로 배치할 수 있다. 이때, 멀티스크린 제어 서버(400)는 4개의 스크린 각각의 해상도가 상이하므로, 각 스크린의 해상도를 참조하여 전체 스크린의 해상도를 결정할 수 있다.
멀티스크린 제어 서버(400)는 각 배치 형태에 따라 해당되는 전체 해상도를 결정할 수 있다. 각 단말 화면의 해상도를 참조하여 전체 멀티스크린 화면의 해상도를 결정할 수 있다.
이상에서 설명한 본 발명의 실시예는 장치 및 방법을 통해서만 구현이 되는 것은 아니며, 본 발명의 실시예의 구성에 대응하는 기능을 실현하는 프로그램 또는 그 프로그램이 기록된 기록 매체를 통해 구현될 수도 있다.
이상에서 본 발명의 실시예에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속하는 것이다.

Claims (14)

  1. 멀티스크린 제어 서버가 가상 모바일 인프라(Virtual Mobile Infrastructure, VMI) 서비스를 제공하는 방법으로서,
    호스트 단말 및 상기 호스트 단말이 등록한 적어도 하나의 이웃 단말과 네트워크를 통해 연결하는 단계,
    상기 호스트 단말로부터 수신한 어플리케이션 실행 요청을 가상화 서버로 전달하고, 상기 어플리케이션 실행 요청에 따라 상기 가상화 서버의 가상 머신에서 실행된 어플리케이션 화면을 상기 가상화 서버로부터 수신하는 단계,
    상기 호스트 단말로부터 수신한 화면 배치 정보에 기초하여 상기 어플리케이션 화면을 구성하는 전체 영역을 적어도 두개의 영역으로 분할하는 단계, 그리고
    분할한 각각의 영역을 포함하는 분할 어플리케이션 화면을 상기 호스트 단말 및 상기 적어도 하나의 이웃 단말에게 각각 전송하는 단계
    를 포함하는, VMI 서비스 제공 방법.
  2. 제1항에서,
    상기 분할하는 단계 이전에,
    적어도 두개의 화면 레이아웃을 상기 호스트 단말에게 제공하는 단계, 그리고
    상기 호스트 단말 및 상기 적어도 하나의 이웃 단말을 상기 적어도 두개의 화면 레이아웃에 배치한 화면 배치 정보를 상기 호스트 단말로부터 수신하는 단계를 더 포함하고,
    상기 분할하는 단계는,
    상기 화면 배치 정보에 기초하여 각 화면 레이아웃에 상기 적어도 두개의 영역을 표시하고,
    상기 분할 어플리케이션 화면은,
    상기 각 화면 레이아웃에 표시된 영역을 포함하는, VMI 서비스 제공 방법.
  3. 제2항에서,
    상기 각 화면 레이아웃에 표시되는 영역은, 서로 다른 영역인, VMI 서비스 제공 방법.
  4. 제2항에서,
    상기 분할 어플리케이션 화면은,
    상기 가상화 서버로부터 수신한 어플리케이션 화면의 비율을 유지하여 상기 호스트 단말 및 상기 적어도 하나의 이웃 단말 각각의 화면 크기로 생성되는, VMI 서비스 제공 방법.
  5. 제4항에서,
    상기 분할 어플리케이션 화면은,
    상하 영역 또는 좌우 영역에 형성된 여백을 통하여 상기 어플리케이션 화면의 비율을 유지하는, VMI 서비스 제공 방법.
  6. 제1항에서,
    상기 연결하는 단계는,
    상기 호스트 단말로부터 적어도 하나의 이웃 단말의 등록 정보를 수신하고,
    상기 등록 정보는,
    상기 적어도 하나의 이웃 단말을 식별할 수 있는 정보를 포함하는, VMI 서비스 제공 방법.
  7. 제6항에서,
    상기 등록 정보는,
    상기 호스트 단말이 근거리 통신을 통하여 인식한 적어도 하나의 이웃 단말의 정보를 포함하는, VMI 서비스 제공 방법.
  8. 제1항에서,
    상기 각각 전송하는 단계 이후,
    상기 호스트 단말 및 상기 적어도 하나의 이웃 단말 각각으로부터 화면 제어를 위한 입력 신호들을 수신하는 단계,
    상기 입력 신호들을 상기 가상 머신에서 생성된 전체 어플리케이션 화면에 대응되는 입력 신호로 변환하고, 변환된 입력 신호를 상기 가상화 서버로 전송하는 단계,
    상기 가상화 서버로부터 상기 변환된 입력 신호에 따라 생성된 어플리케이션 화면을 수신하는 단계, 그리고
    상기 변환된 입력 신호에 따라 생성된 어플리케이션 화면을 상기 화면 배치 정보에 기초하여 분할하여 상기 호스트 단말 및 상기 적어도 하나의 이웃 단말 각각으로 전송하는 단계
    를 더 포함하는, VMI 서비스 제공 방법.
  9. 제8항에서,
    상기 적어도 하나의 이웃 단말은,
    상기 분할 어플리케이션 화면과 상기 가상 머신에서 실행된 어플리케이션 화면을 선택적으로 표시하는, VMI 서비스 제공 방법.
  10. 제8항에서,
    상기 입력 신호들은,
    화면을 스크롤(Scroll)하는 신호를 포함하는, VMI 서비스 제공 방법.
  11. 제1항에서,
    상기 각각 전송하는 단계 이후,
    상기 호스트 단말 또는 상기 적어도 하나의 이웃 단말로부터 화면 확대 신호 또는 화면 축소 신호를 수신하는 단계,
    상기 화면 확대 신호 또는 상기 화면 축소 신호를 전송한 호스트 단말 또는 이웃 단말의 분할 어플리케이션 화면을 상기 화면 확대 신호 또는 상기 화면 축소 신호를 적용하여 확대 또는 축소하는 단계, 그리고
    확대 또는 축소한 분할 어플리케이션 화면을 상기 호스트 단말 또는 상기 이웃 단말에게 전송하는 단계
    를 더 포함하는, VMI 서비스 제공 방법.
  12. 멀티스크린 제어 서버가 가상 모바일 인프라(Virtual Movile Infrastructure, VMI) 서비스를 제공하는 방법으로서,
    호스트 단말 및 상기 호스트 단말이 등록한 복수의 이웃 단말과 네트워크를 통해 연결하는 단계,
    상기 복수의 이웃 단말 각각으로부터 수신한 어플리케이션 실행 요청들을 가상화 서버로 전달하는 단계,
    상기 가상화 서버로부터 상기 어플리케이션 실행 요청들에 따라 상기 가상화 서버의 가상 머신들에서 실행된 각각의 어플리케이션 화면을 상기 가상화 서버로부터 수신하는 단계,
    상기 각각의 어플리케이션 화면을 가상 머신에 대응하는 각각의 이웃 단말에게 전송하는 단계, 그리고
    상기 각각의 어플리케이션 화면을 하나의 어플리케이션 화면으로 생성하여 상기 호스트 단말에게 전송하는 단계
    를 포함하는, VMI 서비스 제공 방법.
  13. 제10항에서,
    상기 호스트 단말에게 전송하는 단계는,
    상기 각각의 이웃 단말의 가로 길이 해상도의 합을 상기 하나의 어플리케이션 화면의 가로 길이의 해상도로 생성하고, 상기 각각의 이웃 단말의 세로 길이 해상도 중 가장 긴 해상도를 상기 하나의 어플리케이션 화면의 세로 길이의 해상도로 생성하는, VMI 서비스 제공 방법.
  14. 제10항에서,
    상기 호스트 단말에게 전송하는 단계 이후,
    상기 호스트 단말로부터 상기 하나의 어플리케이션 화면에 대한 입력 신호를 수신하는 단계,
    상기 입력 신호를 상기 가상 머신들로 각각 전송하는 단계, 그리고
    상기 가상 머신들에서 생성된 상기 입력 신호에 따른 각각의 어플리케이션 화면을 상기 가상화 서버로부터 수신하고, 상기 수신한 각각의 어플리케이션 화면을 통합한 하나의 어플리케이션 화면을 상기 호스트 단말로 전송하는 단계
    를 더 포함하는, VMI 서비스 제공 방법.




KR1020200003892A 2020-01-10 2020-01-10 멀티 스크린을 사용하여 가상 모바일 인프라 서비스를 제공하는 방법 KR20210090510A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200003892A KR20210090510A (ko) 2020-01-10 2020-01-10 멀티 스크린을 사용하여 가상 모바일 인프라 서비스를 제공하는 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200003892A KR20210090510A (ko) 2020-01-10 2020-01-10 멀티 스크린을 사용하여 가상 모바일 인프라 서비스를 제공하는 방법

Publications (1)

Publication Number Publication Date
KR20210090510A true KR20210090510A (ko) 2021-07-20

Family

ID=77127387

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200003892A KR20210090510A (ko) 2020-01-10 2020-01-10 멀티 스크린을 사용하여 가상 모바일 인프라 서비스를 제공하는 방법

Country Status (1)

Country Link
KR (1) KR20210090510A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024080663A1 (ko) * 2022-10-11 2024-04-18 삼성전자 주식회사 디스플레이 장치 및 그 동작 방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024080663A1 (ko) * 2022-10-11 2024-04-18 삼성전자 주식회사 디스플레이 장치 및 그 동작 방법

Similar Documents

Publication Publication Date Title
CN102918490B (zh) 与在平板计算装置的虚拟桌面内显示的远程应用交互
US9046931B2 (en) Apparatus and method for adaptation of input/output interface in virtualization environment
US11385930B2 (en) Automatic workflow-based device switching
US20110066971A1 (en) Method and apparatus for providing application interface portions on peripheral computing devices
US20070300223A1 (en) Virtual machine system and method for switching hardware devices thereof
JP2016541072A (ja) リソース処理方法、オペレーティング・システム、およびデバイス
KR101594105B1 (ko) 사용자 장치 간에 여러 화면을 분배하고 입력 인터페이스를 공유하는 멀티 스크린 구현 방법 및 장치
KR20140065837A (ko) 소프트웨어 가상화를 이용하여 소프트웨어 서비스를 제공하기 위한 장치, 시스템 및 그 방법
CN102027450A (zh) 由移动计算装置使用外部显示装置的方法和系统
JP2016505946A (ja) 複数のバーチャルマシーンをマッピングする方法及びシステム並びにクライアント装置
US20140351833A1 (en) Multi-computing environment operating on a single native operating system
KR20130127629A (ko) 가상화 애플리케이션 제공 장치 및 그 방법
KR20210090510A (ko) 멀티 스크린을 사용하여 가상 모바일 인프라 서비스를 제공하는 방법
US9760315B2 (en) Dynamic device allocation apparatus, dynamic device allocation system, dynamic device allocation method and storage medium storing dynamic device allocation program
KR101262849B1 (ko) 가상화 시스템 상에서 영상장치를 할당 및 해제하기 위한 장치 및 방법
KR102492793B1 (ko) 가상 데스크탑 서비스 제공 시스템 및 가상 데스크탑 서비스 제공 방법
JP6013980B2 (ja) アドレス割当装置およびアドレス割当プログラム
KR101624700B1 (ko) 가상 운영체제 환경에서 다중화면 제어가 가능한 가상화 클라이언트
JP5861708B2 (ja) 方法、システム及びプログラム
JP2018028767A (ja) 情報処理装置、情報処理方法及びプログラム
KR101326231B1 (ko) 가상화 소프트웨어 서비스 시스템 및 이를 위한 서비스 서버 및 사용자단말
KR20210087701A (ko) 원격 컴퓨팅 시스템에서 업무 연속성 지원 방법 및 휴대용 제로 클라이언트 장치와 원격 컴퓨팅 시스템
KR101524781B1 (ko) 가상화 환경에서 입출력 인터페이스를 적응시키는 장치 및 방법
WO2024093546A1 (zh) 虚拟机的图像显示方法及装置
WO2015147890A1 (en) Method and system for maintaining aspect ratio on pointing devices