KR20130067526A - Method of changing operation environment and apparatus for the same - Google Patents

Method of changing operation environment and apparatus for the same Download PDF

Info

Publication number
KR20130067526A
KR20130067526A KR1020110134143A KR20110134143A KR20130067526A KR 20130067526 A KR20130067526 A KR 20130067526A KR 1020110134143 A KR1020110134143 A KR 1020110134143A KR 20110134143 A KR20110134143 A KR 20110134143A KR 20130067526 A KR20130067526 A KR 20130067526A
Authority
KR
South Korea
Prior art keywords
virtual
virtual machine
state
environment
context information
Prior art date
Application number
KR1020110134143A
Other languages
Korean (ko)
Other versions
KR101326908B1 (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 KR1020110134143A priority Critical patent/KR101326908B1/en
Publication of KR20130067526A publication Critical patent/KR20130067526A/en
Application granted granted Critical
Publication of KR101326908B1 publication Critical patent/KR101326908B1/en

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/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45504Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
    • 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/22Microcontrol or microprogram arrangements
    • G06F9/223Execution means for microinstructions irrespective of the microinstruction function, e.g. decoding of microinstructions and nanoinstructions; timing of microinstructions; programmable logic arrays; delays and fan-out problems
    • 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
    • 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

Abstract

PURPOSE: A virtual environment management method and a terminal using the same are provided to separately drive a virtual smart phone, thereby driving an application program in a different VM(Virtual Machine) of the virtual smart phone. CONSTITUTION: When situation information causes the change of a virtual environment, VMs(100_1,100_2) receive the situation information and provides the situation information to a hypervisor(200). The hypervisor determines the virtual environment corresponding to the situation information and changes a driving environment which is provided by a VM. The hypervisor changes a situation of the VM into one of an execution state, a stop state, and an end state. The hypervisor changes the situations of a part of VMs into the end state or the stop state and changes the situations of the remaining VMs into the execution state. [Reference numerals] (100_1) First virtual machine; (100_2) Second virtual machine; (200) Hypervisor

Description

가상 환경 관리 방법 및 이를 이용한 단말 장치{METHOD OF CHANGING OPERATION ENVIRONMENT AND APPARATUS FOR THE SAME}METHOOD OF CHANGING OPERATION ENVIRONMENT AND APPARATUS FOR THE SAME}

본 발명은 가상 환경 관리에 관한 것으로, 더욱 상세하게는 상황 정보에 기초하여 가상 환경을 관리하는 가상 환경 관리 방법 및 이를 이용한 단말 장치에 관한 것이다.The present invention relates to virtual environment management, and more particularly, to a virtual environment management method for managing a virtual environment based on context information and a terminal device using the same.

프로세서 기술이 발전함에 따라 가상화 기술(virtualization technology)에 대한 관심이 꾸준히 증가하고 있다. 가상화 기술은 하나의 물리적인 디바이스에서 다수의 운영체제를 독립적으로 운용할 수 있도록 해주는 기술을 말한다. As processor technology evolves, there is a steady increase in interest in virtualization technology. Virtualization technology refers to a technology that allows multiple operating systems to be operated independently from a single physical device.

이러한 가상화 기술에서는 물리적인 디바이스가 어플리케이션의 명령어 코드를 직접 실행하는 것이 아니라, 물리적인 디바이스에서 구현된 적어도 하나의 가상 머신(virtual machine)이 명령어 코드를 해석하여 어플리케이션을 실행하는 것이다. In this virtualization technology, the physical device does not directly execute the application code of the application, but at least one virtual machine implemented in the physical device interprets the command code to execute the application.

이러한 가상화 기술에 따라 물리적인 디바이스의 호스트 운영체제 상에 가상화 계층(Virtualization Layer)이 형성되고, 가상화 계층 상에 복수의 논리적인 가상 머신이 생성된다.According to this virtualization technology, a virtualization layer is formed on a host operating system of a physical device, and a plurality of logical virtual machines are created on the virtualization layer.

복수의 가상 머신에는 각각 게스트 운영체제(guest OS)가 설치될 수 있으며, 각각의 게스트 운영체제상에는 해당 운영체제에서 지원되는 응용 프로그램이 설치될 수 있다. 이에 따라, 복수의 가상 머신은 자신의 운영체제 또는 소프트웨어 어플리케이션을 실행하는 일체 완비된(Self-contained) 플랫폼으로서 기능할 수 있다.A guest OS may be installed in each of the plurality of virtual machines, and applications supported by the corresponding OS may be installed on each guest OS. Accordingly, the plurality of virtual machines can function as a self-contained platform running their own operating system or software application.

이렇게 가상화 기술이 이용될 때에는 복수의 가상 머신을 관리할 수 있는 가상 머신 매니저가 제공되어, 가상 머신 매니저에서는 가상화된 하드웨어 자원을 관리하고, 가상 머신을 생성, 삭제, 시작 및 재시작 등의 다양하게 가상 머신을 관리할 수 있다.When the virtualization technology is used, a virtual machine manager is provided to manage a plurality of virtual machines. The virtual machine manager manages virtualized hardware resources and creates various virtual machines such as creating, deleting, starting, and restarting virtual machines. You can manage your machine.

더욱이, 이러한 가상화 기술에서 모든 가상 머신은 하드웨어 자원의 가상화하여 사용할 수 있을 뿐만 아니라, 각 가상 머신 간에 고립성(Isolation)이 제공된다. 이는 가상화 기술 중에서도 가장 주목을 받는 특징 중에 하나로 하나의 하드웨어 자원을 가상화 하여 사용 중인 여러 가상 머신 중에서 하나의 가상 머신에 문제가 발생된 경우, 다른 가상 머신에게 전혀 영향을 주지 않아 보다 높은 안정성을 제공할 수 있기 때문이다.Moreover, in this virtualization technology, not only virtual machines can use virtualized hardware resources but also provide isolation between each virtual machine. This is one of the most notable features among virtualization technologies. It virtualizes one hardware resource so that if one virtual machine fails among the virtual machines in use, it will not affect other virtual machines at all and provide higher reliability. Because it can.

또한, 하나의 가상 머신이 외부에서 침입을 받거나 공격을 당하는 경우에도 가상 머신은 각각이 완전히 분리되어 있기 때문에 해당 가상 머신만 공격을 받을 뿐 동일한 하드웨어의 다른 가상 머신에는 전혀 영향이 미치지 않는다.In addition, even if one virtual machine is invaded or attacked from the outside, the virtual machines are completely separated from each other, and only the corresponding virtual machine is attacked and does not affect other virtual machines of the same hardware at all.

특히, 메모리의 가상화 및 고립성은 지원에 의해서 이루어지는데, 오류 혹은 외부의 침입에 의해 어떤 시스템이 완전히 망가지거나 점유를 당하더라도 문제가 되는 메모리의 자원은 이미 다른 가상 머신의 자원과는 완전히 분리가 되어 있기 때문에 그 문제가 다른 가상 머신으로는 확산이 이루어지지 않기 때문이다.In particular, the virtualization and isolation of memory is achieved through support, and even if a system is completely destroyed or occupied by an error or external intrusion, the resource of the memory in question is already completely separated from the resources of other virtual machines. This is because the problem does not spread to other virtual machines.

한편, 최근 들어 이동통신 단말기의 기능 및 PDA의 기능을 결합시킨 스마트폰이 각광받고 있는 추세이며, 이러한 스마트폰에는 기존 이동통신 단말기에 비해 대용량의 메모리와 고성능 CPU가 탑재되어, 다양한 어플리케이션 실행, 음성/데이터 통신 및 PC연동 등을 지원하기 위한 운영체제, 예를 들어 애플의 iOS, 구굴의 안드로이드 등이 탑재된다. On the other hand, smart phones, which combine the functions of mobile communication terminals and PDA functions, have been in the spotlight in recent years, and these smart phones have larger memory and higher performance CPUs than conventional mobile communication terminals, and execute various applications and voices. It includes an operating system to support data communication and PC linkage, such as Apple's iOS and Gugul's Android.

이로 인해, 스마트폰은 인터넷 검색, 이메일, 게임, 전자상거래 등 기존 컴퓨터와 같은 일을 수행할 수 있게 되었다. 예를 들어, 회사에서는 업무용 애플리케이션을 제작하여 사용자에게 제공하고, 사용자는 스마트폰을 통해 애플리케이션을 다운받아 설치한 후, 설치한 애플리케이션을 실행하여 업무를 처리할 수 있게 되었다.As a result, smartphones can perform tasks like traditional computers such as Internet browsing, email, gaming, and e-commerce. For example, a company can create and provide a business application to a user, and a user can download and install the application through a smartphone, and then execute the installed application to perform a task.

가상화 기술이 스마트폰에 적용된 경우, 스마트폰에는 적어도 하나의 가상 머신이 존재할 수 있다. 이에 따라, 스마트폰에는 적어도 하나의 가상 머신이 존재할 수 있으며, 적어도 하나의 가상 머신에는 애플리케이션이 설치될 수 있다.When virtualization technology is applied to a smartphone, at least one virtual machine may exist in the smartphone. Accordingly, at least one virtual machine may exist in the smartphone, and an application may be installed in the at least one virtual machine.

스마트폰에 적어도 하나의 가상 머신이 존재할 수 있을 경우, 사용자는 적어도 하나의 가상 머신에 서로 다른 애플리케이션을 각각 설치하고, 필요에 따라 가상 머신을 스위칭하여 가상 머신에 설치된 애플리케이션을 실행할 수 있다. When at least one virtual machine may exist in the smartphone, the user may install different applications on the at least one virtual machine, respectively, and switch the virtual machine as needed to execute the application installed in the virtual machine.

예를 들어, 사용자는 적어도 하나의 가상 머신을 업무용 가상 머신과 일반용 가상 머신으로 사용하기 위해서, 업무용 가상 머신에는 회사 업무를 위한 애플리케이션을 설치하고, 일반용 가상 머신에는 사용자가 선호하는 애플리케이션을 설치하고, 필요에 따라 가상 머신을 스위칭하여 가상 머신에 설치된 애플리케이션을 실행할 수 있다.For example, in order to use at least one virtual machine as a work virtual machine and a general purpose virtual machine, a user installs an application for a company job on a work virtual machine, a user favorite application on a general virtual machine, You can switch virtual machines as needed to run applications installed on them.

하지만, 사용자가 스마트폰에 존재하는 적어도 하나의 가상 머신을 스위칭하기 위해서는 실행중인 가상 머신의 상태를 정지 상태 또는 종료 상태로 변경하고, 스위칭 대상 가상 머신의 상태를 실행 상태로 변경해야만 한다는 문제점이 있다.However, in order for a user to switch at least one virtual machine existing in the smartphone, there is a problem in that the state of a running virtual machine must be changed to a stopped state or an end state, and the state of the switching target virtual machine must be changed to a running state. .

상기와 같은 문제점을 해결하기 위한 본 발명의 목적은, 상황 정보에 기초하여 가상 환경을 관리하는 가상 환경 관리 방법을 제공하는 데 있다.An object of the present invention for solving the above problems is to provide a virtual environment management method for managing a virtual environment based on the situation information.

상기와 같은 문제점을 해결하기 위한 본 발명의 다른 목적은, 상황 정보에 기초하여 가상 환경을 관리하는 가상 환경 관리 장치가 제공되는 단말 장치를 제공하는 데 있다.Another object of the present invention for solving the above problems is to provide a terminal device provided with a virtual environment management device for managing a virtual environment based on the situation information.

상기한 본 발명의 목적을 달성하기 위한 본 발명의 일 실시예에 따른 단말 장치는, 상황 정보를 수신하고, 상기 수신한 상황 정보가 미리 정의된 가상 환경에 대한 변경을 유발하는 상황 정보로 판단하는 경우 상기 수신한 상황 정보를 하이퍼바이저로 제공하는 적어도 하나의 가상 머신 및 상기 수신한 상황 정보에 상응하는 가상 환경을 결정하고, 상기 결정한 가상 환경으로 상기 적어도 하나의 가상 머신에 의해서 제공되는 구동 환경을 변경하는 하이퍼바이저를 포함한다.A terminal device according to an embodiment of the present invention for achieving the above object of the present invention, receives the situation information, and determines that the received situation information as the situation information causing a change to a predefined virtual environment In this case, at least one virtual machine providing the received context information to the hypervisor and a virtual environment corresponding to the received context information are determined, and the driving environment provided by the at least one virtual machine is determined as the determined virtual environment. Contains the hypervisor to change.

여기서, 상기 하이퍼바이저는 상기 적어도 하나의 가상 머신이 갖는 각각의 상태를 실행 상태, 정지 상태 또는 종료 상태 중 어느 하나의 상태로 관리할 수 있다.Here, the hypervisor may manage each state of the at least one virtual machine as one of an execution state, a stop state, and an end state.

여기서, 상기 하이퍼바이저는 상기 적어도 하나의 가상 머신에 의해서 제공되는 구동 환경을 변경하기 위해서, 상기 적어도 하나의 가상 머신 중 적어도 일부의 가상 머신의 상태를 정지 상태 또는 종료 상태로 변경시키고, 적어도 일부의 가상 머신을 새롭게 실행할 수 있다.Here, the hypervisor changes the state of at least some of the at least one of the at least one virtual machine to the stopped state or the terminated state, in order to change the driving environment provided by the at least one virtual machine, You can run a new virtual machine.

여기서, 상기 하이퍼바이저는 상기 적어도 하나의 가상 단말의 가상 환경에 대한 변경을 유발하는 미리 정의된 상황 정보 및 상기 상황 정보에 상응하는 가상 환경을 대응시켜 저장한 미리 정의된 가상 환경 변경 규칙에 따라 상황 정보에 상응하는 가상 환경을 결정할 수 있다.Here, the hypervisor according to a predefined virtual environment change rule stored in correspondence with the predefined context information causing the change to the virtual environment of the at least one virtual terminal and the virtual environment corresponding to the context information. The virtual environment corresponding to the information can be determined.

여기서, 상기 적어도 하나의 가상 머신은 동일한 운영 체제 또는 서로 다른 운영 체제를 가상으로 표현한 머신일 수 있다.Here, the at least one virtual machine may be a machine that virtually expresses the same operating system or different operating systems.

상기한 본 발명의 목적을 달성하기 위한 본 발명의 일 실시예에 따른 가상 환경 관리 방법은, 상황 정보를 수신하고, 상기 수신한 상황 정보가 미리 정의된 가상 환경에 대한 변경을 유발하는 상황 정보인지 판단하는 단계 및 상기 판단 결과에 따라 상기 상황 정보에 상응하는 가상 환경을 결정하고, 상기 결정한 가상 환경으로 상기 적어도 하나의 가상 머신에 의해서 제공되는 구동 환경을 변경하는 단계를 포함한다.The virtual environment management method according to an embodiment of the present invention for achieving the above object of the present invention, receives the situation information, and whether the received situation information is a situation information causing a change to a predefined virtual environment And determining a virtual environment corresponding to the situation information according to the determination and the determination result, and changing the driving environment provided by the at least one virtual machine to the determined virtual environment.

여기서, 상기 구동 환경을 변경하는 단계는 상기 적어도 하나의 가상 머신이 갖는 각각의 상태를 실행 상태, 정지 상태 또는 종료 상태 중 어느 하나의 상태로 관리할 수 있다.Here, in the changing of the driving environment, each state of the at least one virtual machine may be managed as one of an execution state, a stop state, and an end state.

여기서, 상기 구동 환경을 변경하는 단계는 상기 적어도 하나의 가상 머신에 의해서 제공되는 구동 환경을 변경하기 위해서, 상기 적어도 하나의 가상 머신 중 적어도 일부의 가상 머신의 상태를 정지 상태 또는 종료 상태로 변경시키고, 적어도 일부의 가상 머신을 새롭게 실행할 수 있다.The changing of the driving environment may include changing a state of at least some of the at least one of the at least one virtual machine to a stopped state or an end state in order to change the driving environment provided by the at least one virtual machine. At least some of the virtual machines can be run.

여기서, 상기 구동 환경을 변경하는 단계는 상기 적어도 하나의 가상 단말의 가상 환경에 대한 변경을 유발하는 미리 정의된 상황 정보 및 상기 상황 정보에 상응하는 가상 환경을 대응시켜 저장한 미리 정의된 가상 환경 변경 규칙에 따라 상황 정보에 상응하는 관리 환경을 결정할 수 있다.In the changing of the driving environment, the predefined virtual environment change in which the predefined context information causing the change of the virtual environment of the at least one virtual terminal and the virtual environment corresponding to the context information are corresponded and stored. Based on the rules, the management environment corresponding to the situation information can be determined.

여기서, 상기 적어도 하나의 가상 머신은 동일한 운영 체제 또는 서로 다른 운영 체제를 가상으로 표현한 머신일 수 있다. Here, the at least one virtual machine may be a machine that virtually expresses the same operating system or different operating systems.

상기와 같은 본 발명에 따른 가상 환경 관리 방법 및 이를 이용한 단말 장치를 이용할 경우에는 가상화를 통해 가상의 스마트폰을 별도로 구동할 수 있으며, 스마트폰내의 서로 다른 가상 머신에서 응용 프로그램을 각각 구동할 수 있다. In the case of using the virtual environment management method and the terminal device using the same according to the present invention as described above, a virtual smartphone can be separately driven through virtualization, and an application program can be driven in different virtual machines in the smartphone. .

또한, 본 발명은 스마트폰내의 서로 다른 가상 머신에서 응용 프로그램이 각각 구동되기 때문에, 특정 가상 머신이 외부에서 침입을 받거나 공격을 당하는 경우에도 해당 가상 머신만 공격을 받을 뿐 동일한 하드웨어의 다른 가상 머신에는 전혀 영향이 미치지 않을 수 있다.In addition, in the present invention, since the applications are run in different virtual machines in the smartphone, even if a specific virtual machine is invaded or attacked from the outside, only the corresponding virtual machine is attacked, but the other virtual machine of the same hardware It may not have any effect at all.

또한, 본 발명은 상황 정보에 기초하여 상황 정보에 상응하는 가상 환경으로 가상 머신에의해 제공하는 구동 환경을 변경하기 때문에 사용자의 편의성을 극대화할 수 있다.In addition, the present invention changes the driving environment provided by the virtual machine to the virtual environment corresponding to the context information based on the context information, thereby maximizing user convenience.

도 1은 본 발명의 일 실시예에 따른 단말 장치의 구성을 나타내는 블록도이다.
도 2는 본 발명의 일 실시예에 따른 단말 장치의 하이퍼바이저의 구성을 나타내는 블록도이다.
도 3은 본 발명의 일 실시예에 따른 가상 환경 관리 방법을 설명하기 위한 흐름도이다.
도 4는 본 발명의 일 실시예에 따른 가상 환경 관리 과정의 예를 설명하기 위한 블럭도이다.
1 is a block diagram illustrating a configuration of a terminal device according to an embodiment of the present invention.
2 is a block diagram illustrating a configuration of a hypervisor of a terminal device according to an embodiment of the present invention.
3 is a flowchart illustrating a virtual environment management method according to an embodiment of the present invention.
4 is a block diagram illustrating an example of a virtual environment management process according to an embodiment of the present invention.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다. While the invention is susceptible to various modifications and alternative forms, specific embodiments thereof are shown by way of example in the drawings and will herein be described in detail. It should be understood, however, that the invention is not intended to be limited to the particular embodiments, but includes all modifications, equivalents, and alternatives falling within the spirit and scope of the invention. Like reference numerals are used for like elements in describing each drawing.

제1, 제2, A, B 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다. The terms first, second, A, B, etc. may be used to describe various elements, but the elements should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from another. For example, without departing from the scope of the present invention, the first component may be referred to as a second component, and similarly, the second component may also be referred to as a first component. And / or < / RTI > includes any combination of a plurality of related listed items or any of a plurality of related listed items.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. When a component is referred to as being "connected" or "connected" to another component, it may be directly connected to or connected to that other component, but it may be understood that other components may be present in between. Should be. On the other hand, when an element is referred to as being "directly connected" or "directly connected" to another element, it should be understood that there are no other elements in between.

본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terminology used herein is for the purpose of describing particular example embodiments only and is not intended to be limiting of the present invention. Singular expressions include plural expressions unless the context clearly indicates otherwise. In this application, the terms "comprise" or "have" are intended to indicate that there is a feature, number, step, operation, component, part, or combination thereof described in the specification, and one or more other features. It is to be understood that the present invention does not exclude the possibility of the presence or the addition of numbers, steps, operations, components, components, or a combination thereof.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art. Terms such as those defined in the commonly used dictionaries should be construed as having meanings consistent with the meanings in the context of the related art and shall not be construed in ideal or excessively formal meanings unless expressly defined in this application. Do not.

이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
Hereinafter, preferred embodiments according to the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 일 실시예에 따른 단말 장치의 구성을 나타내는 블록도이다.1 is a block diagram illustrating a configuration of a terminal device according to an embodiment of the present invention.

도 1을 참조하면, 단말 장치는 적어도 하나의 가상 머신(100_1, 100_2) 및 하이퍼바이저(200)를 포함하여 구성할 수 있으며, 하이퍼바이저(200)는 적어도 하나의 가상 머신(100_1, 100_2) 중 어느 하나의 가상 머신으로부터 상황 정보를 수신하여 상황 정보에 상응하는 가상 환경을 결정하고, 결정한 가상 환경으로 다른 하나의 가상 머신에 의해서 제공되는 구동 환경을 변경할 수 있다.Referring to FIG. 1, the terminal device may include at least one virtual machine 100_1 and 100_2 and a hypervisor 200, and the hypervisor 200 may include at least one virtual machine 100_1 and 100_2. The virtual environment corresponding to the context information may be determined by receiving context information from one virtual machine, and the driving environment provided by the other virtual machine may be changed to the determined virtual environment.

여기서, 적어도 하나의 가상 머신(100_1, 100_2)은 응용 프로그램을 실행시키는 모듈뿐만 아니라 무선으로 응용 프로그램을 다운로드 받을 수 있도록 해주며, 더 나아가 응용 프로그램의 수정을 가능하게 하는 동일한 운영체제 또는 서로 다른 운영체제를 가상화하여 생성된 가상 머신일 수 있으며, 운영체제는 예를 들어 리눅스(Linux), 윈도우(Window) 등을 포함할 수 있다.Here, the at least one virtual machine (100_1, 100_2) is not only a module for executing the application, but also to download the application wirelessly, furthermore, the same operating system or different operating systems that enable the modification of the application It may be a virtual machine created by virtualization, the operating system may include, for example, Linux (Linux), Windows (Window) and the like.

여기서, 적어도 하나의 가상 머신(100_1, 100_2)은 상황 정보를 센싱하는 센서를 포함할 수 있으며, 센싱한 상황 정보를 하이퍼바이저(200)로 제공하는 상황 정보 전송부(미도시)를 포함할 수 있으며, 상황 정보 전송부는 애플리케이션 등이 될 수 있다.Here, the at least one virtual machine (100_1, 100_2) may include a sensor for sensing the context information, and may include a context information transmitter (not shown) for providing the sensed context information to the hypervisor 200. The situation information transmitter may be an application.

여기서, 하이퍼바이저(200)는 가상화 계층 상에 적어도 하나의 가상 머신(100_1, 100_2)을 생성하고, 물리적인 자원들이 각각의 가상 머신(100_1, 100_2)이라는 독립적인 동시에 개인화된 환경에서 동작할 수 있도록 한다. Here, the hypervisor 200 may create at least one virtual machine 100_1, 100_2 on the virtualization layer, and may operate in an independent and personalized environment in which physical resources are each virtual machine 100_1, 100_2. Make sure

여기서, 적어도 하나의 가상 머신(100_1, 100_2)을 동작할 수 있게 하는 장치로 가상 플랫폼 혹은 가상 머신 모니터라고 불리며, Xen, KVM(Keyboard Video Mouse) 등이 될 수 있다.Here, the device that can operate the at least one virtual machine (100_1, 100_2) is called a virtual platform or a virtual machine monitor, it may be Xen, KVM (Keyboard Video Mouse).

적어도 하나의 가상 머신(100_1, 100_2)은 정보를 센싱하고, 센싱한 상황 정보가 미리 정의된 가상 환경 변경에 해당하는 상황 정보인지 판단하고, 판단 결과에 따라 상황 정보를 하이퍼바이저(200)로 제공할 수 있다.The at least one virtual machine 100_1 or 100_2 senses the information, determines whether the sensed situation information corresponds to a predefined virtual environment change, and provides the situation information to the hypervisor 200 according to the determination result. can do.

예를 들어, 적어도 하나의 가상 머신(100_1, 100_2) 중 제 1 가상 머신(100_1)이 정지 상태 또는 종료 상태이고, 제 2 가상 머신(100_2)이 실행 상태일 경우, 제 2 가상 머신(100_2)은 상황 정보를 센싱하고, 센싱한 상황 정보가 미리 정의된 가상 환경 변경에 해당하는 상황 정보인지 판단하고, 판단 결과에 따라 상황 정보를 하이퍼바이저(200)로 제공할 수 있다.For example, when the first virtual machine 100_1 of the at least one virtual machine 100_1 or 100_2 is in the stopped state or the terminated state, and the second virtual machine 100_2 is in the running state, the second virtual machine 100_2 may be used. The sensor may sense the context information, determine whether the sensed context information corresponds to a predefined virtual environment change, and provide the context information to the hypervisor 200 according to the determination result.

하이퍼바이저(200)는 적어도 하나의 가상 머신(100_1, 100_2) 중 어느 하나의 가상 머신으로부터 상황 정보를 제공받고, 제공받은 상황 정보에 상응하는 가상 환경을 결정하고, 결정한 가상 환경으로 적어도 하나의 가상 머신(100_1, 100_2)에 의해서 제공되는 구동 환경을 변경할 수 있다.The hypervisor 200 receives context information from one of the at least one virtual machine 100_1 or 100_2, determines a virtual environment corresponding to the provided context information, and determines the at least one virtual environment as the determined virtual environment. The driving environment provided by the machines 100_1 and 100_2 can be changed.

하이퍼바이저(200)는 적어도 하나의 가상 머신(100_1, 100_2)에 의해서 제공되는 구동 환경을 변경하기 위해서, 적어도 하나의 가상 머신(100_1, 100_2) 중 어느 하나의 상태를 정지 상태 또는 종료 상태로 변경시키고, 다른 하나의 가상 머신의 상태를 실행 상태로 변경할 수 있다.The hypervisor 200 changes the state of any one of the at least one virtual machine 100_1, 100_2 to the stopped state or the terminated state in order to change the driving environment provided by the at least one virtual machine 100_1, 100_2. You can change the state of one virtual machine to the running state.

예를 들어, 하이퍼바이저(200)는 적어도 하나의 가상 머신(100_1, 100_2)에 의해서 제공되는 구동 환경을 변경하기 위해서, 적어도 하나의 가상 머신(100_1, 100_2) 중 제 1 가상 머신(100_1)의 상태를 정지 상태 또는 종료 상태로 변경시키고, 제 2 가상 머신(100_2)의 상태를 실행 상태로 변경할 수 있다.For example, the hypervisor 200 may change the driving environment provided by the at least one virtual machine 100_1, 100_2 of the first virtual machine 100_1 of the at least one virtual machine 100_1, 100_2. The state may be changed to the stopped state or the terminated state, and the state of the second virtual machine 100_2 may be changed to the run state.

여기서, 하이퍼바이저(200)는 적어도 하나의 가상 머신(100_1, 100_2)에 의해서 제공되는 구동 환경을 변경하기 위해서, 체크포인팅(checkpoint) 방식으로 제 1 가상 머신(100_1)의 상태를 하드디스크에 저장하거나 메모리에 그대로 상주시킨 채 실행을 차단하고, 제 2 가상 머신(100_2)의 상태를 실행 상태로 변경할 수 있다.Here, the hypervisor 200 stores the state of the first virtual machine 100_1 on the hard disk in a checkpointing manner in order to change the driving environment provided by the at least one virtual machine 100_1, 100_2. Alternatively, execution may be interrupted while remaining in memory, and the state of the second virtual machine 100_2 may be changed to the execution state.

여기서, 하이퍼바이저(200)는 적어도 하나의 가상 머신(100_1, 100_2)에 의해서 제공되는 구동 환경을 변경하기 위해서, 제 1 가상 머신(100_1)의 상태를 종료 상태로 변경시키고, 메모리에 상주된 제 2 가상 머신(100_1)을 실행하여 제 2 가상 머신(100_1)의 상태를 실행 상태로 변경할 수 있다.
Herein, the hypervisor 200 changes the state of the first virtual machine 100_1 to the end state in order to change the driving environment provided by the at least one virtual machine 100_1 or 100_2, and stores the first resident in the memory. The state of the second virtual machine 100_1 may be changed to an execution state by executing the second virtual machine 100_1.

도 2는 본 발명의 일 실시예에 따른 단말 장치의 하이퍼바이저의 구성을 나타내는 블록도이다.2 is a block diagram illustrating a configuration of a hypervisor of a terminal device according to an embodiment of the present invention.

도 2를 참조하면, 하이퍼바이저(200)는 상황 정보 수신부(210), 가상 환경 결정부(220) 및 가상 환경 변경부(230)를 포함하여 구성될 수 있다.Referring to FIG. 2, the hypervisor 200 may include a context information receiver 210, a virtual environment determiner 220, and a virtual environment changer 230.

상황 정보 수신부(210)는 적어도 하나의 가상 머신(100_1, 100_2) 중 어느 하나의 가상 머신으로부터 가상 환경에 대한 변경을 유발하는 상황 정보를 수신하고, 수신한 상황 정보를 가상 환경 결정부(220)로 제공할 수 있다.The contextual information receiver 210 receives contextual information causing a change to a virtual environment from one of the at least one virtual machine 100_1 or 100_2 and converts the received contextual information into a virtual environment determiner 220. Can be provided as

가상 환경 결정부(220)는 상황 정보 수신부(210)로부터 상황 정보를 수신하고, 수신한 상황 정보에 상응하는 가상 환경을 결정할 수 있다. The virtual environment determiner 220 may receive context information from the context information receiver 210 and determine a virtual environment corresponding to the received context information.

예를 들어, 가상 환경 결정부(220)는 적어도 하나의 가상 머신(100_1, 100_2)에 의해서 제공되는 구동 환경의 변경을 유발하는 미리 정의된 상황 정보 및 상황 정보에 상응하는 가상 환경을 대응시켜 저장한 미리 정의된 가상 환경 변경 규칙에 따라 상황 정보에 상응하는 가상 환경을 결정할 수 있다.For example, the virtual environment determiner 220 may correspond to and store the predefined context information and the context information corresponding to the predefined context information causing the change of the driving environment provided by the at least one virtual machine 100_1 or 100_2. One predefined virtual environment change rule may determine the virtual environment corresponding to the context information.

가상 환경 변경부(230)는 적어도 하나의 가상 머신(100_1, 100_2)에 의해서 제공되는 구동 환경을 변경하기 위해서, 적어도 하나의 가상 머신(100_1, 100_2) 중 어느 하나의 가상 머신의 상태를 정지 상태 또는 종료 상태로 변경하고, 다른 하나의 가상 머신의 상태를 새롭게 실행할 수 있다.The virtual environment changing unit 230 stops the state of any one of the at least one virtual machine 100_1, 100_2 to change the driving environment provided by the at least one virtual machine 100_1, 100_2. Alternatively, you can change it to the exit state and execute a new state of another virtual machine.

예를 들어, 제 1 가상 머신(100_1)이 상황 정보를 하이버파이저(200)로 제공하고, 하이퍼바이저(200)가 상황 정보에 상응하는 가상 환경으로 제 2 가상 머신(100_2)에 의해서 제공되는 구동 환경을 변경하려고 하는 경우, 가상 환경 변경부(230)는 적어도 하나의 가상 머신(100_1, 100_2) 중 제 1 가상 머신(100_1)의 상태를 정지 상태 또는 종료 상태 중 어느 하나의 상태로 변경하고, 제 2 가상 머신(100_2)의 상태를 실행 상태로 변경할 수 있다.
For example, the first virtual machine 100_1 provides context information to the hiberfuser 200, and the hypervisor 200 is provided by the second virtual machine 100_2 in a virtual environment corresponding to the context information. When the driving environment is to be changed, the virtual environment changing unit 230 may change the state of the first virtual machine 100_1 among the at least one virtual machine 100_1 or 100_2 to either a stationary state or an end state. The state of the second virtual machine 100_2 may be changed to an execution state.

도 3은 본 발명의 일 실시예에 따른 가상 환경 관리 방법을 설명하기 위한 흐름도이다.3 is a flowchart illustrating a virtual environment management method according to an embodiment of the present invention.

도 3을 참조하면, 단말 장치는 상황 정보를 센싱한다(S310). 단말 장치는 센싱한 상황 정보가 미리 정의된 가상 환경에 대한 변경을 유발하는 상황 정보인지 판단한다(S320). Referring to FIG. 3, the terminal device senses context information (S310). The terminal device determines whether the sensed context information is context information causing a change to a predefined virtual environment (S320).

만약, 단말 장치는 센싱한 상황 정보가 미리 정의된 가상 환경에 대한 변경을 유발하는 상황 정보로 판단되면(S320), 상황 정보에 상응하는 가상 환경이 존재하는지 판단한다(S330). If it is determined that the sensed context information is context information causing a change to a predefined virtual environment (S320), the terminal device determines whether a virtual environment corresponding to the context information exists (S330).

한편, 단말 장치는 센싱한 상황 정보가 미리 정의된 가상 환경에 대한 변경을 유발하지 않는 상황 정보로 판단되면(S320), 가상 환경에 대한 변경을 유발하는 상황 정보를 계속하여 센싱하도록 한다(S310).On the other hand, if it is determined that the sensed context information does not cause a change to a predefined virtual environment (S320), the terminal device continues to sense the context information causing a change to the virtual environment (S310). .

단말 장치는 상황 정보에 상응하는 가상 환경이 존재한다고 판단되면(S330), 가상 머신에 의해서 제공되는 구동 환경을 상황 정보에 상응하는 가상 환경으로 변경한다(S340). If it is determined that the virtual environment corresponding to the context information exists (S330), the terminal device changes the driving environment provided by the virtual machine to a virtual environment corresponding to the context information (S340).

한편, 단말 장치는 상황 정보에 상응하는 가상 환경이 존재하지 않는다고 판단되면(S330), 가상 환경에 대한 변경을 유발하는 상황 정보를 계속하여 센싱하도록 한다(S310).
On the other hand, if it is determined that the virtual environment corresponding to the context information does not exist (S330), the terminal device continuously senses the context information causing the change to the virtual environment (S310).

도 4는 본 발명의 일 실시예에 따른 가상 환경 관리 과정의 예를 설명하기 위한 블럭도이다.4 is a block diagram illustrating an example of a virtual environment management process according to an embodiment of the present invention.

도 4를 참조하면, 단말 장치는 적어도 하나의 가상 머신(400_1, 400_2) 및 하이퍼바이저(200)를 포함하여 구성될 수 있다. 여기서, 도 4의 일 실시예에서는 적어도 하나의 가상 머신(400_1, 400_2) 중 하나의 가상 머신을 일반용 머신(400_1)으로 다른 하나의 가상 머신을 업무용 머신(400_2)으로 사용하는 경우에 가상 환경 관리 하는 과정을 설명하기로 한다.Referring to FIG. 4, the terminal device may include at least one virtual machine 400_1 or 400_2 and a hypervisor 200. Here, in the exemplary embodiment of FIG. 4, the virtual environment management is performed when one virtual machine among at least one virtual machine 400_1 and 400_2 is used as the general-purpose machine 400_1 and the other virtual machine is used as the work machine 400_2. The process of doing so will be explained.

여기서, 일반용 머신(400_1)은 모든 인터넷 접근이 가능하도록 설정되어 있고, 일반용 머신(400_1) 상에서 실행 가능한 프로그램은 일반적으로 사용 가능한 프로그램, 예를 들어 인터넷 익스플로러, 메신저 프로그램 등이 될 수 있다.Here, the general-purpose machine 400_1 is set to allow all Internet access, and the program executable on the general-purpose machine 400_1 may be a generally available program, for example, an Internet explorer, a messenger program, and the like.

여기서, 업무용 머신(400_2)는 인터넷 접근이 불가능하도록 설정되어 있고, 업무용 머신(400_2)상에서 실행 가능한 프로그램은 업무적으로 필요한 프로그램, 예를 들어 업무용 전산 관리 시스템 등이 될 수 있다. Here, the work machine 400_2 is set to be unable to access the Internet, and the program executable on the work machine 400_2 may be a program necessary for work, for example, a work computer management system.

적어도 하나의 가상 머신(400_1, 400_2) 중 어느 하나의 가상 머신은 상황 정보를 센싱할 수 있다.Any one of the at least one virtual machine 400_1 or 400_2 may sense contextual information.

예를 들어, 적어도 하나의 가상 머신(100_1, 100_2) 중 일반용 머신(400_1)의 상태가 실행 상태이고, 업무용 머신(400_2)의 상태가 종료 상태 또는 정지 상태일 경우, 일반용 머신(400_1)은 상황 정보를 "오전 9시"로 센싱할 수 있다. For example, when the state of the general-purpose machine 400_1 among the at least one virtual machine 100_1 and 100_2 is in the running state, and the state of the work machine 400_2 is in the end state or the stopped state, the general-purpose machine 400_1 is in a situation. Information can be sensed as "9 AM."

적어도 하나의 가상 머신(400_1, 400_2) 중 어느 하나의 가상 머신은 센싱한 상황 정보가 미리 정의된 가상 머신 변경에 해당하는 상황 정보인지 판단하고, 판단 결과에 따라 상황 정보를 하이퍼바이저(200)로 제공할 수 있다.Any one of the at least one virtual machine 400_1 or 400_2 determines whether the sensed situation information is context information corresponding to a predefined virtual machine change, and sends the context information to the hypervisor 200 according to the determination result. Can provide.

예를 들어, 적어도 하나의 가상 머신(400_1, 400_2) 중 어느 하나의 가상 머신은 센싱한 상황 정보인“오전 9시”가 미리 정의된 상황 정보로 판단한 경우, 센싱한 상황 정보인“오전 9시”를 하이퍼바이저(200)로 제공할 수 있다. 여기서, 적어도 하나의 가상 머신(400_1, 400_2) 중 어느 하나의 가상 머신이 센싱한 상황 정보는 현재 시간뿐만 아니라, 현재 위치 및 네트워크 접속 여부 등이 될 수 있다. For example, when one of the at least one virtual machine 400_1 or 400_2 determines that the situation information “9 am” that is sensed is determined to be predefined situation information, the state information that is sensed is “9 am”. May be provided to the hypervisor 200. Here, the status information sensed by one of the at least one virtual machine 400_1 or 400_2 may be not only the current time but also the current location and whether the network is connected.

하이퍼바이저(200)는 적어도 하나의 가상 머신(400_1, 400_2) 중 어느 하나의 가상 머신으로부터 상황 정보를 제공받고, 제공받은 상황 정보에 상응하는 가상 환경을 결정할 수 있다.The hypervisor 200 may receive context information from any one of at least one virtual machine 400_1 or 400_2 and determine a virtual environment corresponding to the provided context information.

예를 들어, 하이퍼바이저(200)는 일반용 머신(400_1)으로부터 센싱한 상황 정보인 “오전 9시”를 제공받고, 제공받은 “오전 9시”에 상응하는 가상 환경을 “업무 시작”으로 결정할 수 있다. For example, the hypervisor 200 may receive “9:00 AM”, the context information sensed by the general-purpose machine 400_1, and determine a virtual environment corresponding to the “9:00 AM” provided as “start of work”. have.

또한, 하이퍼바이저(200)는 제공받은 상황 정보를 기초로 하여 결정한 가상 환경으로 적어도 하나의 가상 머신(400_1, 400_2)에 의해서 제공되는 구동 환경을 변경할 수 있다. 이를 위해, 하이퍼바이저(200)는 적어도 하나의 가상 머신 중 적어도 일부의 가상 머신의 상태를 종료 상태 또는 정지 상태로 변경시키고, 적어도 일부의 가상 머신의 상태를 실행 상태로 변경하여 적어도 하나의 가상 머신에 의해서 제공되는 구동 환경을 변경할 수 있다.In addition, the hypervisor 200 may change the driving environment provided by the at least one virtual machine 400_1 or 400_2 to the virtual environment determined based on the provided situation information. To this end, the hypervisor 200 changes the state of at least some of the at least one virtual machine to an end state or a stopped state, and changes the state of the at least some virtual machines to a running state to at least one virtual machine. It is possible to change the driving environment provided by.

예를 들어, 하이퍼바이저(200)는 일반용 머신(400_1)으로부터 제공받은 상황 정보를 기초로하여 결정한 가상 환경인 “업무 시작”으로 적어도 하나의 가상 머신(400_1, 400_2)에 의해서 제공되는 구동 환경을 변경하기 위해서, 일반용 머신(400_1)의 상태를 종료 상태 또는 정지 상태로 변경하고, 업무용 머신(400_2)의 상태를 실행 상태로 변경하여 적어도 하나의 가상 머신에 의해서 제공되는 구동 환경을 변경할 수 있다.
For example, the hypervisor 200 may define a driving environment provided by at least one virtual machine 400_1 or 400_2 as a “start of business” that is a virtual environment determined based on situation information provided from a general-purpose machine 400_1. In order to change, the driving environment provided by the at least one virtual machine may be changed by changing the state of the general-purpose machine 400_1 to the end state or the stopped state, and changing the state of the work machine 400_2 to the running state.

상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
It will be apparent to those skilled in the art that various modifications and variations can be made in the present invention without departing from the spirit or scope of the present invention as defined by the following claims It can be understood that

100_1: 제 1 가상 머신 100_2: 제 2 가상 머신
200: 하이퍼바이저 210: 상황 정보 수신부
220: 가상 환경 결정부 230: 가상 환경 변경부
400_1: 일반용 머신 400_2: 업무용 머신
100_1: First virtual machine 100_2: Second virtual machine
200: hypervisor 210: situation information receiving unit
220: virtual environment determination unit 230: virtual environment change unit
400_1: General Purpose Machine 400_2: Business Machine

Claims (10)

적어도 하나의 가상 머신과 상기 적어도 하나의 가상 머신을 관리하는 하이퍼바이저로 구성된 단말 장치에 있어서,
상황 정보를 수신하고, 상기 수신한 상황 정보가 미리 정의된 가상 환경에 대한 변경을 유발하는 상황 정보로 판단되는 경우 상기 수신한 상황 정보를 하이퍼바이저로 제공하는 적어도 하나의 가상 머신; 및
상기 수신한 상황 정보에 상응하는 가상 환경을 결정하고, 상기 결정한 가상 환경으로 상기 적어도 하나의 가상 머신에 의해서 제공되는 구동 환경을 변경하는 하이퍼바이저를 포함하는 단말 장치.
A terminal device comprising at least one virtual machine and a hypervisor managing the at least one virtual machine,
At least one virtual machine that receives context information and provides the received context information to a hypervisor when it is determined that the received context information is context information causing a change to a predefined virtual environment; And
And a hypervisor configured to determine a virtual environment corresponding to the received situation information and to change a driving environment provided by the at least one virtual machine to the determined virtual environment.
제 1 항에 있어서, 상기 하이퍼바이저는,
상기 적어도 하나의 가상 머신이 갖는 각각의 상태를 실행 상태, 정지 상태 및 종료 상태 중 어느 하나의 상태로 변경하는 것을 특징으로 하는 단말 장치.
The method of claim 1, wherein the hypervisor,
And changing a state of each of the at least one virtual machine into one of a running state, a stopped state, and an end state.
제 2 항에 있어서,
상기 하이퍼바이저는, 상기 적어도 하나의 가상 머신에 의해서 제공되는 구동 환경을 변경하기 위해서, 상기 적어도 하나의 가상 머신 중 적어도 일부의 가상 머신의 상태를 종료 상태 또는 정지 상태로 변경시키고, 적어도 일부의 가상 머신의 상태를 실행 상태로 변경하는 것을 특징으로 단말 장치.
3. The method of claim 2,
The hypervisor changes the state of at least some of the at least one of the at least one virtual machines to an end state or a stopped state to change the driving environment provided by the at least one virtual machine, and at least some of the virtual A terminal apparatus, characterized by changing a state of a machine to an execution state.
제 1 항에 있어서, 상기 하이퍼바이저는,
상기 적어도 하나의 가상 단말의 가상 환경에 대한 변경을 유발하는 미리 정의된 상황 정보 및 상기 상황 정보에 상응하는 가상 환경을 대응시켜 저장한 미리 정의된 가상 환경 변경 규칙에 따라 상황 정보에 상응하는 가상 환경을 결정하는 것을 특징으로 하는 단말 장치.
The method of claim 1, wherein the hypervisor,
The virtual environment corresponding to the context information according to the predefined context information change rule stored in correspondence with the predefined context information causing the change to the virtual environment of the at least one virtual terminal and the virtual environment corresponding to the context information. Terminal device, characterized in that for determining.
제 1 항에 있어서, 상기 적어도 하나의 가상 머신은,
동일한 운영 체제 또는 서로 다른 운영 체제를 가상으로 표현한 머신인 것을 특징으로 하는 단말 장치.
The method of claim 1, wherein the at least one virtual machine,
Terminal device, characterized in that the virtual machine representing the same operating system or different operating systems.
단말 장치에서 동작하는 가상 환경 관리 방법에 있어서,
상황 정보를 수신하고, 상기 수신한 상황 정보가 미리 정의된 가상 환경에 대한 변경을 유발하는 상황 정보인지 판단하는 단계; 및
상기 판단 결과에 따라 상기 상황 정보에 상응하는 가상 환경을 결정하고, 상기 결정한 가상 환경으로 상기 적어도 하나의 가상 머신에 의해서 제공되는 구동 환경을 변경하는 단계를 포함하는 가상 환경 관리 방법.
In the virtual environment management method operating in a terminal device,
Receiving context information and determining whether the received context information is context information causing a change to a predefined virtual environment; And
And determining a virtual environment corresponding to the situation information according to a result of the determination, and changing the driving environment provided by the at least one virtual machine to the determined virtual environment.
제 6 항에 있어서, 상기 구동 환경을 변경하는 단계는,
상기 적어도 하나의 가상 머신이 갖는 각각의 상태를 실행 상태, 정지 상태 및 종료 상태 중 어느 하나의 상태로 변경하는 것을 특징으로 하는 가상 환경 관리 방법.
The method of claim 6, wherein the changing of the driving environment comprises:
And changing each state of the at least one virtual machine to any one of a running state, a stopped state, and an end state.
제 6 항에 있어서, 상기 구동 환경을 변경하는 단계는,
상기 적어도 하나의 가상 머신에 의해서 제공되는 구동 환경을 변경하기 위해서, 상기 적어도 하나의 가상 머신 중 적어도 일부의 가상 머신의 상태를 종료 상태 또는 정지 상태로 변경시키고, 적어도 일부의 가상 머신의 상태를 실행 상태로 변경하는 것을 특징으로 가상 환경 관리 방법.
The method of claim 6, wherein the changing of the driving environment comprises:
In order to change the driving environment provided by the at least one virtual machine, the state of at least some of the at least one virtual machine is changed to an end state or a stopped state, and the state of at least some virtual machines is executed. Virtual environment management method characterized by changing to a state.
제 6 항에 있어서, 상기 구동 환경을 변경하는 단계는,
상기 적어도 하나의 가상 단말의 가상 환경에 대한 변경을 유발하는 미리 정의된 상황 정보 및 상기 상황 정보에 상응하는 가상 환경을 대응시켜 저장한 미리 정의된 가상 환경 변경 규칙에 따라 상황 정보에 상응하는 관리 환경을 결정하는 것을 특징으로 하는 단말의 가상 환경 관리 방법.
The method of claim 6, wherein the changing of the driving environment comprises:
The management environment corresponding to the situation information according to the predefined context information change rule stored in correspondence with the predefined situation information causing the change to the virtual environment of the at least one virtual terminal and the virtual environment corresponding to the situation information. Virtual environment management method of the terminal, characterized in that for determining.
제 6 항에 있어서, 상기 적어도 하나의 가상 머신은,
동일한 운영 체제 또는 서로 다른 운영 체제를 가상으로 표현한 머신인 것을 특징으로 하는 가상 환경 관리 방법.
The method of claim 6, wherein the at least one virtual machine,
The virtual environment management method, characterized in that the virtual machine representing the same operating system or different operating systems.
KR1020110134143A 2011-12-14 2011-12-14 Method of changing operation environment and apparatus for the same KR101326908B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110134143A KR101326908B1 (en) 2011-12-14 2011-12-14 Method of changing operation environment and apparatus for the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110134143A KR101326908B1 (en) 2011-12-14 2011-12-14 Method of changing operation environment and apparatus for the same

Publications (2)

Publication Number Publication Date
KR20130067526A true KR20130067526A (en) 2013-06-25
KR101326908B1 KR101326908B1 (en) 2013-11-11

Family

ID=48863333

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110134143A KR101326908B1 (en) 2011-12-14 2011-12-14 Method of changing operation environment and apparatus for the same

Country Status (1)

Country Link
KR (1) KR101326908B1 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160062262A (en) * 2014-11-24 2016-06-02 현대엠엔소프트 주식회사 Method for transmitting data to external device and apparatus thereof
US20170371700A1 (en) * 2015-07-03 2017-12-28 Huawei Technologies Co., Ltd. Method and Apparatus for Managing Virtual Execution Environments Using Contextual Information Fragments
KR20190120981A (en) * 2018-04-17 2019-10-25 (주)블루커뮤니케이션 Apparatus for direct remote control of physical device
KR20210033331A (en) * 2019-09-18 2021-03-26 주식회사 케이티 Virtual mobile system and method for providing virtual mobile service

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101714522B1 (en) 2015-11-10 2017-03-09 현대자동차주식회사 Method and apparatus for providing linking service between vehicle audio video nevigation and smartphone based on virtualization framework

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9069596B2 (en) * 2009-11-17 2015-06-30 International Business Machines Corporation Hypervisor file system
KR101104264B1 (en) * 2010-04-30 2012-01-11 주식회사 넥스알 Power supply maintain method of self-regulating server AND self-regulating server to dynamic formation is possible of virtual machine
KR101251187B1 (en) * 2010-05-10 2013-04-08 삼성에스디에스 주식회사 Server-based computing system and method of security management the same

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160062262A (en) * 2014-11-24 2016-06-02 현대엠엔소프트 주식회사 Method for transmitting data to external device and apparatus thereof
US20170371700A1 (en) * 2015-07-03 2017-12-28 Huawei Technologies Co., Ltd. Method and Apparatus for Managing Virtual Execution Environments Using Contextual Information Fragments
KR20190120981A (en) * 2018-04-17 2019-10-25 (주)블루커뮤니케이션 Apparatus for direct remote control of physical device
US11422841B2 (en) 2018-04-17 2022-08-23 Bluecommunication Direct and remote control apparatus of physical device
KR20210033331A (en) * 2019-09-18 2021-03-26 주식회사 케이티 Virtual mobile system and method for providing virtual mobile service

Also Published As

Publication number Publication date
KR101326908B1 (en) 2013-11-11

Similar Documents

Publication Publication Date Title
JP6826586B2 (en) Dependency-based container deployment methods, systems, and programs
US9747121B2 (en) Performance optimization of workloads in virtualized information handling systems
KR101399161B1 (en) System and method for initiating a multi-environment operating system
US9304794B2 (en) Virtual machine control method and virtual machine system using prefetch information
US9367331B2 (en) Multi-environment operating system
US9389877B2 (en) Multi-environment operating system
US8745619B2 (en) Computer system and recording medium
US8904159B2 (en) Methods and systems for enabling control to a hypervisor in a cloud computing environment
US20090007112A1 (en) Method for controlling a virtual machine and a virtual machine system
CN104516782B (en) Method and equipment for switching operating environments of intelligent system
US20070011444A1 (en) Method, apparatus and system for bundling virtualized and non-virtualized components in a single binary
US10540498B2 (en) Technologies for hardware assisted native malware detection
KR101326908B1 (en) Method of changing operation environment and apparatus for the same
US10235235B2 (en) Modular system awareness in virtualized information handling systems
US8863120B2 (en) Launching a software application in a virtual environment
KR101776042B1 (en) Apparatus for supporting multiple operating system in terminal and operating system conversion method thereof
US9164788B2 (en) Apparatus and method for automatic para-virtualization of OS kernel
KR20140027741A (en) Application service providing system and method, server apparatus and client apparatus for application service
KR101468179B1 (en) Method for changing virtual environment in cloud computuing and terminal equipment using the same
US10025580B2 (en) Systems and methods for supporting multiple operating system versions
US10185572B2 (en) Operating system load device resource selection
EP3812898A2 (en) Container-based method for application startup
WO2011011368A2 (en) Multi-environment operating system
US20090271785A1 (en) Information processing apparatus and control method
US9870246B2 (en) Systems and methods for defining virtual machine dependency mapping

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee