JP2014119789A - Function use control device, function use control method, and function use control program - Google Patents

Function use control device, function use control method, and function use control program Download PDF

Info

Publication number
JP2014119789A
JP2014119789A JP2012272213A JP2012272213A JP2014119789A JP 2014119789 A JP2014119789 A JP 2014119789A JP 2012272213 A JP2012272213 A JP 2012272213A JP 2012272213 A JP2012272213 A JP 2012272213A JP 2014119789 A JP2014119789 A JP 2014119789A
Authority
JP
Japan
Prior art keywords
virtual machine
function
unit
availability
external function
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
JP2012272213A
Other languages
Japanese (ja)
Other versions
JP6043615B2 (en
Inventor
Yasumasa Hirai
康雅 平井
Naohisa Ichihara
尚久 市原
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NTT Data Group Corp
Original Assignee
NTT Data Corp
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 NTT Data Corp filed Critical NTT Data Corp
Priority to JP2012272213A priority Critical patent/JP6043615B2/en
Publication of JP2014119789A publication Critical patent/JP2014119789A/en
Application granted granted Critical
Publication of JP6043615B2 publication Critical patent/JP6043615B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

PROBLEM TO BE SOLVED: To operate a virtual machine within a range corresponding to a use purpose.SOLUTION: A function use control device comprises: a virtualization unit which virtualizes a physical machine to operate a virtual machine; a monitoring unit which monitors a predetermined operation state of the physical machine or the virtual machine; and use propriety control unit which controls use propriety for the virtual machine to use an external function of the virtual machine according to the predetermined operation state monitored by the monitoring unit.

Description

本発明は、仮想マシンからの外部機能の利用を制御する技術に関する。   The present invention relates to a technique for controlling use of an external function from a virtual machine.

物理マシンのコンピュータリソースを仮想化して仮想マシンを動作させる仮想化技術が研究されている。このような仮想マシンは、その仮想マシンにとっては外部機能である物理マシンの各種デバイス(例えば、通信デバイス、入出力デバイス、記憶デバイス等)を利用することができる。例えば、特許文献1には、このような仮想マシンから、物理マシンが備えるネットワークデバイスを利用する技術が記載されている。あるいは、同一の物理マシン上に複数の仮想マシンを起動して動作させ、その仮想マシン間で通信を行わせることもできる。この場合、仮想マシンは、その仮想マシンにとっての外部機能である仮想的なLAN(Local Area Network)を介して、同一物理マシン上において動作する他の仮想マシンに接続する。   Research has been conducted on virtualization technology that virtualizes computer resources of a physical machine and operates the virtual machine. Such a virtual machine can use various devices (for example, a communication device, an input / output device, a storage device, etc.) of a physical machine that are external functions for the virtual machine. For example, Patent Document 1 describes a technique of using a network device included in a physical machine from such a virtual machine. Alternatively, a plurality of virtual machines can be activated and operated on the same physical machine, and communication can be performed between the virtual machines. In this case, the virtual machine is connected to another virtual machine operating on the same physical machine via a virtual local area network (LAN) that is an external function for the virtual machine.

特開2012−93917号公報JP 2012-93917 A

しかしながら、このような仮想マシンが、物理マシンの各種デバイスや同一物理マシン上に動作する他の仮想マシン等の外部機能を利用する場合、その利用は仮想マシンの用途に沿った範囲、方法で行われることが望ましい。例えば、その物理マシンがスマートフォンのような、移動体通信網を介して通信可能な可搬端末である場合、移動体通信網から他の端末と通信ができない場合にのみ、物理マシン上に動作する仮想マシン間の通信を行わせたいようなことが考えられる。あるいは、例えば、仮想マシンの権限が乗っ取られたような場合(ルート化)には、外部機能の利用を禁止したいようなことが考えられる。   However, when such a virtual machine uses an external function such as various devices of the physical machine or other virtual machines operating on the same physical machine, the use is performed in a range and a method in accordance with the use of the virtual machine. It is desirable that For example, if the physical machine is a portable terminal that can communicate via a mobile communication network, such as a smartphone, it will only operate on the physical machine if it cannot communicate with other terminals from the mobile communication network You may want to make communication between virtual machines. Alternatively, for example, when the authority of the virtual machine is taken over (rooting), it may be desired to prohibit the use of external functions.

本発明は、このような状況に鑑みてなされたもので、用途に応じた範囲で仮想マシンを動作させる機能利用制御装置、機能利用制御方法、機能利用制御プログラムを提供する。   The present invention has been made in view of such a situation, and provides a function use control device, a function use control method, and a function use control program for operating a virtual machine in a range corresponding to an application.

上述した課題を解決するために、本発明の一態様は、物理マシンを仮想化して仮想マシンを動作させる仮想化部と、物理マシンまたは仮想マシンによる所定の動作状況を監視する監視部と、監視部が監視する所定の動作状況に応じて、仮想マシンによる仮想マシンの外部機能の利用可否を制御する利用可否制御部と、を備えることを特徴とする機能利用制御装置である。   In order to solve the above-described problem, an aspect of the present invention includes a virtualization unit that virtualizes a physical machine and operates the virtual machine, a monitoring unit that monitors a predetermined operation state of the physical machine or the virtual machine, and a monitoring A function usage control apparatus comprising: a availability control unit that controls availability of an external function of a virtual machine by a virtual machine according to a predetermined operation situation monitored by the unit.

また、本発明の一態様は、仮想化部が、第1の仮想マシンと、第2の仮想マシンとを物理マシン上に動作させ、第1の仮想マシンは、仮想化部に対して外部機能の利用要求を出力する外部機能利用制御部を備え、第2の仮想マシンは、外部機能の利用要求を第1の仮想マシンに出力する外部機能利用要求部を備え、利用可否制御部は、第2の仮想マシンの外部機能利用要求部から利用要求が出力されると、利用要求の利用可否を判定し、第1の仮想マシンの外部機能利用制御部は、利用可否制御部によって利用可と判定された場合、第2の仮想マシンの外部機能利用要求部から出力された利用要求を、仮想化部に出力することを特徴とする。   In one embodiment of the present invention, the virtualization unit causes the first virtual machine and the second virtual machine to operate on the physical machine, and the first virtual machine has an external function with respect to the virtualization unit. The second virtual machine includes an external function usage request unit that outputs an external function usage request to the first virtual machine, and the availability control unit includes When the use request is output from the external function use request unit of the second virtual machine, it is determined whether or not the use request can be used, and the external function use control unit of the first virtual machine is determined to be usable by the use control unit In such a case, the usage request output from the external function usage request unit of the second virtual machine is output to the virtualization unit.

また、本発明の一態様は、複数の外部機能ごとに、所定の動作状況に応じた外部機能の利用可否が対応付けられた条件テーブルが記憶される条件テーブル記憶部を備え、利用可否制御部は、条件テーブルに基づいて、仮想マシンによる外部機能の利用可否を制御することを特徴とする。   Further, one aspect of the present invention includes a condition table storage unit that stores a condition table in which availability of an external function according to a predetermined operation situation is associated with each of a plurality of external functions, and the availability control unit Is characterized by controlling whether or not the external function can be used by the virtual machine based on the condition table.

また、本発明の一態様は、複数の外部機能ごとに、外部機能の利用可否が対応付けられた制御テーブルが記憶される制御テーブル記憶部を備え、利用可否制御部は、監視部が監視する所定の動作状況に対応する外部機能の利用可否を条件テーブルから読み出して制御テーブルを更新し、更新した制御テーブルに基づいて外部機能の利用可否を制御することを特徴とする。   One embodiment of the present invention further includes a control table storage unit that stores a control table in which the availability of external functions is associated with each of a plurality of external functions, and the availability control unit is monitored by the monitoring unit. It is characterized in that the availability of an external function corresponding to a predetermined operation situation is read from the condition table, the control table is updated, and the availability of the external function is controlled based on the updated control table.

また、本発明の一態様は、外部機能ごとに、外部機能の利用可否の適用順序を示す順序テーブルが記憶される順序テーブル記憶部を備え、利用可否制御部は、順序テーブルに示される適用順序に基づいて、外部機能の利用可否を制御することを特徴とする。   One embodiment of the present invention further includes an order table storage unit that stores an order table indicating an application order of availability of external functions for each external function, and the availability control unit includes an application order indicated in the order table. Based on the above, whether to use an external function is controlled.

また、本発明の一態様は、機能利用制御装置が、物理マシンを仮想化して仮想マシンを動作させるステップと、物理マシンまたは仮想マシンによる所定の動作状況を監視するステップと、監視する所定の動作状況に応じて、仮想マシンによる仮想マシンの外部機能の利用可否を制御するステップと、を備えることを特徴とする機能利用制御方法である。   According to another aspect of the present invention, the function usage control device virtualizes a physical machine and operates the virtual machine, a step of monitoring a predetermined operation status of the physical machine or the virtual machine, and a predetermined operation to be monitored And a step of controlling whether or not the external function of the virtual machine can be used by the virtual machine according to the situation.

また、本発明の一態様は、機能利用制御装置のコンピュータに、物理マシンを仮想化して仮想マシンを動作させるステップと、物理マシンまたは仮想マシンによる所定の動作状況を監視するステップと、監視する所定の動作状況に応じて、仮想マシンによる仮想マシンの外部機能の利用可否を制御するステップと、を実行させる機能利用制御プログラムである。   According to another aspect of the present invention, a step of virtualizing a physical machine and operating a virtual machine in a computer of the function use control device, a step of monitoring a predetermined operation status of the physical machine or the virtual machine, and a predetermined monitoring And a step of controlling whether or not the external function of the virtual machine can be used by the virtual machine according to the operation status of the function.

以上説明したように、本発明によれば、機能利用制御装置が、物理マシンを仮想化して仮想マシンを動作させる仮想化部と、物理マシンまたは仮想マシンによる所定の動作状況を監視する監視部と、監視部が監視する所定の動作状況に応じて、仮想マシンによる仮想マシンの外部機能の利用可否を制御する利用可否制御部と、を備えるようにしたので、仮想マシンからの外部機能の利用を動的に制御し、用途に応じた範囲で仮想マシンを動作させることができる。   As described above, according to the present invention, the function usage control device virtualizes a physical machine and operates the virtual machine, and a monitoring unit that monitors a predetermined operation status of the physical machine or the virtual machine, The availability control unit for controlling the availability of the external function of the virtual machine according to the predetermined operation status monitored by the monitoring unit is provided. It is possible to dynamically control and operate a virtual machine in a range according to the application.

本発明の一実施形態による仮想マシン制御装置の構成を示すブロック図である。It is a block diagram which shows the structure of the virtual machine control apparatus by one Embodiment of this invention. 本発明の一実施形態による条件テーブルのデータ例を示す図である。It is a figure which shows the example of data of the condition table by one Embodiment of this invention. 本発明の一実施形態による制御テーブルのデータ例を示す図である。It is a figure which shows the example of data of the control table by one Embodiment of this invention. 本発明の一実施形態による順序テーブルのデータ例を示す図である。It is a figure which shows the example of data of the order table by one Embodiment of this invention. 本発明の一実施形態による仮想マシン制御装置の動作例を示すフローチャートである。It is a flowchart which shows the operation example of the virtual machine control apparatus by one Embodiment of this invention. 本発明の一実施形態による仮想マシン制御装置の実施例を示す概念図である。It is a conceptual diagram which shows the Example of the virtual machine control apparatus by one Embodiment of this invention. 本発明の一実施形態による条件テーブルのデータ例を示す図である。It is a figure which shows the example of data of the condition table by one Embodiment of this invention. 本発明の一実施形態による制御テーブルのデータ例を示す図である。It is a figure which shows the example of data of the control table by one Embodiment of this invention. 本発明の一実施形態によるスマートフォンの動作を説明する第1の図である。It is a 1st figure explaining operation | movement of the smart phone by one Embodiment of this invention. 本発明の一実施形態によるスマートフォンの動作を説明する第2の図である。It is a 2nd figure explaining operation | movement of the smart phone by one Embodiment of this invention. 本発明の一実施形態によるスマートフォンの動作を説明する第3の図である。It is a 3rd figure explaining operation | movement of the smart phone by one Embodiment of this invention. 本発明の一実施形態によるスマートフォンの動作を説明する第4の図である。It is a 4th figure explaining operation | movement of the smart phone by one Embodiment of this invention. 本発明の一実施形態によるスマートフォンの動作を説明する第5の図である。It is a 5th figure explaining operation | movement of the smart phone by one Embodiment of this invention. 本発明の一実施形態によるスマートフォンの動作を説明する第6の図である。It is a 6th figure explaining operation | movement of the smart phone by one Embodiment of this invention. 本発明の一実施形態によるスマートフォンの動作を説明する第7の図である。It is a 7th figure explaining operation | movement of the smart phone by one Embodiment of this invention. 本発明の一実施形態によるスマートフォンの動作を説明する第8の図である。It is an 8th figure explaining operation | movement of the smart phone by one Embodiment of this invention.

以下、本発明の一実施形態について、図面を参照して説明する。
図1は、本実施形態による仮想マシン制御装置100の構成を示すブロック図である。仮想マシン制御装置100は、PC(Personal computer)、タブレットPC、スマートフォン等のコンピュータ装置であり、物理マシンである。本実施形態では、仮想マシン制御装置100はスマートフォンであるとして説明する。仮想マシン制御装置100は、デバイス110−1、デバイス110−2、デバイス110−3、デバイス110−4、・・・と、仮想化部120と、管理OS130と、仮想マシン140−1、仮想マシン140−2、・・・とを備えており、仮想マシン140−1、仮想マシン140−2、・・・からの外部機能の利用を制御する機能利用制御装置である。
Hereinafter, an embodiment of the present invention will be described with reference to the drawings.
FIG. 1 is a block diagram showing the configuration of the virtual machine control device 100 according to this embodiment. The virtual machine control device 100 is a computer device such as a PC (Personal computer), a tablet PC, or a smartphone, and is a physical machine. In the present embodiment, the virtual machine control device 100 will be described as a smartphone. The virtual machine control device 100 includes a device 110-1, a device 110-2, a device 110-3, a device 110-4,..., A virtualization unit 120, a management OS 130, a virtual machine 140-1, and a virtual machine. 140-2,... Is a function use control device that controls the use of external functions from the virtual machine 140-1, the virtual machine 140-2,.

デバイス110−1、デバイス110−2、デバイス110−3、デバイス110−4、・・・等は同様の構成であるので、特に区別しない場合にはデバイス110として説明する。デバイス110は、物理マシンである仮想マシン制御装置100が備えるハードウェアデバイスであり、例えば、無線LANデバイス、移動通信網との通信デバイス、赤外線通信デバイス、IC通信デバイス、NFC(near field communication)デバイス、内部ストレージデバイス、メモリデバイス、タッチパネルデバイス、マイクデバイス、カメラデバイス、スピーカデバイス、USB(Universal Serial Bus)デバイス等が考えられる。   The device 110-1, the device 110-2, the device 110-3, the device 110-4,... Have the same configuration and will be described as the device 110 unless otherwise distinguished. The device 110 is a hardware device included in the virtual machine control apparatus 100 that is a physical machine, and includes, for example, a wireless LAN device, a communication device with a mobile communication network, an infrared communication device, an IC communication device, and an NFC (near field communication) device. An internal storage device, a memory device, a touch panel device, a microphone device, a camera device, a speaker device, a USB (Universal Serial Bus) device, and the like are conceivable.

仮想化部120は、物理マシンである仮想マシン制御装置100の各種デバイス110のハードウェアを仮想化し、仮想化したハードウェア上に仮想マシンを動作させるハイパーバイザである。本実施形態では、仮想化部120は、第1の仮想マシンである管理OS130と、第2の仮想マシンである仮想マシン140−1、仮想マシン140−2、・・・等とを物理マシン上に動作させる。仮想化部120は、仮想マシン制御装置100上に動作する管理OS130からの各種デバイスの利用要求に応じて、各種デバイス110を動作させるデバイスドライバであるネイティブデバイスドライバ(Native Device Driver)を備える。また、仮想化部120は、同一の仮想マシン制御装置100上に動作する複数の仮想マシン140間で通信を行わせる仮想的なLANの接続状態等を制御する。
管理OS130は、仮想化部120によって仮想化されたハードウェア上に動作する仮想マシンのひとつであり、他の仮想マシンを管理するための機能を備えるものである。
The virtualization unit 120 is a hypervisor that virtualizes the hardware of the various devices 110 of the virtual machine control apparatus 100 that is a physical machine and operates the virtual machine on the virtualized hardware. In the present embodiment, the virtualization unit 120 displays a management OS 130 that is a first virtual machine, a virtual machine 140-1 that is a second virtual machine, a virtual machine 140-2,... On a physical machine. To work. The virtualization unit 120 includes a native device driver that is a device driver that operates various devices 110 in response to requests for using various devices from the management OS 130 that operates on the virtual machine control apparatus 100. In addition, the virtualization unit 120 controls a connection state of a virtual LAN that allows communication between a plurality of virtual machines 140 operating on the same virtual machine control apparatus 100.
The management OS 130 is one of the virtual machines that operate on the hardware virtualized by the virtualization unit 120, and has a function for managing other virtual machines.

仮想マシン140−1、仮想マシン140−2、・・・は、仮想化部120によって仮想化されたハードウェア上に動作する仮想マシンである。ここでは2つの仮想マシンを図示して説明するが、仮想化部120には1つ、または3つ以上の仮想マシンが動作してもよい。仮想マシン140−1、仮想マシン140−2、・・・は同様の構成であるので、特に区別しない場合には仮想マシン140として説明する。仮想マシン140は、例えば、ユーザに利用される各種アプリケーションを起動し、実行する。仮想マシン140−1、仮想マシン140−2は、それぞれ外部機能利用要求部141−1、外部機能利用要求部141−2を備えている。外部機能利用要求部141−1、外部機能利用要求部141−2は同様の構成であるので、特に区別しない場合には外部機能利用要求部141として説明する。   The virtual machine 140-1, the virtual machine 140-2,... Are virtual machines that operate on the hardware virtualized by the virtualization unit 120. Although two virtual machines are illustrated and described here, one or three or more virtual machines may operate in the virtualization unit 120. Since the virtual machine 140-1, the virtual machine 140-2,... Have the same configuration, they will be described as the virtual machine 140 unless otherwise distinguished. For example, the virtual machine 140 starts and executes various applications used by the user. Each of the virtual machine 140-1 and the virtual machine 140-2 includes an external function use request unit 141-1 and an external function use request unit 141-2. Since the external function use request unit 141-1 and the external function use request unit 141-2 have the same configuration, the external function use request unit 141 will be described unless otherwise distinguished.

外部機能利用要求部141は、仮想マシン140が、仮想マシン140の外部機能を利用するための要求を出力する。仮想マシン140の外部機能とは、その仮想マシン140にとっての外部の機能部である各種デバイス110や、同一の仮想マシン制御装置100上に動作する他の仮想マシン140に接続するための仮想的なLAN等をいい、外部機能を利用するとは、これらの機能を利用することをいう。外部機能利用要求部141は、仮想マシンが備える仮想的なデバイスドライバである。外部機能利用要求部141が出力する外部機能の利用要求には、例えば、仮想マシン140がデバイス110である記憶デバイスにファイルをアクセスするためのコマンド(関数の呼び出し)や、他の物理マシンと他の仮想マシン140と通信するためのコマンド等が含まれる。ここで、外部機能利用要求部141は、常に、後述する管理OS130の外部機能利用制御部136に外部機能の利用要求を出力する。すなわち、管理OS130に対して出力した外部機能の利用要求が利用不可と判定されれば、仮想マシン140から外部機能を利用することはできない。   The external function use request unit 141 outputs a request for the virtual machine 140 to use the external function of the virtual machine 140. The external function of the virtual machine 140 is a virtual function for connecting to various devices 110 that are functional units external to the virtual machine 140 and other virtual machines 140 operating on the same virtual machine control apparatus 100. The term “LAN” means that an external function is used means that these functions are used. The external function use request unit 141 is a virtual device driver provided in the virtual machine. The external function use request output by the external function use request unit 141 includes, for example, a command (function call) for the virtual machine 140 to access a file to the storage device that is the device 110, other physical machines, and the like. Commands for communicating with the virtual machine 140 are included. Here, the external function use request unit 141 always outputs an external function use request to the external function use control unit 136 of the management OS 130 described later. That is, if it is determined that the use request for the external function output to the management OS 130 is not usable, the external function cannot be used from the virtual machine 140.

管理OS130は、条件テーブル記憶部131と、制御テーブル記憶部132と、順序テーブル記憶部133と、監視部134と、利用可否制御部135と、外部機能利用制御部136とを備えている。
条件テーブル記憶部131には、複数の外部機能ごとに、所定の動作状況に応じたその外部機能の利用可否が対応付けられた条件テーブルが記憶される。図2は、条件テーブル記憶部131に記憶される条件テーブルのデータ例を示す図である。「可」は利用可であることを示し、「否」は利用不可であることを示す。「−」は、その外部機能が制御対象外であることを示し、動作状況が変化しても、対応する外部機能の利用可否を変更しないことを示す。ここでは、例えば、移動通信網通信が不可である(移動通信網通信ができない)場合、デバイスA、デバイスCの外部機能を利用可とすることが示されている。
The management OS 130 includes a condition table storage unit 131, a control table storage unit 132, an order table storage unit 133, a monitoring unit 134, an availability control unit 135, and an external function usage control unit 136.
The condition table storage unit 131 stores a condition table in which availability of an external function corresponding to a predetermined operation situation is associated with each of a plurality of external functions. FIG. 2 is a diagram illustrating a data example of the condition table stored in the condition table storage unit 131. “Permitted” indicates that it can be used, and “No” indicates that it cannot be used. “-” Indicates that the external function is not controlled, and indicates that the availability of the corresponding external function is not changed even if the operation status changes. Here, for example, when mobile communication network communication is not possible (mobile communication network communication is not possible), it is indicated that the external functions of device A and device C can be used.

制御テーブル記憶部132には、複数の外部機能ごとに、その外部機能の利用可否が対応付けられた制御テーブルが記憶される。図3は、制御テーブル記憶部132に記憶される制御テーブルのデータ例を示す図である。ここでは、例えば、デバイスAは利用可であり、デバイスBは利用不可(否)であり、デバイスCは利用不可(否)であることが示されている。このような制御テーブルに示される情報に基づいて、後述する利用可否制御部135により仮想マシン140からの外部機能の利用が制御される。   The control table storage unit 132 stores a control table in which the availability of the external function is associated with each of the plurality of external functions. FIG. 3 is a diagram illustrating an example of control table data stored in the control table storage unit 132. Here, for example, device A is available, device B is unavailable (not), and device C is unavailable (not). Based on the information shown in such a control table, use of an external function from the virtual machine 140 is controlled by the availability control unit 135 described later.

順序テーブル記憶部133には、外部機能ごとに、その外部機能の利用可否の適用順序を示す順序テーブルが記憶される。適用順序とは、制御テーブル記憶部132に記憶されている制御テーブルに基づいて、利用可否制御部135が仮想マシン140からの外部機能の利用を制御する際に、実際にどの順序で利用可否を適用するかを示す情報である。制御テーブル記憶部132に記憶されている制御テーブルの情報が更新された場合、更新された情報の全てを反映して更新後の制御を開始すればよいのであるが、現実的に全くのずれなく全ての更新を反映することは困難である。そこで、更新を反映した制御を行う順序を定義しておき、この順序に沿って更新を反映する。これにより、仮想マシン140が意図しない動作を行うことを防ぐことができる。図4は、順序テーブル記憶部133に記憶される順序テーブルのデータ例を示す図である。ここでは、デバイスAの適用順序が1であり、デバイスBの適用順序が2であり、デバイスCの適用順序が3であることが示されている。   The order table storage unit 133 stores, for each external function, an order table indicating the application order of availability of the external function. The application order refers to the actual order of availability when the availability control unit 135 controls the use of external functions from the virtual machine 140 based on the control table stored in the control table storage unit 132. Information indicating whether to apply. When the information in the control table stored in the control table storage unit 132 is updated, it is only necessary to start the control after updating by reflecting all the updated information. It is difficult to reflect all updates. Therefore, the order of performing the control reflecting the update is defined, and the update is reflected along this order. Thereby, it is possible to prevent the virtual machine 140 from performing an unintended operation. FIG. 4 is a diagram illustrating an example of data in the order table stored in the order table storage unit 133. Here, it is shown that the application order of device A is 1, the application order of device B is 2, and the application order of device C is 3.

図1に戻り、監視部134は、物理マシンである仮想マシン制御装置100と、仮想マシン140との少なくともいずれかによる所定の動作状況を監視する。本実施形態では、双方の所定の動作状況を監視するものとする。所定の動作状況とは、例えば、移動通信網通信が可の状態であるか否か、仮想マシン140のルート化が行われたか否か等の状態である。仮想マシン140のルート化とは、その仮想マシン140に対して管理者権限によるシステム操作ができるようにすることをいう。監視部134は、それぞれのデバイス110を監視すること等により、このような動作状況を検知する。ルート化が行われたか否かは、例えば、SUコマンドが入力されたか否か、あるいはSuperUser.apkがインストールされたか否か等により検知することができる。   Returning to FIG. 1, the monitoring unit 134 monitors a predetermined operation status of at least one of the virtual machine control device 100 that is a physical machine and the virtual machine 140. In the present embodiment, it is assumed that both predetermined operating conditions are monitored. The predetermined operation status is, for example, a state such as whether or not mobile communication network communication is possible, whether or not the virtual machine 140 has been routed. The rooting of the virtual machine 140 means enabling the system operation with the administrator authority to the virtual machine 140. The monitoring unit 134 detects such an operation state by monitoring each device 110 or the like. Whether or not the rooting has been performed is, for example, whether or not a SU command has been input, or SuperUser. It can be detected by whether or not apk is installed.

利用可否制御部135は、監視部134が監視する所定の動作状況に応じて、仮想マシン140による外部機能の利用可否を制御する。具体的には、利用可否制御部135は、仮想マシン140の外部機能利用要求部141から利用要求が出力されると、その利用要求の利用可否を判定する。ここで、利用可否制御部135は、条件テーブル記憶部131に記憶されている条件テーブルに基づいて、仮想マシン140による外部機能の利用可否を制御する。すなわち、利用可否制御部135は、監視部134が監視する所定の動作状況に対応する外部機能の利用可否を条件テーブルから読み出し、読み出した利用可否によって制御テーブル記憶部132に記憶されている制御テーブルを更新する。また、利用可否制御部135は、更新した制御テーブルに基づいて、外部機能の利用可否を制御する。利用可否を制御するとは、外部機能利用要求部141から出力される利用要求を受信し、制御テーブルを参照して、受信した利用要求による外部機能の利用可否を判定し、利用可であればその外部機能を利用させ、利用不可であればその外部機能を利用させないように制御することをいう。具体的には、例えば、その外部機能を利用させる場合には、その利用要求をそのまま後述する外部機能利用制御部136に出力し、その外部機能を利用させない場合には、その利用要求を外部機能利用制御部136に出力せずに、利用要求の出力元である外部機能利用要求部141にエラーを返す。このように、利用可否制御部135によって、仮想マシン140の外部機能利用要求部141と管理OS130の外部機能利用制御部136との接続可否が制御される。また、利用可否制御部135は、順序テーブルに示される適用順序に基づいて、外部機能の利用可否を制御する。   The availability control unit 135 controls the availability of external functions by the virtual machine 140 according to a predetermined operation status monitored by the monitoring unit 134. Specifically, when a use request is output from the external function use request unit 141 of the virtual machine 140, the use availability control unit 135 determines whether the use request is available. Here, the availability control unit 135 controls the availability of external functions by the virtual machine 140 based on the condition table stored in the condition table storage unit 131. That is, the availability control unit 135 reads from the condition table whether or not the external function corresponding to the predetermined operation situation monitored by the monitoring unit 134 is read, and the control table stored in the control table storage unit 132 according to the read availability. Update. Further, the availability control unit 135 controls the availability of the external function based on the updated control table. To control availability, the usage request output from the external function usage requesting unit 141 is received, the control table is referenced, the availability of the external function according to the received usage request is determined, and if it is available, This means that an external function is used and control is performed so that the external function is not used if it cannot be used. Specifically, for example, when the external function is used, the use request is output as it is to the external function use control unit 136 described later, and when the external function is not used, the use request is output to the external function. An error is returned to the external function usage requesting unit 141 that is the output source of the usage request without outputting the usage control unit 136. In this way, the availability control unit 135 controls the connection between the external function usage request unit 141 of the virtual machine 140 and the external function usage control unit 136 of the management OS 130. Further, the availability control unit 135 controls availability of the external function based on the application order shown in the order table.

外部機能利用制御部136は、外部機能利用要求部141から出力される外部機能の利用要求に応じて、その外部機能を利用させる。外部機能利用制御部136は、管理OSが備える仮想的なデバイスドライバであり、仮想化部120に対して外部機能の利用要求を出力することにより、仮想マシン140に外部機能を利用させる。すなわち、仮想化部120によって仮想マシン制御装置100上に動作する全ての仮想マシン140は、管理OS130の外部機能利用制御部136を介さなければ、仮想マシン制御装置100の仮想マシン制御装置100にアクセスできないように構成される。外部機能利用制御部136は、仮想マシン140の外部機能利用要求部141から出力された利用要求が、利用可否制御部135によって利用可と判定された場合、その利用要求を、仮想化部120に出力する。利用可否制御部135によって利用不可と判定された場合、その利用要求は、仮想化部120に出力されない。   The external function usage control unit 136 uses the external function in response to the external function usage request output from the external function usage request unit 141. The external function use control unit 136 is a virtual device driver provided in the management OS, and causes the virtual machine 140 to use the external function by outputting a use request for the external function to the virtualization unit 120. That is, all virtual machines 140 operating on the virtual machine control device 100 by the virtualization unit 120 access the virtual machine control device 100 of the virtual machine control device 100 unless the external function use control unit 136 of the management OS 130 is passed. It is configured so that it cannot. If the usage request output from the external function usage request unit 141 of the virtual machine 140 is determined to be usable by the availability control unit 135, the external function usage control unit 136 sends the usage request to the virtualization unit 120. Output. When it is determined by the availability control unit 135 that the usage is not possible, the usage request is not output to the virtualization unit 120.

次に、図面を参照して、本実施形態による仮想マシン制御装置100の動作例を説明する。図5は、本実施形態による仮想マシン制御装置100の動作例を示すフローチャートである。仮想マシン制御装置100に、管理OS130と、仮想マシン140−1と、仮想マシン140−2とが起動すると、管理OS130は、仮想マシン制御装置100の各部および起動した仮想マシン140−1と仮想マシン140−2との動作状況を監視する(ステップS1)。   Next, an operation example of the virtual machine control device 100 according to the present embodiment will be described with reference to the drawings. FIG. 5 is a flowchart illustrating an operation example of the virtual machine control apparatus 100 according to the present embodiment. When the management OS 130, the virtual machine 140-1, and the virtual machine 140-2 are activated in the virtual machine control apparatus 100, the management OS 130 causes the virtual machine control apparatus 100 to start the virtual machine 140-1 and the virtual machine. The operation status with 140-2 is monitored (step S1).

監視部134が、動作状況の変化を検知すると、利用可否制御部135は、変化した動作状況に応じた外部機能の利用可否を条件テーブル記憶部131から読み出して制御テーブル記憶部132に記憶されている制御テーブルを更新する(ステップS2)。利用可否制御部135は、順序テーブル記憶部133に記憶されている順序テーブルを読み出し、読み出した順序で、制御テーブルに更新した利用可否を適用する(ステップS3)。   When the monitoring unit 134 detects a change in the operation status, the availability control unit 135 reads the availability of the external function according to the changed operation status from the condition table storage unit 131 and stores it in the control table storage unit 132. The existing control table is updated (step S2). The availability control unit 135 reads the order table stored in the order table storage unit 133, and applies the updated availability in the control table in the read order (step S3).

以上説明したように、本実施形態によれば、複数の仮想マシン140ごとの外部機能の利用可否を、動作状況に応じて動的に変更し、制御できるようにした。これにより、仮想マシン制御装置100上で動作する仮想マシン140が、その仮想マシン140に必要のない外部機能を利用したり、予期しない振る舞いをしたりすることを制限できる。これにより、仮想マシン140を用途に応じた範囲で動作させることができるようになる。   As described above, according to the present embodiment, the availability of the external function for each of the plurality of virtual machines 140 can be dynamically changed and controlled according to the operation status. As a result, the virtual machine 140 operating on the virtual machine control device 100 can be restricted from using an external function that is not necessary for the virtual machine 140 or performing an unexpected behavior. As a result, the virtual machine 140 can be operated in a range corresponding to the application.

<実施例>
次に、上述した仮想マシン制御装置100の実施例を説明する。図6は、本実施形態の仮想マシン制御装置100の実施例を示す概念図である。ここでは、仮想マシン制御装置100を適用したスマートフォン200のハードウェア上に、管理OS230と、仮想マシン240−1と、仮想マシン240−2との仮想マシンが動作している例を説明する。
<Example>
Next, an example of the above-described virtual machine control apparatus 100 will be described. FIG. 6 is a conceptual diagram illustrating an example of the virtual machine control device 100 according to the present embodiment. Here, an example in which a management OS 230, a virtual machine 240-1, and a virtual machine 240-2 are operating on the hardware of a smartphone 200 to which the virtual machine control device 100 is applied will be described.

本実施例では、スマートフォン200上で動作する仮想マシン240−1は、移動体通信網等のネットワークを介して接続されたサーバ300と通信して、サーバ300によって提供されるサービスを利用するサービス利用アプリケーション(AP)を動作させるOS(ユーザOS1)であり、サーバ300に対するクライアントであるサービス利用端末としての機能を有する。仮想マシン240−1は、ユーザからユーザIDやパスワード等、サーバ300に送信するデータの入力を受け付け、入力されたデータをサーバ300に送信する等の処理を行う。サービス利用アプリケーションとは、例えば何らかの決済を行うアプリケーション等が適用できる。このように、仮想マシン240−1とサーバ300とが移動体通信網により通信する場合、通信状況によって通信可である場合と通信不可である場合とが頻繁に切り替わる場合があると考えられる。このとき、例えば、ユーザが仮想マシン240−1に情報を入力した後に、仮想マシン240−1とサーバ300との通信状況が悪化してエラーにより送信できず、ユーザがもう一度同じ情報を入力することになれば、ユーザにとって面倒である。   In this embodiment, the virtual machine 240-1 operating on the smartphone 200 communicates with a server 300 connected via a network such as a mobile communication network, and uses a service provided by the server 300. An OS (user OS 1) that operates an application (AP), and has a function as a service use terminal that is a client for the server 300. The virtual machine 240-1 receives input of data to be transmitted to the server 300 such as a user ID and a password from the user, and performs processing such as transmitting the input data to the server 300. As the service use application, for example, an application for performing some kind of settlement can be applied. As described above, when the virtual machine 240-1 and the server 300 communicate with each other via the mobile communication network, it is considered that the case where communication is possible and the case where communication is impossible are frequently switched depending on the communication status. At this time, for example, after the user inputs information to the virtual machine 240-1, the communication status between the virtual machine 240-1 and the server 300 deteriorates and cannot be transmitted due to an error, and the user inputs the same information again. If it becomes, it will be troublesome for the user.

そこで、このような場合のために、サーバ300の疑似的なサーバである仮想マシン240−2をスマートフォン200に動作させておく。そして、管理OS230が、移動体通信網の電波が受信できない等の理由により通信不可能状態であることを検知すると、移動体通信網との通信デバイスを無効化してサーバ300に対する通信をできなくする代わりに、仮想マシン240−1と仮想マシン240−2との通信を可能にする。そして、仮想マシン240−1は、サーバ300に対して送るべき情報を、仮想マシン240−2に送信する。仮想マシン240−2は、仮想マシン240−1から送信された情報を記憶しておく。スマートフォン200による移動体通信網通信ができる状態になると、仮想マシン240−2は、記憶しておいた情報を、仮想マシン240−1に代わってサーバ300に送信する。このようにすれば、ユーザは、通信状況に関わらず入力処理を完了させることができる。   Therefore, for such a case, the virtual machine 240-2, which is a pseudo server of the server 300, is caused to operate on the smartphone 200. When the management OS 230 detects that communication is impossible due to reasons such as being unable to receive radio waves from the mobile communication network, it disables the communication device with the mobile communication network and disables communication with the server 300. Instead, communication between the virtual machine 240-1 and the virtual machine 240-2 is enabled. Then, the virtual machine 240-1 transmits information to be sent to the server 300 to the virtual machine 240-2. The virtual machine 240-2 stores information transmitted from the virtual machine 240-1. When the mobile communication network communication by the smartphone 200 is possible, the virtual machine 240-2 transmits the stored information to the server 300 instead of the virtual machine 240-1. In this way, the user can complete the input process regardless of the communication status.

管理OS230は、仮想マシン制御装置100の管理OS130に対応する。管理OS230は、ポリシ232と、モニタリング機能234と、ドライバ制御機能235と、M−VDD(Management Virtual Device Driver)236と、ネイティブデバイスドライバ237と、外部入力IF(インタフェース)とを備えている。   The management OS 230 corresponds to the management OS 130 of the virtual machine control device 100. The management OS 230 includes a policy 232, a monitoring function 234, a driver control function 235, an M-VDD (Management Virtual Device Driver) 236, a native device driver 237, and an external input IF (interface).

ポリシ232、モニタリング機能234、ドライバ制御機能235、M−VDD236は、仮想マシン制御装置100が備える条件テーブル記憶部131から順序テーブル記憶部133、監視部134、利用可否制御部135、外部機能利用制御部136に対応する。仮想マシン240−1は、仮想マシン140−1に対応する。仮想マシン240−1が備えるU−VDD(User Virtual Device Driver)241−1は、仮想マシン140−1が備える外部機能利用要求部141−1に対応する。U−VDD241−1は、例えば、LCD、外部入力IF、SDアクセス、外部NW、OS間通信等の外部機能を利用するためのドライバ群である。   The policy 232, the monitoring function 234, the driver control function 235, and the M-VDD 236 are transmitted from the condition table storage unit 131 provided in the virtual machine control device 100 to the order table storage unit 133, the monitoring unit 134, the availability control unit 135, and the external function usage control. Corresponds to the portion 136. The virtual machine 240-1 corresponds to the virtual machine 140-1. A U-VDD (User Virtual Device Driver) 241-1 included in the virtual machine 240-1 corresponds to the external function use request unit 141-1 included in the virtual machine 140-1. The U-VDD 241-1 is a driver group for using an external function such as an LCD, an external input IF, an SD access, an external NW, and an OS communication.

ここで、例えば、動作状況に関わらずそもそも仮想マシン240−1からのSDアクセスを禁止するのであれば、SDアクセスの利用を禁止状態にして仮想マシン240−1を起動させることもできる。あるいは、仮想マシン240−1の起動時に、SDアクセスのドライバをインストールしないこともできる。本実施形態では、このように、仮想マシン240−1の起動時の制御により、外部機能の利用可否を制御することを、静的制御という。これに対し、動作状況に応じて、外部機能の利用可否を制御することを、動的制御という。仮想マシン240−2は、仮想マシン140−2に対応する。仮想マシン240−2が備えるU−VDD241−2は、仮想マシン140−2が備える外部機能利用要求部141−2に対応する。   Here, for example, if SD access from the virtual machine 240-1 is prohibited in the first place regardless of the operation status, the use of SD access can be prohibited and the virtual machine 240-1 can be started. Alternatively, the SD access driver may not be installed when the virtual machine 240-1 is activated. In the present embodiment, controlling the availability of the external function by the control at the time of starting the virtual machine 240-1 is referred to as static control. On the other hand, controlling the availability of an external function according to the operation status is called dynamic control. The virtual machine 240-2 corresponds to the virtual machine 140-2. The U-VDD 241-2 included in the virtual machine 240-2 corresponds to the external function use request unit 141-2 included in the virtual machine 140-2.

図7は、本実施例における条件テーブルのデータ例を示す図である。ここでは、モニタリング対象の外部機能の所定の動作状況ごとに、その動作状況に応じて制御テーブルを更新する所定のアクションが対応付けられている。例えば、3Gネットワーク(移動体通信網)が通信できない状態であれば(if Disable)、デバイスAの制御ポリシを、OS1、OS2ともにON(1)(利用可)にすることを示している。ここでは、複数のAND条件の動作状況の例のみを示しているが、OR条件の動作状況により所定のアクションを対応付けることもできる。   FIG. 7 is a diagram illustrating a data example of the condition table in the present embodiment. Here, for each predetermined operation status of the external function to be monitored, a predetermined action for updating the control table according to the operation status is associated. For example, if the 3G network (mobile communication network) cannot communicate (if Disable), the control policy of device A is set to ON (1) (available) for both OS1 and OS2. Here, only an example of the operation status of a plurality of AND conditions is shown, but a predetermined action can be associated with the operation status of the OR condition.

図8は、本実施例における制御テーブルのデータ例を示す図である。ここでは、外部機能であるデバイスごとに、そのデバイスの利用可否を示す情報が対応付けられている。0は、利用不可を示す。1は、利用可を示す。ここでは、0と1とのみを説明するが、2以上の数値を定めてもよい。例えば、2であれば、通信機能において、特定の通信先との通信のみ利用可とすることが考えられる。あるいは、例えば3であれば、特定の時間帯のみ利用可とすることが考えられる。   FIG. 8 is a diagram illustrating an example of data in the control table in the present embodiment. Here, each device that is an external function is associated with information indicating whether or not the device can be used. 0 indicates that it cannot be used. 1 indicates availability. Here, only 0 and 1 will be described, but a numerical value of 2 or more may be determined. For example, if it is 2, it is possible to use only communication with a specific communication destination in the communication function. Or if it is 3, for example, it can be considered that only a specific time zone can be used.

図9は、本実施例におけるスマートフォン200の動作を説明する第1の図である。初期状態では、仮想マシン240−1の外部NWは利用可であり、OS間通信は利用不可であるとする。仮想マシン240−1においてサービス利用APを起動させると、サービス利用APは、U−VDD241−1と、M−VDD236と、ネイティブデバイスドライバ237とを介して、外部機能である外部入力IF238を利用して、入力データの入力を受け付けて取得する(ステップS11)。   FIG. 9 is a first diagram illustrating the operation of the smartphone 200 in the present embodiment. In the initial state, it is assumed that the external NW of the virtual machine 240-1 can be used and communication between OSs cannot be used. When the service use AP is activated in the virtual machine 240-1, the service use AP uses the external input IF 238 that is an external function via the U-VDD 241-1, the M-VDD 236, and the native device driver 237. The input data is received and acquired (step S11).

図10は、本実施例におけるスマートフォン200の動作を説明する第2の図である。ステップS11においてサービス利用APが取得した入力データに所定の処理を行うと、サービス利用APは、U−VDD241−1を介して、入力データを、サーバ300を宛先として送信する。このとき、モニタリング機能234が、移動体通信網による通信が可能であるか否かを検知する(ステップS12)。   FIG. 10 is a second diagram illustrating the operation of the smartphone 200 in the present embodiment. When predetermined processing is performed on the input data acquired by the service use AP in step S11, the service use AP transmits the input data to the server 300 as a destination via the U-VDD 241-1. At this time, the monitoring function 234 detects whether or not communication via the mobile communication network is possible (step S12).

図11は、本実施例におけるスマートフォン200の動作を説明する第3の図である。ステップS12において、モニタリング機能234が、移動体通信網による通信が可能であると判定すると、管理OS230は、ステップS12においてサービス利用APから送信された入力データを、M−VDD236とネイティブデバイスドライバ237とを介してサーバ300に送信する(ステップS13)。   FIG. 11 is a third diagram illustrating the operation of the smartphone 200 in the present embodiment. When the monitoring function 234 determines in step S12 that communication via the mobile communication network is possible, the management OS 230 uses the M-VDD 236, the native device driver 237, and the input data transmitted from the service use AP in step S12. Is transmitted to the server 300 (step S13).

図12は、本実施例におけるスマートフォン200の動作を説明する第4の図である。一方、ステップS12において、モニタリング機能234が、移動体通信網による通信が可能でないと判定すると、ドライバ制御機能235が、ポリシ232に記憶されている条件テーブルに基づいて、制御テーブルを更新する。これにより、外部NWから仮想マシン240−1へのアクセスを不可にし、仮想マシン240−1と仮想マシン240−2との間の通信を可にする(ステップS14)。   FIG. 12 is a fourth diagram illustrating the operation of the smartphone 200 in the present embodiment. On the other hand, if the monitoring function 234 determines in step S 12 that communication via the mobile communication network is not possible, the driver control function 235 updates the control table based on the condition table stored in the policy 232. As a result, access from the external NW to the virtual machine 240-1 is disabled, and communication between the virtual machine 240-1 and the virtual machine 240-2 is enabled (step S14).

図13は、本実施例におけるスマートフォン200の動作を説明する第5の図である。ステップS14において、仮想マシン240−1と仮想マシン240−2との間の通信を可にすると、ドライバ制御機能235は、ステップS12においてサービス利用APからサーバ300に対して送信された入力データを、M−VDD236を介して仮想マシン240−2に送信する。仮想マシン240−2の疑似サーバAPは、送信された入力データを受信して、自身の記憶領域に記憶させる(ステップS15)。   FIG. 13 is a fifth diagram illustrating the operation of the smartphone 200 in the present embodiment. When the communication between the virtual machine 240-1 and the virtual machine 240-2 is enabled in step S14, the driver control function 235 receives the input data transmitted from the service use AP to the server 300 in step S12. The data is transmitted to the virtual machine 240-2 via the M-VDD 236. The pseudo server AP of the virtual machine 240-2 receives the transmitted input data and stores it in its own storage area (step S15).

図14は、本実施例におけるスマートフォン200の動作を説明する第6の図である。モニタリング機能234は、M−VDD236を介してスマートフォン200の通信状況を監視する。移動体通信網による通信が不可の状態であれば、移動体通信網による通信を利用不可とし、OS間通信を利用可とする状態を維持する(ステップS16)。   FIG. 14 is a sixth diagram illustrating the operation of the smartphone 200 in the present embodiment. The monitoring function 234 monitors the communication status of the smartphone 200 via the M-VDD 236. If communication using the mobile communication network is not possible, communication using the mobile communication network is disabled, and a state where communication between OSs is enabled is maintained (step S16).

図15は、本実施例におけるスマートフォン200の動作を説明する第7の図である。モニタリング機能234が、移動体通信網による通信が可能な状態になったことを検知すると、疑似サーバAPは、ステップS15において記憶した入力データを読み出し、M−VDD236とネイティブデバイスドライバ237とを介してサーバ300に送信する(ステップS17)。   FIG. 15 is a seventh diagram illustrating the operation of the smartphone 200 in the present embodiment. When the monitoring function 234 detects that the mobile communication network is ready for communication, the pseudo server AP reads the input data stored in step S15, and transmits the input data via the M-VDD 236 and the native device driver 237. It transmits to the server 300 (step S17).

図16は、本実施例におけるスマートフォン200の動作を説明する第8の図である。ステップS17において、入力データをサーバ300に送信すると、ドライバ制御機能235が、ポリシ232に記憶されている条件テーブルに基づいて、制御テーブルを更新する。これにより、外部NWから仮想マシン240−1へのアクセスを可にし、仮想マシン240−1と仮想マシン240−2との間の通信を不可にする(ステップS18)。   FIG. 16 is an eighth diagram illustrating the operation of the smartphone 200 in the present embodiment. In step S 17, when the input data is transmitted to the server 300, the driver control function 235 updates the control table based on the condition table stored in the policy 232. As a result, access from the external NW to the virtual machine 240-1 is enabled, and communication between the virtual machine 240-1 and the virtual machine 240-2 is disabled (step S18).

また、本実施形態の実施例としては、例えば、スマートフォンを、特定のアプリケーションのみが動作する専用端末として利用させたい場合に用いて好適である。例えば、ひとつの端末をあるアプリケーションの専用端末として利用させるとともに、他のアプリケーションの専用端末としても利用させたい場合、それぞれのアプリケーションを異なる仮想マシン140にそれぞれ動作させて異なるドメインとなるように構成しておくことができる。これにより、あるアプリケーションが動作する仮想マシンを、同一の端末内において他のアプリケーションが動作する仮想マシンから隔離、隠ぺいすることができる。またこのとき、仮想マシン(アプリケーション)の利用を切り替える際には、利用する外部機能を、仮想マシンごとに変化させることができる。   Moreover, as an example of the present embodiment, for example, it is preferable to use a smartphone as a dedicated terminal on which only a specific application operates. For example, when one terminal is used as a dedicated terminal for a certain application and is also used as a dedicated terminal for another application, each application is operated on a different virtual machine 140 to be configured in different domains. I can keep it. As a result, a virtual machine on which an application operates can be isolated and hidden from a virtual machine on which another application operates in the same terminal. At this time, when switching the use of the virtual machine (application), the external function to be used can be changed for each virtual machine.

また、本実施形態によれば、例えば、仮想マシンがルート化された場合に、その仮想マシンからの全ての外部機能の利用を不可にすることが可能となる。これにより、複数の仮想マシンが動作している物理マシン上で、特定の仮想マシンがルート化された場合、その仮想マシンから他の仮想マシンの情報が読み出されること等を防ぐことができる。また、例えば、USBメモリ等に記憶されたOS等のプログラムを仮想マシン制御装置100に接続させてUSBメモリ内のOSを起動するようなことを防ぐこともできる。   Further, according to the present embodiment, for example, when a virtual machine is rooted, all external functions from the virtual machine can be disabled. As a result, when a specific virtual machine is rooted on a physical machine on which a plurality of virtual machines are operating, it is possible to prevent information on other virtual machines from being read from the virtual machine. Further, for example, it is possible to prevent a program such as an OS stored in a USB memory or the like from being connected to the virtual machine control apparatus 100 and starting the OS in the USB memory.

なお、順序テーブル記憶部133に記憶された適用順序は、例えば、移動通信網を利用不可にしてOS間通信を利用可にする場合と、移動通信網を利用可にしてOS間通信を利用不可にする場合とで、適用順序を逆にすることもできる。
また、条件テーブル記憶部131に記憶させる条件テーブル、制御テーブル記憶部132に記憶させる制御テーブルは、複数の仮想マシン140全体に対して適用するものであってもよいし、仮想マシン140ごとにテーブルを用意して記憶させてもよい。
また、本実施形態では、仮想化部120上に管理OS130を起動させる例を説明したが、仮想化部120自体が、管理OS130が備える各部と同様の処理部を備えるようにしてもよい。
The application order stored in the order table storage unit 133 is, for example, the case where the mobile communication network is disabled and the inter-OS communication is enabled, and the case where the mobile communication network is enabled and the inter-OS communication cannot be used. The order of application can also be reversed.
In addition, the condition table stored in the condition table storage unit 131 and the control table stored in the control table storage unit 132 may be applied to the entire plurality of virtual machines 140, or may be a table for each virtual machine 140. May be prepared and stored.
In this embodiment, the example in which the management OS 130 is activated on the virtualization unit 120 has been described. However, the virtualization unit 120 itself may include processing units similar to the units included in the management OS 130.

なお、本発明における処理部の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより仮想マシンの制御を行ってもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータシステム」は、インターネットやWAN、LAN、専用回線等の通信回線を含むネットワークを介して接続された複数のコンピュータ装置を含んでもよい。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、ネットワークを介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(RAM)のように、一定時間プログラムを保持しているものも含むものとする。また、上記プログラムは、上述した機能の一部を実現するためのものであってもよい。さらに、上述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であってもよい。   Note that a program for realizing the function of the processing unit in the present invention is recorded on a computer-readable recording medium, and the program recorded on the recording medium is read by a computer system and executed to control the virtual machine. May be performed. Here, the “computer system” includes an OS and hardware such as peripheral devices. Further, the “computer system” may include a plurality of computer devices connected via a network including a communication line such as the Internet, WAN, LAN, and dedicated line. The “computer-readable recording medium” refers to a storage device such as a flexible medium, a magneto-optical disk, a portable medium such as a ROM and a CD-ROM, and a hard disk incorporated in a computer system. Furthermore, the “computer-readable recording medium” holds a program for a certain period of time, such as a volatile memory (RAM) inside a computer system that becomes a server or a client when the program is transmitted via a network. Including things. The program may be for realizing a part of the functions described above. Furthermore, what can implement | achieve the function mentioned above in combination with the program already recorded on the computer system, what is called a difference file (difference program) may be sufficient.

また、上述した機能の一部または全部を、LSI(Large Scale Integration)等の集積回路として実現してもよい。上述した各機能は個別にプロセッサ化してもよいし、一部、または全部を集積してプロセッサ化してもよい。また、集積回路化の手法はLSIに限らず専用回路、または汎用プロセッサで実現してもよい。また、半導体技術の進歩によりLSIに代替する集積回路化の技術が出現した場合、当該技術による集積回路を用いてもよい。   In addition, some or all of the functions described above may be realized as an integrated circuit such as an LSI (Large Scale Integration). Each function described above may be individually made into a processor, or a part or all of them may be integrated into a processor. Further, the method of circuit integration is not limited to LSI, and may be realized by a dedicated circuit or a general-purpose processor. In addition, when an integrated circuit technology that replaces LSI appears due to the advancement of semiconductor technology, an integrated circuit based on the technology may be used.

100 仮想マシン制御装置
110 デバイス
120 仮想化部
130 管理OS
131 条件テーブル記憶部
132 制御テーブル記憶部
133 順序テーブル記憶部
134 監視部
135 利用可否制御部
136 外部機能利用制御部
140 仮想マシン
141 外部機能利用要求部
200 スマートフォン
232 ポリシ
234 モニタリング機能
235 ドライバ制御機能
236 M−VDD
237 ネイティブデバイスドライバ
238 外部入力IF
241 U−VDD
300 サーバ
100 Virtual Machine Control Device 110 Device 120 Virtualization Unit 130 Management OS
131 Condition table storage unit 132 Control table storage unit 133 Order table storage unit 134 Monitoring unit 135 Usability control unit 136 External function use control unit 140 Virtual machine 141 External function use request unit 200 Smartphone 232 Policy 234 Monitoring function 235 Driver control function 236 M-VDD
237 Native device driver 238 External input IF
241 U-VDD
300 servers

Claims (7)

物理マシンを仮想化して仮想マシンを動作させる仮想化部と、
前記物理マシンまたは前記仮想マシンによる所定の動作状況を監視する監視部と、
前記監視部が監視する前記所定の動作状況に応じて、前記仮想マシンによる当該仮想マシンの外部機能の利用可否を制御する利用可否制御部と、
を備えることを特徴とする機能利用制御装置。
A virtualization unit that virtualizes a physical machine and operates the virtual machine;
A monitoring unit that monitors a predetermined operation status of the physical machine or the virtual machine;
An availability control unit that controls availability of an external function of the virtual machine by the virtual machine according to the predetermined operation status monitored by the monitoring unit;
A function use control device comprising:
前記仮想化部は、第1の仮想マシンと、第2の仮想マシンとを前記物理マシン上に動作させ、
前記第1の仮想マシンは、前記仮想化部に対して前記外部機能の利用要求を出力する外部機能利用制御部を備え、
前記第2の仮想マシンは、前記外部機能の利用要求を前記第1の仮想マシンに出力する外部機能利用要求部を備え、
前記利用可否制御部は、前記第2の仮想マシンの前記外部機能利用要求部から前記利用要求が出力されると、当該利用要求の利用可否を判定し、
前記第1の仮想マシンの前記外部機能利用制御部は、前記利用可否制御部によって利用可と判定された場合、前記第2の仮想マシンの外部機能利用要求部から出力された前記利用要求を、前記仮想化部に出力する
ことを特徴とする請求項1に記載の機能利用制御装置。
The virtualization unit operates a first virtual machine and a second virtual machine on the physical machine,
The first virtual machine includes an external function use control unit that outputs a use request for the external function to the virtualization unit,
The second virtual machine includes an external function use request unit that outputs the use request for the external function to the first virtual machine,
When the use request is output from the external function use request unit of the second virtual machine, the use availability control unit determines whether the use request is available,
The external function use control unit of the first virtual machine, when the use permission control unit determines that the use is possible, the use request output from the external function use request unit of the second virtual machine, The function use control apparatus according to claim 1, wherein the function use control apparatus outputs the data to the virtualization unit.
複数の前記外部機能ごとに、前記所定の動作状況に応じた前記外部機能の利用可否が対応付けられた条件テーブルが記憶される条件テーブル記憶部を備え、
前記利用可否制御部は、前記条件テーブルに基づいて、前記仮想マシンによる前記外部機能の利用可否を制御する
ことを特徴とする請求項1または請求項2に記載の機能利用制御装置。
For each of the plurality of external functions, a condition table storage unit that stores a condition table in which the availability of the external function corresponding to the predetermined operation situation is associated is stored.
The function usage control apparatus according to claim 1, wherein the availability control unit controls availability of the external function by the virtual machine based on the condition table.
複数の前記外部機能ごとに、当該外部機能の利用可否が対応付けられた制御テーブルが記憶される制御テーブル記憶部を備え、
前記利用可否制御部は、前記監視部が監視する前記所定の動作状況に対応する前記外部機能の利用可否を前記条件テーブルから読み出して前記制御テーブルを更新し、更新した当該制御テーブルに基づいて前記外部機能の利用可否を制御する
ことを特徴とする請求項3に記載の機能利用制御装置。
For each of the plurality of external functions, a control table storage unit that stores a control table in which the availability of the external function is associated is provided,
The availability control unit reads the availability of the external function corresponding to the predetermined operation status monitored by the monitoring unit from the condition table, updates the control table, and based on the updated control table, The function usage control apparatus according to claim 3, wherein availability of an external function is controlled.
前記外部機能ごとに、当該外部機能の利用可否の適用順序を示す順序テーブルが記憶される順序テーブル記憶部を備え、
前記利用可否制御部は、前記順序テーブルに示される適用順序に基づいて、前記外部機能の利用可否を制御する
ことを特徴とする請求項1から請求項4までのいずれか1項に記載の機能利用制御装置。
For each of the external functions, an order table storage unit that stores an order table indicating the application order of the availability of the external function,
The function according to any one of claims 1 to 4, wherein the availability control unit controls the availability of the external function based on an application order indicated in the order table. Usage control device.
機能利用制御装置が、
物理マシンを仮想化して仮想マシンを動作させるステップと、
前記物理マシンまたは前記仮想マシンによる所定の動作状況を監視するステップと、
監視する前記所定の動作状況に応じて、前記仮想マシンによる当該仮想マシンの外部機能の利用可否を制御するステップと、
を備えることを特徴とする機能利用制御方法。
Function usage control device
Virtualizing a physical machine and operating the virtual machine;
Monitoring a predetermined operation status by the physical machine or the virtual machine;
Controlling whether to use an external function of the virtual machine by the virtual machine according to the predetermined operation status to be monitored;
A function use control method comprising:
機能利用制御装置のコンピュータに、
物理マシンを仮想化して仮想マシンを動作させるステップと、
前記物理マシンまたは前記仮想マシンによる所定の動作状況を監視するステップと、
監視する前記所定の動作状況に応じて、前記仮想マシンによる当該仮想マシンの外部機能の利用可否を制御するステップと、
を実行させる機能利用制御プログラム。
In the computer of the function use control device,
Virtualizing a physical machine and operating the virtual machine;
Monitoring a predetermined operation status by the physical machine or the virtual machine;
Controlling whether to use an external function of the virtual machine by the virtual machine according to the predetermined operation status to be monitored;
A function usage control program that executes
JP2012272213A 2012-12-13 2012-12-13 Function use control device, function use control method, function use control program Active JP6043615B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012272213A JP6043615B2 (en) 2012-12-13 2012-12-13 Function use control device, function use control method, function use control program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012272213A JP6043615B2 (en) 2012-12-13 2012-12-13 Function use control device, function use control method, function use control program

Publications (2)

Publication Number Publication Date
JP2014119789A true JP2014119789A (en) 2014-06-30
JP6043615B2 JP6043615B2 (en) 2016-12-14

Family

ID=51174606

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012272213A Active JP6043615B2 (en) 2012-12-13 2012-12-13 Function use control device, function use control method, function use control program

Country Status (1)

Country Link
JP (1) JP6043615B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017068776A (en) * 2015-10-02 2017-04-06 富士通株式会社 Communication control device, communication control method, and communication control program

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07225694A (en) * 1994-02-09 1995-08-22 Hitachi Ltd Virtual computer system
JP2007233704A (en) * 2006-03-01 2007-09-13 Nec Corp Information processor and information processing system using virtual machine and access control method
JP2010040043A (en) * 2008-08-06 2010-02-18 Samsung Electronics Co Ltd Method for controlling virtualization apparatus and virtualization apparatus
JP2011175582A (en) * 2010-02-25 2011-09-08 Fujitsu Ltd Information processor, virtual computer connecting method, program, and recording medium

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07225694A (en) * 1994-02-09 1995-08-22 Hitachi Ltd Virtual computer system
JP2007233704A (en) * 2006-03-01 2007-09-13 Nec Corp Information processor and information processing system using virtual machine and access control method
JP2010040043A (en) * 2008-08-06 2010-02-18 Samsung Electronics Co Ltd Method for controlling virtualization apparatus and virtualization apparatus
JP2011175582A (en) * 2010-02-25 2011-09-08 Fujitsu Ltd Information processor, virtual computer connecting method, program, and recording medium

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JPN6016006459; 安田幸弘: 'イロハからLinux別の導入法まで この1冊でぜ〜んぶわかる Xen! [第1部]SUSE、Fedo' Linux WORLD 第5巻,第2号, 20060201, pp.46-53, 株式会社アイ・ディ・ジー・ジャパン *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017068776A (en) * 2015-10-02 2017-04-06 富士通株式会社 Communication control device, communication control method, and communication control program

Also Published As

Publication number Publication date
JP6043615B2 (en) 2016-12-14

Similar Documents

Publication Publication Date Title
KR101941618B1 (en) Operating system hot-switching method and apparatus and mobile terminal
CA2988332C (en) Operating system independent, secure data storage subsystem
KR101702729B1 (en) System and method for switching between environments in a multi-environment operating system
US8667607B2 (en) Trusted security zone access to peripheral devices
RU2456662C2 (en) Matching startup between several devices capable of startup
JP2008243178A (en) Method, device and system for enabling secure location-aware platform
US20230221784A1 (en) System and method for power state enforced subscription management
US11671379B1 (en) System and method for subscription management using dynamically composed management entities
CN109526249A (en) For managing the device and method of the communication interface of communication equipment
US8533785B2 (en) Systems and methods for managing the operation of multiple virtual machines among multiple terminal devices
JP2013254304A (en) Information processing apparatus, information processing method, and program
US11249771B2 (en) Terminal input invocation
JP5919877B2 (en) Thin client system, control server, terminal, security control method, and security control program
CN109284153A (en) Method, relevant device and the computer media of single machine experience multiple operating system
JP6043615B2 (en) Function use control device, function use control method, function use control program
KR101223981B1 (en) Virtualization apparatus and server for securly executing applications and method therefor
CN114826785B (en) Dynamic protection method, system-on-chip, electronic device and medium
US9087031B2 (en) Method and program for selective suspension of USB device
WO2017073050A1 (en) Server terminal device, client terminal device, thin client system, control method, and program recording medium
US9225818B2 (en) Mobile terminal
WO2015081678A1 (en) User interface loading method and apparatus and thin terminal
KR101208776B1 (en) System for Providing Virtual Machine and Server and Method used in the System
JP2015184718A (en) Start management apparatus, start management method, and start management program
US20150135304A1 (en) Electronic apparatus and control method thereof
JP5066112B2 (en) Information processing device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150324

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160119

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160223

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160422

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160802

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160929

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20161018

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20161114

R150 Certificate of patent or registration of utility model

Ref document number: 6043615

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250