[go: up one dir, main page]

JP2010238130A - Information processing apparatus and control method - Google Patents

Information processing apparatus and control method Download PDF

Info

Publication number
JP2010238130A
JP2010238130A JP2009087699A JP2009087699A JP2010238130A JP 2010238130 A JP2010238130 A JP 2010238130A JP 2009087699 A JP2009087699 A JP 2009087699A JP 2009087699 A JP2009087699 A JP 2009087699A JP 2010238130 A JP2010238130 A JP 2010238130A
Authority
JP
Japan
Prior art keywords
virtual
guest
host
control means
program
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
JP2009087699A
Other languages
Japanese (ja)
Other versions
JP4918112B2 (en
Inventor
Kohei Kawaguchi
晃平 川口
Manabu Kawamura
学 河村
Kosho Tomita
晃章 富田
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 Docomo Inc
Original Assignee
NTT Docomo Inc
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 Docomo Inc filed Critical NTT Docomo Inc
Priority to JP2009087699A priority Critical patent/JP4918112B2/en
Publication of JP2010238130A publication Critical patent/JP2010238130A/en
Application granted granted Critical
Publication of JP4918112B2 publication Critical patent/JP4918112B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

【課題】専用OSの採用により高セキュリティを担保したゲストOS上のプログラムから通信をする際に、ゲストOS専用のドライバが新たに必要なこと。
【解決手段】仮想マシン113は、仮想RAM上に仮想RAMディスクを作成する。仮想マシン113は、携帯端末200から読み出したゲストOS115およびゲストOSアプリ116を仮想RAMディスクに記憶する。ゲストOS115は、仮想RAMディスクから起動される。ゲストOS115とホストOS111との間にブリッジを確立する。ゲストOSアプリ116がネットワークを介した通信を行う際、ホストOS111のドライバを用いて携帯端末200およびネットワークを介した通信を行う。
【選択図】図3
A driver dedicated to a guest OS is newly required when communicating from a program on the guest OS that ensures high security by adopting a dedicated OS.
A virtual machine 113 creates a virtual RAM disk on a virtual RAM. The virtual machine 113 stores the guest OS 115 and the guest OS application 116 read from the mobile terminal 200 in a virtual RAM disk. The guest OS 115 is activated from the virtual RAM disk. A bridge is established between the guest OS 115 and the host OS 111. When the guest OS application 116 performs communication via the network, the host OS 111 uses the driver of the host OS 111 to perform communication via the mobile terminal 200 and the network.
[Selection] Figure 3

Description

本発明は、情報処理装置およびその制御方法に関する。   The present invention relates to an information processing apparatus and a control method thereof.

近年、企業内にてテレワークが促進され、社内だけではなくサテライトオフィスや、自宅にて仕事を行うワークスタイルが登場してきた。できる限り社内と同じ環境で仕事をするために、社外からセキュアに社内IT資産(サーバ、情報処理端末等)を利用できる仕組みとしてシンクライアントが利用されている。   In recent years, telework has been promoted in companies, and not only in-house but also in satellite offices and work styles for working at home have appeared. In order to work in the same environment as possible inside the company, thin clients are used as a mechanism that allows internal IT resources (servers, information processing terminals, etc.) to be used securely from outside the company.

例えば、特許文献1は、シンクライアント端末として機能させるために、認証情報などを記憶した耐タンパストレージ機能を有したストレージデバイスを挿入し、サーバに対して遠隔操作させることを開示している。また、特許文献2は、ユーザ用仮想マシンとサーバ代替仮想マシンという2つの仮想マシンを有するクライアント装置において、ユーザ用仮想マシンからパケットを送出する際に、サーバ代替仮想マシンにおいてパケットを解析し、ネットワーク上のサーバにパケットを送る場合には、サーバ代替仮想マシンのドライバを用いてパケットを送出することを開示している。   For example, Patent Literature 1 discloses that a storage device having a tamper-resistant storage function that stores authentication information and the like is inserted in order to function as a thin client terminal, and the server is remotely operated. Further, Patent Document 2 discloses that a client device having two virtual machines, a user virtual machine and a server substitute virtual machine, analyzes the packet in the server substitute virtual machine when sending the packet from the user virtual machine, In the case of sending a packet to the above server, it is disclosed that the packet is sent using the driver of the server substitute virtual machine.

特許第3918827号公報Japanese Patent No. 3918827 特開2008−299617号公報JP 2008-299617 A

本発明は、ゲストOSを記憶した単一の携帯端末と接続され、ドライバを含むホストOSを記憶した情報処理装置において、ホストOSのドライバの元で携帯端末を通信の中継装置として用いて、高セキュリティを担保しつつ、ゲストOS上のプログラムが通信を行う技術を提供する。   The present invention relates to an information processing apparatus connected to a single mobile terminal storing a guest OS and storing a host OS including a driver, using the mobile terminal as a communication relay apparatus under the host OS driver. A technology is provided in which a program on a guest OS communicates while ensuring security.

本発明は、制御手段と、ゲストOS、および前記ゲストOS上で動作し、ネットワークを介した通信を行うゲストアプリケーションプログラムを記憶した携帯端末と接続するインターフェースと、仮想マシンを起動するための仮想化プログラム、前記携帯端末を用いた通信を行うためのドライバプログラムを含むホストOS、および前記ホストOSと前記ゲストOSとの間にブリッジを確立するためのブリッジプログラムを記憶した記憶手段とを有し、前記制御手段が、前記記憶手段から読み出した前記ホストOSを起動し、前記制御手段が、前記ホストOS上で前記仮想化プログラムを実行し、仮想制御手段および仮想RAMを有する仮想マシンを起動し、前記仮想制御手段が、前記仮想RAM上に仮想RAMディスクを作成し、前記仮想制御手段が、前記携帯端末から読み出した前記ゲストOSおよび前記ゲストアプリケーションプログラムを前記仮想RAMディスクに記憶し、前記仮想制御手段が、前記仮想RAMディスクから前記ゲストOSを起動し、前記制御手段が、前記ブリッジプログラムを実行し、前記ゲストOSと前記ホストOSとの間に前記ブリッジを確立し、前記仮想制御手段が、前記ゲストアプリケーションプログラムにより前記ネットワークを介した通信を行う際、前記ホストOSの前記ドライバを用いて前記携帯端末および前記ネットワークを介した通信を行うことを特徴とする情報処理装置を提供する。
この情報処理装置によれば、ゲストOS専用のドライバを用いなくても、ゲストOS上のプログラムから通信をすることができる。
The present invention relates to a control unit, a guest OS, an interface that operates on the guest OS and that stores a guest application program that performs communication via a network, and a virtualization for starting a virtual machine A host OS including a program, a driver program for performing communication using the portable terminal, and a storage unit storing a bridge program for establishing a bridge between the host OS and the guest OS, The control unit starts the host OS read from the storage unit, the control unit executes the virtualization program on the host OS, and starts a virtual machine having virtual control unit and virtual RAM; The virtual control means creates a virtual RAM disk on the virtual RAM, and The control means stores the guest OS and the guest application program read from the portable terminal in the virtual RAM disk, the virtual control means starts the guest OS from the virtual RAM disk, and the control means includes: The bridge program is executed, the bridge is established between the guest OS and the host OS, and the virtual control unit performs communication via the network by the guest application program. Provided is an information processing apparatus that performs communication via the mobile terminal and the network using a driver.
According to this information processing apparatus, it is possible to communicate from a program on the guest OS without using a driver dedicated to the guest OS.

好ましい態様において、前記携帯端末は、前記情報処理装置の外部記憶装置として機能するための第1のモードと前記情報処理装置が前記ネットワークを介した通信を中継する中継装置として機能するための第2のモードとを切り換え可能であり、前記仮想制御手段は、前記第1のモードの前記携帯端末を前記外部記憶装置として使用可能とするマウント処理を行い、前記マウント処理の後で、前記仮想制御手段は、前記携帯端末から前記ゲストOSおよび前記ゲストアプリケーションプログラムを読み出してもよい。
この情報処理装置によれば、携帯端末を外部記憶装置として用いて携帯端末に記憶されたゲストOSを起動することができる。
In a preferred aspect, the portable terminal has a first mode for functioning as an external storage device of the information processing apparatus, and a second mode for the information processing apparatus to function as a relay apparatus that relays communication via the network. The virtual control means performs a mounting process that enables the portable terminal in the first mode to be used as the external storage device, and after the mounting process, the virtual control means May read the guest OS and the guest application program from the portable terminal.
According to this information processing apparatus, the guest OS stored in the portable terminal can be activated using the portable terminal as an external storage device.

別の好ましい態様において、前記仮想制御手段は、前記第1のモードの前記携帯端末を前記外部記憶装置として使用不可能とするアンマウント処理を行い、前記仮想制御手段は、前記アンマウント処理の後で、前記通信を行ってもよい。
この情報処理装置によれば、携帯端末を外部記憶装置として用いた後に中継装置として用いることができる。
In another preferred aspect, the virtual control means performs an unmount process for disabling the portable terminal in the first mode as the external storage device, and the virtual control means performs the unmount process after the unmount process, The communication may be performed.
According to this information processing device, the mobile terminal can be used as a relay device after being used as an external storage device.

さらに別の好ましい態様において、前記仮想化プログラムが、前記ホストOSと前記ゲストOSとを切り換える切り替え処理を含み、前記記憶手段が、前記切り替え処理を禁止する制御プログラムを記憶し、前記制御手段が、前記ゲストOSが起動された後で、前記制御プログラムを実行し、前記切り換え処理を禁止してもよい。
この情報処理装置によれば、切り換え処理を禁止する構成を有しない場合と比較してゲストOSのセキュリティを高めることができる。
In still another preferred aspect, the virtualization program includes a switching process for switching between the host OS and the guest OS, the storage unit stores a control program for prohibiting the switching process, and the control unit includes: After the guest OS is activated, the control program may be executed to prohibit the switching process.
According to this information processing apparatus, it is possible to increase the security of the guest OS as compared with a case where there is no configuration for prohibiting the switching process.

また、本発明は、制御手段と、ゲストOS、および前記ゲストOS上で動作し、ネットワークを介した通信を行うゲストアプリケーションプログラムを記憶した携帯端末と接続するインターフェースと、仮想マシンを起動するための仮想化プログラム、前記携帯端末を用いた通信を行うためのドライバプログラムを含むホストOS、および前記ホストOSと前記ゲストOSとの間にブリッジを確立するためのブリッジプログラムを記憶した記憶手段とを有する情報処理装置の制御方法であって、前記制御手段が、前記記憶手段から読み出した前記ホストOSを起動するステップと、前記制御手段が、前記ホストOS上で前記仮想化プログラムを実行し、仮想制御手段および仮想RAMを有する仮想マシンを起動するステップと、前記仮想制御手段が、前記仮想RAM上に仮想RAMディスクを作成するステップと、前記仮想制御手段が、前記携帯端末から読み出した前記ゲストOSおよび前記ゲストアプリケーションプログラムを前記仮想RAMディスクに記憶するステップと、前記仮想制御手段が、前記仮想RAMディスクから前記ゲストOSを起動するステップと、前記制御手段が、前記ブリッジプログラムを実行し、前記ゲストOSと前記ホストOSとの間に前記ブリッジを確立するステップと、前記仮想制御手段が、前記ゲストアプリケーションプログラムにより前記ネットワークを介した通信を行う際、前記ホストOSの前記ドライバを用いて前記携帯端末および前記ネットワークを介した通信を行うステップとを有する制御方法を提供する。
この制御方法によれば、ゲストOS専用のドライバを用いなくても、ゲストOS上のプログラムから通信をすることができる。
Further, the present invention provides a control unit, a guest OS, an interface that operates on the guest OS, and that is connected to a portable terminal that stores a guest application program that performs communication via a network, and for starting a virtual machine A host OS including a virtualization program, a driver program for performing communication using the portable terminal, and storage means for storing a bridge program for establishing a bridge between the host OS and the guest OS A method of controlling an information processing apparatus, wherein the control unit starts up the host OS read from the storage unit, and the control unit executes the virtualization program on the host OS, and performs virtual control. A virtual machine having means and virtual RAM, and the virtual control A step of creating a virtual RAM disk on the virtual RAM; a step of storing the guest OS and the guest application program read from the portable terminal by the virtual control unit in the virtual RAM disk; A step of starting the guest OS from the virtual RAM disk; a step of executing the bridge program to establish the bridge between the guest OS and the host OS; When the virtual control means performs communication via the network by the guest application program, the control method includes the step of performing communication via the mobile terminal and the network using the driver of the host OS. .
According to this control method, it is possible to communicate from a program on the guest OS without using a driver dedicated to the guest OS.

一実施形態に係る通信システムの構成を示す図である。It is a figure which shows the structure of the communication system which concerns on one Embodiment. 情報処理装置100のハードウェア構成を示すブロック図である。2 is a block diagram illustrating a hardware configuration of the information processing apparatus 100. FIG. 情報処理装置100のソフトウェア構成を示す図である。2 is a diagram illustrating a software configuration of the information processing apparatus 100. FIG. 仮想マシン113の構成を示す図である。2 is a diagram illustrating a configuration of a virtual machine 113. FIG. 携帯端末200の機能構成を示すブロック図である。3 is a block diagram showing a functional configuration of a mobile terminal 200. FIG. 情報処理装置100の動作を説明するシーケンス図である。FIG. 11 is a sequence diagram for explaining the operation of the information processing apparatus 100. 情報処理装置100の動作を説明するシーケンス図である。FIG. 11 is a sequence diagram for explaining the operation of the information processing apparatus 100.

1.構成
1−1.通信システム
図1は、一実施形態に係る通信システムの構成を示す図である。この通信システムは、情報処理装置100と、携帯端末200と、ネットワーク300と、サーバ400とを有する。情報処理装置100と携帯端末200とは、例えばUSB(Universal Serial Bus)ケーブルにより接続されている。情報処理装置100は、携帯端末200およびネットワーク300を介してサーバ400と通信を行う。
1. Configuration 1-1. Communication System FIG. 1 is a diagram illustrating a configuration of a communication system according to an embodiment. This communication system includes an information processing apparatus 100, a mobile terminal 200, a network 300, and a server 400. The information processing apparatus 100 and the mobile terminal 200 are connected by, for example, a USB (Universal Serial Bus) cable. The information processing apparatus 100 communicates with the server 400 via the mobile terminal 200 and the network 300.

1−2.情報処理装置100
図2は、情報処理装置100のハードウェア構成を示すブロック図である。情報処理装置100は、CPU(Central Processing Unit)101、RAM(Random Access Memory)102、デバイスコントローラ103、BIOS(Basic Input/Output System)・ROM(Read Only Memory)104、近距離有線通信部105およびHDD106を有する。なお、図示していないが、情報処理装置100は、キーボード等の入力装置(操作部)や、ディスプレイなどの表示装置、ROMなどを有している。
1-2. Information processing apparatus 100
FIG. 2 is a block diagram illustrating a hardware configuration of the information processing apparatus 100. The information processing apparatus 100 includes a central processing unit (CPU) 101, a random access memory (RAM) 102, a device controller 103, a basic input / output system (BIOS) / read only memory (ROM) 104, a short-range wired communication unit 105, and An HDD 106 is included. Although not shown, the information processing apparatus 100 includes an input device (operation unit) such as a keyboard, a display device such as a display, and a ROM.

CPU101は、情報処理装置100の構成要素を制御する制御装置である。RAM102は、OSやアプリケーションなどのソフトウェアが展開される揮発性の記憶装置である。また、RAM102には、CPU101からの指示のもと、RAMディスクとして用いられるRAMディスク領域102aが形成される。「RAMディスク」とは、RAM102の一部に確保された領域を、OSが利用可能なファイルシステム(仮想的な外部記憶装置)として利用する仕組みのこと、または、この仮想的な外部記憶装置をいう。
ファイル等が読み出される。
The CPU 101 is a control device that controls the components of the information processing apparatus 100. The RAM 102 is a volatile storage device in which software such as an OS and applications is developed. In addition, a RAM disk area 102a used as a RAM disk is formed in the RAM 102 in accordance with an instruction from the CPU 101. The “RAM disk” is a mechanism that uses an area secured in a part of the RAM 102 as a file system (virtual external storage device) that can be used by the OS, or this virtual external storage device. Say.
Files etc. are read out.

デバイスコントローラ103は、BIOSやドライバの読み込みや、携帯端末200の制御、RAMディスク領域102aの制御を行う制御装置である。BIOS・ROM104は、BIOSを記憶する記憶装置である。近距離有線通信部105は、携帯端末200と通信するためのインターフェースである。近距離有線通信部105は、USB規格に準拠したコネクタを有しており、このコネクタに接続されたUSBケーブルを介して携帯端末200と通信(データや信号の送受信)をする。HDD106は、不揮発性の外部記憶装置である。HDD106は、OS(Operating System)、アプリケーションプログラムなどのプログラムや、各種データを記憶する。   The device controller 103 is a control device that reads a BIOS and a driver, controls the mobile terminal 200, and controls the RAM disk area 102a. The BIOS / ROM 104 is a storage device that stores the BIOS. The short-range wired communication unit 105 is an interface for communicating with the mobile terminal 200. The short-distance wired communication unit 105 has a connector compliant with the USB standard, and communicates (transmits and receives data and signals) with the mobile terminal 200 via a USB cable connected to the connector. The HDD 106 is a nonvolatile external storage device. The HDD 106 stores programs such as an OS (Operating System) and application programs, and various data.

図3は、情報処理装置100のソフトウェア構成を示す図である。ホストOS111は、基本的な機能を提供し、情報処理装置100全体を管理する基本ソフトウェアである。VMM112は、情報処理装置100上に仮想マシンを形成するためのソフトウェアである。仮想マシンとは、物理的に単一のコンピュータ装置内に仮想的に形成されるコンピュータ装置をいう。この例で、VMM112は、ホストOS111上で動作する。仮想マシン113および仮想マシン114は、VMM112により形成された仮想マシンである。ゲストOS115は、仮想マシン113上で動作するOSである。ゲストOSアプリ116は、ゲストOS115上で動作するアプリケーションプログラム、例えばウェブブラウザである。ゲストOS117は、仮想マシン114上で動作するOSである。ゲストOSアプリ118は、ゲストOS117上で動作するアプリケーションプログラムである。制御アプリ119は、VMM112を制御するためのアプリケーションプログラムである。この例で、制御アプリ119は、ホストOS111上で動作する。ホストOSアプリ120は、ホストOS111上で動作するアプリケーションプログラムである(広義には、制御アプリ119はホストOSアプリ120の一種である)。   FIG. 3 is a diagram illustrating a software configuration of the information processing apparatus 100. The host OS 111 is basic software that provides basic functions and manages the entire information processing apparatus 100. The VMM 112 is software for forming a virtual machine on the information processing apparatus 100. A virtual machine refers to a computer device that is virtually formed in a physically single computer device. In this example, the VMM 112 operates on the host OS 111. The virtual machine 113 and the virtual machine 114 are virtual machines formed by the VMM 112. The guest OS 115 is an OS that operates on the virtual machine 113. The guest OS application 116 is an application program that runs on the guest OS 115, for example, a web browser. The guest OS 117 is an OS that operates on the virtual machine 114. The guest OS application 118 is an application program that runs on the guest OS 117. The control application 119 is an application program for controlling the VMM 112. In this example, the control application 119 operates on the host OS 111. The host OS application 120 is an application program that runs on the host OS 111 (in a broad sense, the control application 119 is a type of the host OS application 120).

図4は、仮想マシン113の構成を示す図である。仮想マシン113は、仮想CPU131、仮想RAM132、仮想デバイスコントローラ133、仮想BIOS・ROM134および仮想近距離有線通信部135を有する。これらは、仮想的な構成であるが、それぞれ、CPU101、RAM102、デバイスコントローラ103、BIOS・ROM104および近距離有線通信部105に相当する機能を有する。仮想マシン114についても同様である。この例で、仮想マシン113はいわゆるシンクライアントであるので、HDDのような不揮発性の外部記憶装置を有していない。   FIG. 4 is a diagram illustrating the configuration of the virtual machine 113. The virtual machine 113 includes a virtual CPU 131, a virtual RAM 132, a virtual device controller 133, a virtual BIOS / ROM 134, and a virtual short-range wired communication unit 135. These are virtual configurations, but have functions corresponding to the CPU 101, RAM 102, device controller 103, BIOS / ROM 104, and short-range wired communication unit 105, respectively. The same applies to the virtual machine 114. In this example, since the virtual machine 113 is a so-called thin client, it does not have a nonvolatile external storage device such as an HDD.

1−3.携帯端末200
図5は、携帯端末200の機能構成を示すブロック図である。この例で、携帯端末200は携帯電話機である。携帯端末200は、情報処理装置100に接続されると、メモリ201またはモデム202として機能する。メモリ201は、情報処理装置100の外部記憶装置としての機能である。モデム202は、情報処理装置100がネットワーク300を介した通信を行う際に用いられるモデムとしての機能である。情報処理装置100と接続されると、携帯端末200は、メモリ201またはモデム202のいずれか一方として機能する。携帯端末200がメモリ201として機能しているとき、携帯端末200は「メモリモード」であるという。携帯端末200がモデム202として機能しているとき、携帯端末200は「モデムモード」であるという。メモリモードとモデムモードの切り替えは排他的に行われ、一方のモードで機能しているときは他方の機能を使うことはできない。
1-3. Portable terminal 200
FIG. 5 is a block diagram illustrating a functional configuration of the mobile terminal 200. In this example, the mobile terminal 200 is a mobile phone. The portable terminal 200 functions as the memory 201 or the modem 202 when connected to the information processing apparatus 100. The memory 201 is a function as an external storage device of the information processing apparatus 100. The modem 202 is a function as a modem used when the information processing apparatus 100 performs communication via the network 300. When connected to the information processing apparatus 100, the mobile terminal 200 functions as either the memory 201 or the modem 202. When the mobile terminal 200 functions as the memory 201, the mobile terminal 200 is in the “memory mode”. When the portable terminal 200 functions as the modem 202, the portable terminal 200 is said to be in “modem mode”. Switching between the memory mode and the modem mode is performed exclusively, and when the function is performed in one mode, the other function cannot be used.

コントローラ203は、メモリ201およびモデム202を切り換える処理(以下「切り換え処理」という)を行う。切り換え処理は、例えばユーザによる操作に応じて行われる。近距離有線通信部204は、情報処理装置100と通信するためのインターフェースである。近距離有線通信部204は、USB規格に準拠したコネクタを有しており、このコネクタに接続されたUSBケーブルを介して情報処理装置100と通信をする。USIM(Universal Subscriber Identity Module)205は、携帯端末200のユーザの加入者情報等を記憶するメモリモジュールである。USIM205は、携帯端末200に着脱可能である。またこの例で、USIM205は、認証キーを記憶している。認証キーは、情報処理装置100におけるユーザの認証に用いられる。   The controller 203 performs a process of switching between the memory 201 and the modem 202 (hereinafter referred to as “switching process”). The switching process is performed according to, for example, an operation by the user. The short-distance wired communication unit 204 is an interface for communicating with the information processing apparatus 100. The short-distance wired communication unit 204 has a connector conforming to the USB standard, and communicates with the information processing apparatus 100 via a USB cable connected to the connector. A USIM (Universal Subscriber Identity Module) 205 is a memory module that stores subscriber information of the user of the mobile terminal 200. The USIM 205 can be attached to and detached from the portable terminal 200. In this example, the USIM 205 stores an authentication key. The authentication key is used for user authentication in the information processing apparatus 100.

なお、図示は省略するが、携帯端末200は、CPU、RAM、ROM、外部記憶装置、通信インターフェースといったハードウェア構成を有している。CPUがプログラムを実行してこれらのハードウェア構成を制御することにより、図5の機能構成が実現される。   Although not shown, the mobile terminal 200 has a hardware configuration such as a CPU, RAM, ROM, external storage device, and communication interface. The CPU executes the program and controls these hardware configurations, thereby realizing the functional configuration of FIG.

2.動作
図6A−6Bは、情報処理装置100の動作を説明するシーケンス図である。図6A−6Bにおいて、情報処理装置100のハードウェア構成はまとめて「ハードウェア」として記載されている。また、ハードウェア以外に、ホストOS111や制御アプリ119等のソフトウェアモジュールが処理の主体として記載されているが、これは、このソフトウェアモジュール(に含まれる命令群)を実行しているCPU101が、RAM102等のハードウェア構成を制御し、このソフトウェアモジュールの機能として処理を行うことを意味する。
2. Operation FIGS. 6A-6B are sequence diagrams illustrating the operation of the information processing apparatus 100. FIG. 6A-6B, the hardware configuration of the information processing apparatus 100 is collectively described as “hardware”. In addition to the hardware, software modules such as the host OS 111 and the control application 119 are described as the subject of processing. This is because the CPU 101 that executes the software module (instruction group included therein) has the RAM 102. This means that the hardware configuration such as is controlled and processing is performed as a function of the software module.

ステップS101において、情報処理装置100の電源がオンされる。CPU101は、BIOSに記憶されている情報に従って、ホストOS111を起動する(ステップS102)。ホストOS111の起動後、ホストOS111の設定またはユーザの操作により、制御アプリ119が起動する(ステップS103)。制御アプリ119は、VMM112を起動する(ステップS104)。VMM112は、仮想マシン113を起動する(ステップS105)。   In step S101, the information processing apparatus 100 is turned on. The CPU 101 activates the host OS 111 according to the information stored in the BIOS (step S102). After the activation of the host OS 111, the control application 119 is activated by the setting of the host OS 111 or a user operation (step S103). The control application 119 activates the VMM 112 (step S104). The VMM 112 activates the virtual machine 113 (step S105).

起動されると、仮想マシン113は、VMM112に対しゲストOS115のブートを指令する(ステップS106)。ブート指令を受けると、VMM112は、デバイスコントローラ103に対しゲストOS115のブートを指令する(ステップS107)。ブート指令を受けると、ハードウェアは、携帯端末200との間で、ゲストOS115の起動に用いられるデータを送受信する(ステップS108およびS109)。   When activated, the virtual machine 113 instructs the VMM 112 to boot the guest OS 115 (step S106). Upon receiving the boot command, the VMM 112 commands the device controller 103 to boot the guest OS 115 (step S107). When receiving the boot command, the hardware transmits / receives data used to start the guest OS 115 to / from the portable terminal 200 (steps S108 and S109).

ステップS108およびS109の処理は、具体的には、例えば以下の処理を含む。デバイスコントローラ103は、携帯端末200に対する読み出し(DiskRR)を行う。携帯端末200は、DiskRRに対する応答としてMBR(Master Boot Record)をデバイスコントローラ103に送る。MBRは、ブート先を特定する情報を含む。デバイスコントローラ103は、MBRを、VMM112を介して仮想マシン113の仮想CPU131に送る。仮想CPU131は、MBRを読み込み、読み込んだMBRに基づいてブート先を特定する。この例では、ブート先としてメモリ201(携帯端末200)が指定される。仮想CPU131は、特定されたブート先に対して、BL(Boot Loader)の読み込みを指令する。BLは、ゲストOS115起動のための初期化処理に用いられる情報、ゲストOS115のコア部分(の命令群)およびゲストOS115を起動する手順を記載したプログラム(以下「手順プログラム」という)を含む。この例では、CPU131は、VMM112およびデバイスコントローラ103を介して携帯端末200にBLの読み込みを指令する。この指令を受けると、携帯端末200は、BLをデバイスコントローラ103およびVMM112を介して仮想CPU131に送る。仮想CPU131は、BLを読み込み、読み込んだBLに含まれる手順プログラムに従って初期化処理を行う。初期化処理が完了すると、仮想CPU131は、ゲストOS115のコア部分を起動する。ゲストOS115のコア部分を起動すると、仮想CPU131は、VMM112を介して、デバイスコントローラ103にRAMディスクの作成を要求する。   Specifically, the processes of steps S108 and S109 include the following processes, for example. The device controller 103 performs reading (DiskRR) with respect to the mobile terminal 200. The mobile terminal 200 sends an MBR (Master Boot Record) to the device controller 103 as a response to the DiskRR. The MBR includes information for specifying a boot destination. The device controller 103 sends the MBR to the virtual CPU 131 of the virtual machine 113 via the VMM 112. The virtual CPU 131 reads the MBR and identifies the boot destination based on the read MBR. In this example, the memory 201 (mobile terminal 200) is designated as the boot destination. The virtual CPU 131 instructs the specified boot destination to read BL (Boot Loader). The BL includes information used for initialization processing for starting the guest OS 115, a core part (instruction group thereof) of the guest OS 115, and a program (hereinafter referred to as “procedure program”) describing a procedure for starting the guest OS 115. In this example, the CPU 131 instructs the portable terminal 200 to read the BL via the VMM 112 and the device controller 103. Upon receiving this command, the mobile terminal 200 sends BL to the virtual CPU 131 via the device controller 103 and the VMM 112. The virtual CPU 131 reads BL and performs initialization processing according to the procedure program included in the read BL. When the initialization process is completed, the virtual CPU 131 activates the core part of the guest OS 115. When the core part of the guest OS 115 is activated, the virtual CPU 131 requests the device controller 103 to create a RAM disk via the VMM 112.

この要求を受けると、デバイスコントローラ103は、仮想マシン113にRAMディスクの作成の要求をする。この要求は、VMM112を介して(ステップS110)、仮想マシン113に送られる(ステップS111)。   Upon receiving this request, the device controller 103 requests the virtual machine 113 to create a RAM disk. This request is sent to the virtual machine 113 via the VMM 112 (step S110) (step S111).

RAMディスク作成の要求を受けると、仮想マシン113は、RAMディスクを作成する(ステップS112)。詳細には以下のとおりである。仮想CPU131は、仮想デバイスコントローラ133に、RAMディスクの作成を指令する。この指令を受けると、仮想デバイスコントローラ133は、仮想RAM132上に仮想RAMディスク132aを作成する。この例で、仮想RAMディスク132aは、初期スクリプト用の領域およびOS本体用の領域を含む。この例で、初期スクリプト用の領域およびOS本体用の領域は、それぞれ別のRAMディスク(仮想RAMディスク132a−1および仮想RAMディスク132a−2)として認識される。「初期スクリプト」とは、ゲストOS115本体を仮想RAMディスク132a(仮想RAMディスク132a−2)に転送および起動するためのスクリプトをいう。仮想CPU131は、仮想RAMディスク132a−1をマウントするよう仮想デバイスコントローラ133に要求する。この要求を受けて、仮想デバイスコントローラ133は、仮想RAMディスク132a−1をマウントする。ここで、「マウント」とは、周辺機器(この場合は仮想RAMディスク132a−1)をコンピュータ(この場合は仮想マシン113)に認識させ、使用可能なように設定することをいう。仮想CPU131は、初期スクリプトの展開を、仮想デバイスコントローラ133に要求する。この要求を受けると、仮想デバイスコントローラ133は、仮想RAMディスク132a−1上に初期スクリプトを展開する。仮想CPU131は、仮想RAMディスク132a−1から初期スクリプトを読み込み、初期スクリプトを起動する。   Upon receiving a request for creating a RAM disk, the virtual machine 113 creates a RAM disk (step S112). Details are as follows. The virtual CPU 131 instructs the virtual device controller 133 to create a RAM disk. Upon receiving this command, the virtual device controller 133 creates a virtual RAM disk 132 a on the virtual RAM 132. In this example, the virtual RAM disk 132a includes an initial script area and an OS main body area. In this example, the initial script area and the OS body area are recognized as separate RAM disks (virtual RAM disk 132a-1 and virtual RAM disk 132a-2). “Initial script” refers to a script for transferring and starting the guest OS 115 main body to the virtual RAM disk 132a (virtual RAM disk 132a-2). The virtual CPU 131 requests the virtual device controller 133 to mount the virtual RAM disk 132a-1. In response to this request, the virtual device controller 133 mounts the virtual RAM disk 132a-1. Here, “mounting” means that the peripheral device (in this case, the virtual RAM disk 132a-1) is recognized by the computer (in this case, the virtual machine 113) and set to be usable. The virtual CPU 131 requests the virtual device controller 133 to expand the initial script. Upon receiving this request, the virtual device controller 133 develops an initial script on the virtual RAM disk 132a-1. The virtual CPU 131 reads the initial script from the virtual RAM disk 132a-1 and activates the initial script.

初期スクリプトが起動されると、仮想CPU131は、仮想RAMディスク132a−2をマウントするよう仮想デバイスコントローラ133に指令する。この指令を受けると、仮想デバイスコントローラ133は、仮想RAMディスク132a−2をマウントする。さらに、仮想CPU131は、メモリ201(メモリモードで動作している携帯端末200)を外部記憶装置としてマウントするように、仮想デバイスコントローラ133に指令する。この指令を受けると、仮想デバイスコントローラ133は、VMM112およびデバイスコントローラ103を介して、携帯端末200をマウントする。   When the initial script is activated, the virtual CPU 131 instructs the virtual device controller 133 to mount the virtual RAM disk 132a-2. Upon receiving this command, the virtual device controller 133 mounts the virtual RAM disk 132a-2. Furthermore, the virtual CPU 131 instructs the virtual device controller 133 to mount the memory 201 (the portable terminal 200 operating in the memory mode) as an external storage device. Upon receiving this instruction, the virtual device controller 133 mounts the mobile terminal 200 via the VMM 112 and the device controller 103.

RAMディスクの作成が完了すると、仮想マシン113は、RAMディスクの作成が完了した旨をVMM112に通知する(ステップS113)。RAMディスクの作成が完了した旨を通知されると、VMM112は、ゲストOS115の読み込みをデバイスコントローラ103を介して(ステップS114)、携帯端末200に指令する(ステップS115)。この指令を受けると、携帯端末200は、ゲストOS115のファイル(ゲストOS115本体)を、デバイスコントローラ103(ステップS116)およびVMM112を介して(ステップS117)、仮想マシン113に送信する(ステップS118)。仮想マシン113の仮想デバイスコントローラ133は、転送されたゲストOS115本体を仮想RAMディスク132a(詳細には仮想RAMディスク132a−2)に展開する(ステップS119)。ゲストOS115本体を展開すると、仮想CPU131は、ゲストOS115本体を起動する(ステップS120)。ゲストOS115本体の起動に際して、仮想デバイスコントローラ133は、仮想RAMディスク132a−2にOS用ファイルを展開する。   When the creation of the RAM disk is completed, the virtual machine 113 notifies the VMM 112 that the creation of the RAM disk has been completed (step S113). When notified that the creation of the RAM disk is completed, the VMM 112 instructs the portable terminal 200 to read the guest OS 115 via the device controller 103 (step S114) (step S115). Upon receiving this command, the portable terminal 200 transmits the guest OS 115 file (guest OS 115 main body) to the virtual machine 113 via the device controller 103 (step S116) and the VMM 112 (step S117) (step S118). The virtual device controller 133 of the virtual machine 113 expands the transferred guest OS 115 main body on the virtual RAM disk 132a (specifically, the virtual RAM disk 132a-2) (step S119). When the main body of the guest OS 115 is expanded, the virtual CPU 131 activates the main body of the guest OS 115 (step S120). When the main body of the guest OS 115 is activated, the virtual device controller 133 expands the OS file on the virtual RAM disk 132a-2.

また、ゲストOS115と同時に、またはゲストOS115の後に、ゲストOSアプリ116のファイルも仮想RAMディスク132aに転送される。   The file of the guest OS application 116 is also transferred to the virtual RAM disk 132a simultaneously with the guest OS 115 or after the guest OS 115.

ゲストOS115の転送が完了すると、仮想CPU131は、メモリモードの携帯端末200のアンマウント処理を行う。ここで、携帯端末200の「アンマウント」とは、携帯端末200を外部記憶装置として認識することをやめ、外部記憶装置として使用できないように設定することをいう。   When the transfer of the guest OS 115 is completed, the virtual CPU 131 performs an unmount process of the portable terminal 200 in the memory mode. Here, “unmounting” of the mobile terminal 200 means setting the mobile terminal 200 so that the mobile terminal 200 is not recognized as an external storage device and cannot be used as an external storage device.

携帯端末200においては、メモリモードからモデムモードへの切り替えが行われる(ステップS122)。この切り換えは、例えば、ユーザの操作に応じて行われる。あるいは、この切り換えは、ゲストOS115の起動が完了した後や、メモリモードの携帯端末200がアンマウントされた後に、情報処理装置100からの指示に応じて自動的に行われてもよい。   In portable terminal 200, switching from the memory mode to the modem mode is performed (step S122). This switching is performed according to a user operation, for example. Alternatively, this switching may be automatically performed according to an instruction from the information processing apparatus 100 after the activation of the guest OS 115 is completed or after the portable terminal 200 in the memory mode is unmounted.

モデムモードへの切り替えが完了すると、携帯端末200は、モデムポートの確立をデバイスコントローラ103に要求する(ステップS123)。この要求を受けると、デバイスコントローラ103は、モデムポートの確立をホストOS111に要求する(ステップS124)。モデムポートの確立を要求されると、ホストOS111は、通信ドライバの読み込みをデバイスコントローラ103に要求する(ステップS125)。この要求を受けると、デバイスコントローラ103は、HDD106から通信ドライバを読み込む(ステップS126)。この通信ドライバは、ホストOS111上で動作し、携帯端末200をモデムとして用いて通信を行うためのドライバである。   When the switching to the modem mode is completed, the mobile terminal 200 requests the device controller 103 to establish a modem port (step S123). Upon receiving this request, the device controller 103 requests the host OS 111 to establish a modem port (step S124). When requested to establish the modem port, the host OS 111 requests the device controller 103 to read the communication driver (step S125). Upon receiving this request, the device controller 103 reads a communication driver from the HDD 106 (step S126). This communication driver is a driver that operates on the host OS 111 and performs communication using the portable terminal 200 as a modem.

デバイスコントローラ103が通信ドライバを読み込むと、制御アプリ119は、ゲストOS115とホストOS111との間にブリッジを確立する(ステップS127)。「ブリッジ」とは、ホストOS111(仮想マシン113)がホストOS111を制御するための(仮想的な)伝送路、または、この伝送を行うためのソフトウェアモジュールをいう。ハードウェアとの間でブリッジを確立する相手(この例では仮想マシン113)は、制御アプリ119の設定により定められている。ソフトウェアモジュールとしてのブリッジは、VMM112の機能の一部として提供される。あるいは、ブリッジは、VMM112とは別のソフトウェアとして提供されてもよい。   When the device controller 103 reads the communication driver, the control application 119 establishes a bridge between the guest OS 115 and the host OS 111 (step S127). “Bridge” refers to a (virtual) transmission path for the host OS 111 (virtual machine 113) to control the host OS 111, or a software module for performing this transmission. A partner (a virtual machine 113 in this example) that establishes a bridge with the hardware is determined by the setting of the control application 119. The bridge as a software module is provided as a part of the function of the VMM 112. Alternatively, the bridge may be provided as software different from the VMM 112.

ブリッジが確立されると、制御アプリ119は、仮想マシン113をアクティブにする。「仮想マシン113をアクティブにする」とは、情報処理装置100のディスプレイに表示される画面が仮想マシン113による画面となり、キーボードの操作が仮想マシン113に入力される状態となることをいう。仮想マシン113をアクティブにすると、制御アプリ119は、ディスプレイロック処理を行う。「ディスプレイロック処理」とは、アクティブな仮想マシン(または物理マシン)を変更できないようにする処理をいう。多くの場合、VMM112は、アクティブな仮想マシンを切り換える機能を有しているが、「ディスプレイロック処理」は、この機能を無効にすることを意味する。   When the bridge is established, the control application 119 activates the virtual machine 113. “Activate the virtual machine 113” means that the screen displayed on the display of the information processing apparatus 100 becomes a screen by the virtual machine 113 and a keyboard operation is input to the virtual machine 113. When the virtual machine 113 is activated, the control application 119 performs display lock processing. The “display lock process” refers to a process for preventing an active virtual machine (or physical machine) from being changed. In many cases, the VMM 112 has a function of switching an active virtual machine, but “display lock processing” means disabling this function.

モデムポートが確立されると、仮想CPU131は、携帯端末200から認証キーを取得する。この例では、携帯端末200のUSIM205に記憶されている加入者情報および識別情報が認証キーとして取得される。仮想CPU131は、携帯端末200から取得した認証キーを、あらかじめ記憶している認証キーと比較する。両者が一致すると判断された場合、仮想マシン113は、携帯端末200(すなわち、携帯端末200のユーザ)が正当であると判断する。携帯端末200が正当であると判断されると、仮想マシン113は、ユーザの操作を受け付ける状態となる。両者が一致しないと判断された場合、仮想マシン113は、携帯端末200が不当であると判断する。携帯端末200が不当であると判断されると、仮想マシン113は、仮想マシン113をシャットダウンするための操作以外の操作を受け付けない状態となる。なお、この例で、仮想マシン113は、携帯端末200をモデムとして認識している。仮想マシン113は、モデムと通信する際の標準命令体系であるATコマンドにより携帯端末200と通信することにより、認証キーを取得する。   When the modem port is established, the virtual CPU 131 acquires an authentication key from the mobile terminal 200. In this example, subscriber information and identification information stored in the USIM 205 of the mobile terminal 200 are acquired as an authentication key. The virtual CPU 131 compares the authentication key acquired from the mobile terminal 200 with an authentication key stored in advance. When it is determined that both match, the virtual machine 113 determines that the mobile terminal 200 (that is, the user of the mobile terminal 200) is valid. When it is determined that the portable terminal 200 is valid, the virtual machine 113 is in a state of accepting a user operation. When it is determined that the two do not match, the virtual machine 113 determines that the mobile terminal 200 is invalid. If it is determined that the mobile terminal 200 is illegal, the virtual machine 113 is in a state in which no operation other than the operation for shutting down the virtual machine 113 is accepted. In this example, the virtual machine 113 recognizes the mobile terminal 200 as a modem. The virtual machine 113 acquires an authentication key by communicating with the mobile terminal 200 using an AT command that is a standard command system for communicating with a modem.

仮想マシン113においては、ゲストOSアプリ116が起動される(ステップS128)。ゲストOSアプリ116は、例えば、ゲストOS115が起動した後で自動的に起動するように設定されている。あるいは、ゲストOSアプリ116は、ユーザの操作に応じて起動されてもよい。ゲストOSアプリ116の起動は、ゲストOS115と同様に行われる。   In the virtual machine 113, the guest OS application 116 is activated (step S128). For example, the guest OS application 116 is set to automatically start after the guest OS 115 is started. Alternatively, the guest OS application 116 may be activated in response to a user operation. The guest OS application 116 is activated in the same manner as the guest OS 115.

ゲストOSアプリ116は、インターネットアクセスを要求する。この要求は、ブリッジにより、すなわち、仮想マシン113(ステップS130)およびVMM112を介して(ステップS131)、ホストOS111に送られる。インターネットアクセスを要求されると、デバイスコントローラ103は、通信ドライバを起動する(ステップS132)。この通信ドライバは、ホストOS111上で動作する。   The guest OS application 116 requests Internet access. This request is sent to the host OS 111 by the bridge, that is, via the virtual machine 113 (step S130) and the VMM 112 (step S131). When Internet access is requested, the device controller 103 activates the communication driver (step S132). This communication driver operates on the host OS 111.

デバイスコントローラ103は、通信ドライバの制御下で、近距離有線通信部105に通信を要求する。近距離有線通信部105は、携帯端末200に通信を要求する。携帯端末200は、この要求に応じてダイヤル発信を行い、サーバ400とのコネクションを確立する(ステップS133)。コネクションを確立すると、携帯端末200は、接続が完了した旨を近距離有線通信部105に通知する。近距離有線通信部105は、接続が完了した旨をデバイスコントローラ103に通知する。デバイスコントローラ103は、接続が完了した旨を仮想マシン113に通知する。こうして、ゲストOSアプリ116は、サーバ400との通信が可能になる。   The device controller 103 requests communication from the short-range wired communication unit 105 under the control of the communication driver. The short-range wired communication unit 105 requests communication from the mobile terminal 200. The mobile terminal 200 makes a dial call in response to this request and establishes a connection with the server 400 (step S133). When the connection is established, the mobile terminal 200 notifies the short distance wired communication unit 105 that the connection is completed. The short-range wired communication unit 105 notifies the device controller 103 that the connection is completed. The device controller 103 notifies the virtual machine 113 that the connection has been completed. In this way, the guest OS application 116 can communicate with the server 400.

仮想RAMディスク132aを用いて起動されたゲストOS115上で起動されたゲストOSアプリ116は、必要に応じて仮想RAMディスク132aに記憶されているプログラムファイルを読み込む。本実施形態によれば、ゲストOS115が起動された後に、外部記憶装置として機能している携帯端末200からゲストOS115の実行に必要なプログラムファイルを取得する必要がない。ゲストOS115が起動された後では、携帯端末200はモデムとして用いられる。すなわち、1台の携帯端末200を、シンクライアントのための仮想マシン113の起動用などの外部記憶装置および通信手段として機能させることができる。また、仮想RAMディスクを使った環境により仮想マシンをハードディスクレスPC化する事で、仮想システムのセキュリティ向上が可能になる。さらに、ゲストOS115専用のドライバを用いなくても、ネットワークを介した通信が行われる。   The guest OS application 116 activated on the guest OS 115 activated using the virtual RAM disk 132a reads a program file stored in the virtual RAM disk 132a as necessary. According to this embodiment, after the guest OS 115 is activated, there is no need to acquire a program file necessary for executing the guest OS 115 from the portable terminal 200 functioning as an external storage device. After the guest OS 115 is activated, the portable terminal 200 is used as a modem. That is, one mobile terminal 200 can function as an external storage device and communication means for starting the virtual machine 113 for a thin client. Further, by making a virtual machine a hard disk-less PC in an environment using a virtual RAM disk, the security of the virtual system can be improved. Further, communication via the network is performed without using a driver dedicated to the guest OS 115.

3.他の実施形態
本発明は上述の実施形態に限定されるものではなく、種々の変形実施が可能である。以下、変形例をいくつか説明する。以下で説明する変形例のうち2つ以上のものが組み合わせて用いられてもよい。
3. Other Embodiments The present invention is not limited to the above-described embodiments, and various modifications can be made. Hereinafter, some modifications will be described. Two or more of the modifications described below may be used in combination.

3−1.変形例1
上述の実施形態においては、情報処理装置100(物理マシン)においてはCPU101とデバイスコントローラ103とが処理を分担していたが、物理的に単一のプロセッサが、CPU101とデバイスコントローラ103とが行った処理を行ってもよい。あるいは、実施形態においてCPU101またはデバイスコントローラ103が行うものとして説明した処理を、物理的に2つ以上のプロセッサが協働して行ってもよい。要は、物理的には1つまたは2つ以上のプロセッサが、実施形態でCPU101とデバイスコントローラ103とが行うものとして説明した処理を行う制御手段として機能すればよい。仮想CPU131と仮想デバイスコントローラ133についても同様である。
3-1. Modification 1
In the above-described embodiment, the CPU 101 and the device controller 103 share processing in the information processing apparatus 100 (physical machine). However, the CPU 101 and the device controller 103 perform a single physical processor. Processing may be performed. Alternatively, the processing described as being performed by the CPU 101 or the device controller 103 in the embodiment may be physically performed by two or more processors in cooperation. In short, physically, one or more processors may function as control means for performing the processing described as being performed by the CPU 101 and the device controller 103 in the embodiment. The same applies to the virtual CPU 131 and the virtual device controller 133.

3−2.変形例2
仮想デバイスコントローラ133とデバイスコントローラ103との処理の分担は実施形態で説明したものに限定されない。実施形態において仮想デバイスコントローラ133が行うものとして説明された処理の一部を、デバイスコントローラ103が実行してもよい。その逆も同様である。
3-2. Modification 2
The sharing of processing between the virtual device controller 133 and the device controller 103 is not limited to that described in the embodiment. The device controller 103 may execute part of the processing described as being performed by the virtual device controller 133 in the embodiment. The reverse is also true.

3−3.変形例3
メモリ201(携帯端末200)のマウント処理のタイミングは、実施形態で説明したものに限定されない。ゲストOS115やゲストOSアプリ116のファイル等、必要なファイルを転送する前であれば、どのタイミングでマウント処理が行われてもよい。同様に、メモリ201のアンマウント処理のタイミングは、実施形態で説明したものに限定されない。ゲストOS115やゲストOSアプリ116のファイル等、必要なファイルを転送した後であれば、どのタイミングでアンマウント処理が行われてもよい。
3-3. Modification 3
The timing of the mounting process of the memory 201 (mobile terminal 200) is not limited to that described in the embodiment. The mounting process may be performed at any timing as long as necessary files such as the files of the guest OS 115 and the guest OS application 116 are not transferred. Similarly, the timing of the unmount process of the memory 201 is not limited to that described in the embodiment. The unmount process may be performed at any timing as long as necessary files such as the files of the guest OS 115 and the guest OS application 116 are transferred.

3−4.変形例4
ゲストOS115およびゲストOSアプリ116の一方または双方は、圧縮された状態で仮想RAMディスク132aに記憶されていてもよい。この場合において、ゲストOS115またはゲストOSアプリ116のファイルを使用するときは、仮想CPU131は、圧縮されたファイルを解凍し、仮想RAMディスク132aに展開する。仮想CPU131は、展開されたファイルを仮想RAMディスク132aから読み込み、実行する。
3-4. Modification 4
One or both of the guest OS 115 and the guest OS application 116 may be stored in the virtual RAM disk 132a in a compressed state. In this case, when using the file of the guest OS 115 or the guest OS application 116, the virtual CPU 131 decompresses the compressed file and expands it on the virtual RAM disk 132a. The virtual CPU 131 reads the expanded file from the virtual RAM disk 132a and executes it.

3−5.変形例5
ゲストOS115のファイルの構成は実施形態で説明したものに限定されない。実施形態では、ゲストOS115が、コア部分(初期スクリプト)および本体部分に分けられている例を説明したが、ゲストOS115は単一の部分で構成されてもよいし、3つ以上の部分で構成されてもよい。仮想RAMディスク132aは、ゲストOS115のファイルの構成に応じた数に区分されてもよい。ゲストOSアプリ116についても同様である。
3-5. Modification 5
The file configuration of the guest OS 115 is not limited to that described in the embodiment. In the embodiment, an example in which the guest OS 115 is divided into the core part (initial script) and the main body part has been described. However, the guest OS 115 may be configured by a single part, or may be configured by three or more parts. May be. The virtual RAM disks 132a may be divided into numbers according to the file configuration of the guest OS 115. The same applies to the guest OS application 116.

100…情報処理装置、101…CPU、102…RAM、103…デバイスコントローラ、104…BIOS・ROM、105…近距離有線通信部、106…HDD、111…ホストOS、112…VMM、113…仮想マシン、114…仮想マシン、115…ゲストOS、116…ゲストOSアプリ、117…ゲストOS、118…ゲストOSアプリ、119…制御アプリ、120…ホストOSアプリ、131…仮想CPU、132…仮想RAM、133…仮想デバイスコントローラ、134…仮想BIOS・ROM、135…仮想近距離有線通信部、200…携帯端末、201…メモリ、202…モデム、203…コントローラ、204…近距離有線通信部、205…USIM、300…ネットワーク、400…サーバ DESCRIPTION OF SYMBOLS 100 ... Information processing apparatus 101 ... CPU, 102 ... RAM, 103 ... Device controller, 104 ... BIOS / ROM, 105 ... Short-distance wired communication part, 106 ... HDD, 111 ... Host OS, 112 ... VMM, 113 ... Virtual machine , 114 ... Virtual machine, 115 ... Guest OS, 116 ... Guest OS application, 117 ... Guest OS, 118 ... Guest OS application, 119 ... Control application, 120 ... Host OS application, 131 ... Virtual CPU, 132 ... Virtual RAM, 133 ... Virtual device controller, 134 ... Virtual BIOS / ROM, 135 ... Virtual short-range wired communication unit, 200 ... Mobile terminal, 201 ... Memory, 202 ... Modem, 203 ... Controller, 204 ... Short-range wired communication unit, 205 ... USIM, 300 ... Network, 400 ... Server

Claims (5)

制御手段と、
ゲストOS、および前記ゲストOS上で動作し、ネットワークを介した通信を行うゲストアプリケーションプログラムを記憶した携帯端末と接続するインターフェースと、
仮想マシンを起動するための仮想化プログラム、前記携帯端末を用いた通信を行うためのドライバプログラムを含むホストOS、および前記ホストOSと前記ゲストOSとの間にブリッジを確立するためのブリッジプログラムを記憶した記憶手段と
を有し、
前記制御手段が、前記記憶手段から読み出した前記ホストOSを起動し、
前記制御手段が、前記ホストOS上で前記仮想化プログラムを実行し、仮想制御手段および仮想RAMを有する仮想マシンを起動し、
前記仮想制御手段が、前記仮想RAM上に仮想RAMディスクを作成し、
前記仮想制御手段が、前記携帯端末から読み出した前記ゲストOSおよび前記ゲストアプリケーションプログラムを前記仮想RAMディスクに記憶し、
前記仮想制御手段が、前記仮想RAMディスクから前記ゲストOSを起動し、
前記制御手段が、前記ブリッジプログラムを実行し、前記ゲストOSと前記ホストOSとの間に前記ブリッジを確立し、
前記仮想制御手段が、前記ゲストアプリケーションプログラムにより前記ネットワークを介した通信を行う際、前記ホストOSの前記ドライバを用いて前記携帯端末および前記ネットワークを介した通信を行う
ことを特徴とする情報処理装置。
Control means;
An interface for connecting to a guest OS and a mobile terminal that operates on the guest OS and stores a guest application program that performs communication via a network;
A virtualization program for starting a virtual machine, a host OS including a driver program for performing communication using the portable terminal, and a bridge program for establishing a bridge between the host OS and the guest OS Memorized storage means, and
The control means starts up the host OS read from the storage means,
The control means executes the virtualization program on the host OS, starts a virtual machine having virtual control means and virtual RAM,
The virtual control means creates a virtual RAM disk on the virtual RAM;
The virtual control means stores the guest OS and the guest application program read from the mobile terminal in the virtual RAM disk;
The virtual control means boots the guest OS from the virtual RAM disk;
The control means executes the bridge program to establish the bridge between the guest OS and the host OS;
The virtual control means performs communication via the portable terminal and the network using the driver of the host OS when the guest application program performs communication via the network. .
前記携帯端末は、前記情報処理装置の外部記憶装置として機能するための第1のモードと前記情報処理装置が前記ネットワークを介した通信を中継する中継装置として機能するための第2のモードとを切り換え可能であり、
前記仮想制御手段は、前記第1のモードの前記携帯端末を前記外部記憶装置として使用可能とするマウント処理を行い、
前記マウント処理の後で、前記仮想制御手段は、前記携帯端末から前記ゲストOSおよび前記ゲストアプリケーションプログラムを読み出す
ことを特徴とする請求項1に記載の情報処理装置。
The portable terminal has a first mode for functioning as an external storage device of the information processing apparatus and a second mode for the information processing apparatus to function as a relay apparatus that relays communication via the network. Switchable,
The virtual control means performs a mounting process that enables the portable terminal in the first mode to be used as the external storage device.
The information processing apparatus according to claim 1, wherein after the mounting process, the virtual control unit reads the guest OS and the guest application program from the portable terminal.
前記仮想制御手段は、前記第1のモードの前記携帯端末を前記外部記憶装置として使用不可能とするアンマウント処理を行い、
前記仮想制御手段は、前記アンマウント処理の後で、前記通信を行う
ことを特徴とする請求項2に記載の情報処理装置。
The virtual control means performs an unmount process for disabling the portable terminal in the first mode as the external storage device,
The information processing apparatus according to claim 2, wherein the virtual control unit performs the communication after the unmount process.
前記仮想化プログラムが、前記ホストOSと前記ゲストOSとを切り換える切り替え処理を含み、
前記記憶手段が、前記切り替え処理を禁止する制御プログラムを記憶し、
前記制御手段が、前記ゲストOSが起動された後で、前記制御プログラムを実行し、前記切り換え処理を禁止する
ことを特徴とする請求項1−3のいずれかの項に記載の情報処理装置。
The virtualization program includes a switching process for switching between the host OS and the guest OS;
The storage means stores a control program for prohibiting the switching process;
The information processing apparatus according to any one of claims 1 to 3, wherein the control unit executes the control program after the guest OS is activated, and prohibits the switching process.
制御手段と、ゲストOS、および前記ゲストOS上で動作し、ネットワークを介した通信を行うゲストアプリケーションプログラムを記憶した携帯端末と接続するインターフェースと、仮想マシンを起動するための仮想化プログラム、前記携帯端末を用いた通信を行うためのドライバプログラムを含むホストOS、および前記ホストOSと前記ゲストOSとの間にブリッジを確立するためのブリッジプログラムを記憶した記憶手段とを有する情報処理装置の制御方法であって、
前記制御手段が、前記記憶手段から読み出した前記ホストOSを起動するステップと、
前記制御手段が、前記ホストOS上で前記仮想化プログラムを実行し、仮想制御手段および仮想RAMを有する仮想マシンを起動するステップと、
前記仮想制御手段が、前記仮想RAM上に仮想RAMディスクを作成するステップと、
前記仮想制御手段が、前記携帯端末から読み出した前記ゲストOSおよび前記ゲストアプリケーションプログラムを前記仮想RAMディスクに記憶するステップと、
前記仮想制御手段が、前記仮想RAMディスクから前記ゲストOSを起動するステップと、
前記制御手段が、前記ブリッジプログラムを実行し、前記ゲストOSと前記ホストOSとの間に前記ブリッジを確立するステップと、
前記仮想制御手段が、前記ゲストアプリケーションプログラムにより前記ネットワークを介した通信を行う際、前記ホストOSの前記ドライバを用いて前記携帯端末および前記ネットワークを介した通信を行うステップと
を有する制御方法。
A control unit, a guest OS, an interface that operates on the guest OS and stores a guest application program that performs communication via a network, and a virtual program for starting a virtual machine; Control method for information processing apparatus, comprising: host OS including driver program for performing communication using terminal; and storage means storing bridge program for establishing bridge between host OS and guest OS Because
The control means starting the host OS read from the storage means;
The control means executing the virtualization program on the host OS and starting a virtual machine having virtual control means and virtual RAM;
The virtual control means creating a virtual RAM disk on the virtual RAM;
The virtual control means storing the guest OS and the guest application program read from the portable terminal in the virtual RAM disk;
The virtual control means starting the guest OS from the virtual RAM disk;
The control means executing the bridge program to establish the bridge between the guest OS and the host OS;
The virtual control means includes a step of performing communication via the mobile terminal and the network using the driver of the host OS when the guest application program performs communication via the network.
JP2009087699A 2009-03-31 2009-03-31 Information processing apparatus and control method Expired - Fee Related JP4918112B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009087699A JP4918112B2 (en) 2009-03-31 2009-03-31 Information processing apparatus and control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009087699A JP4918112B2 (en) 2009-03-31 2009-03-31 Information processing apparatus and control method

Publications (2)

Publication Number Publication Date
JP2010238130A true JP2010238130A (en) 2010-10-21
JP4918112B2 JP4918112B2 (en) 2012-04-18

Family

ID=43092367

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009087699A Expired - Fee Related JP4918112B2 (en) 2009-03-31 2009-03-31 Information processing apparatus and control method

Country Status (1)

Country Link
JP (1) JP4918112B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014235501A (en) * 2013-05-31 2014-12-15 株式会社日立製作所 Control method of storage device, storage device and information processing device
CN119293875A (en) * 2023-10-20 2025-01-10 智识神工(上海)信息技术股份有限公司 A secure portable device and system for protecting user data

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005318455A (en) * 2004-04-30 2005-11-10 Kyocera Corp Mobile communication terminal device, communication system, and communication method
JP2006185446A (en) * 2004-12-22 2006-07-13 Microsoft Corp Replicated virtual machine
JP2007514238A (en) * 2003-12-18 2007-05-31 インテル・コーポレーション Virtual network interface
JP2007243344A (en) * 2006-03-06 2007-09-20 Ntt Docomo Inc Communication method, connection management server, and mobile phone
JP2008052714A (en) * 2006-07-25 2008-03-06 Ntt Docomo Inc Multiple operating system switching control device and computer system
JP2008146566A (en) * 2006-12-13 2008-06-26 Hitachi Ltd Computer, virtual device control method and program thereof
JP2009026031A (en) * 2007-07-19 2009-02-05 Hitachi Ltd Thin client system, information processing method, and information processing program

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007514238A (en) * 2003-12-18 2007-05-31 インテル・コーポレーション Virtual network interface
JP2005318455A (en) * 2004-04-30 2005-11-10 Kyocera Corp Mobile communication terminal device, communication system, and communication method
JP2006185446A (en) * 2004-12-22 2006-07-13 Microsoft Corp Replicated virtual machine
JP2007243344A (en) * 2006-03-06 2007-09-20 Ntt Docomo Inc Communication method, connection management server, and mobile phone
JP2008052714A (en) * 2006-07-25 2008-03-06 Ntt Docomo Inc Multiple operating system switching control device and computer system
JP2008146566A (en) * 2006-12-13 2008-06-26 Hitachi Ltd Computer, virtual device control method and program thereof
JP2009026031A (en) * 2007-07-19 2009-02-05 Hitachi Ltd Thin client system, information processing method, and information processing program

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014235501A (en) * 2013-05-31 2014-12-15 株式会社日立製作所 Control method of storage device, storage device and information processing device
CN119293875A (en) * 2023-10-20 2025-01-10 智识神工(上海)信息技术股份有限公司 A secure portable device and system for protecting user data

Also Published As

Publication number Publication date
JP4918112B2 (en) 2012-04-18

Similar Documents

Publication Publication Date Title
US8316133B2 (en) Thin client system using session managing server and session managing method
US7032053B2 (en) System and method for loading, executing, and adapting a portable running operation system from a removable module to multiple computer systems
US7225440B2 (en) System and method for manufacturing and updating insertable portable operating system module
US7225448B2 (en) System and method for hibernating application state data on removable module
US20050050339A1 (en) System and method for securing a portable processing module
CN108206842B (en) Cloud desktop remote access method and system
US20070106776A1 (en) Information processing system and method of assigning information processing device
CN102170473A (en) Resource sharing system, mobile terminal and resource sharing method
WO2007105279A1 (en) Portable communication apparatus
JP4918112B2 (en) Information processing apparatus and control method
US10379872B1 (en) Method for creation of a device driver for a peripheral device
KR101201095B1 (en) Portable computing environment
JP4909332B2 (en) Information processing apparatus and device recognition method
US7120789B2 (en) System and method for portable on-demand central processing unit
JP5166307B2 (en) Connection device utilization system and method
JP2008004010A (en) COMMUNICATION DEVICE AND ITS CONTROL METHOD
JP6043615B2 (en) Function use control device, function use control method, function use control program
CN101131641B (en) User interface management apparatus and method for reacting to system state change
US20070245359A1 (en) Communication control apparatus, communication control program, and communication driver registration method
KR20040061052A (en) Usb apparatus having a remote control function and remote controlling method thereof
JP5812504B2 (en) Thin client terminal system
US20050038945A1 (en) System and method for interfacing a portale processing unit with computer system
CN101336412B (en) Method for installing auxiliary unit on computer
JP2021196837A (en) Information processor and program
CN118449855B (en) Network configuration method and electronic equipment

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110225

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110308

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110509

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20110719

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111019

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20111024

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: 20120124

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120127

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150203

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4918112

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees