JP4755702B2 - Information processing apparatus and communication method - Google Patents

Information processing apparatus and communication method Download PDF

Info

Publication number
JP4755702B2
JP4755702B2 JP2009074810A JP2009074810A JP4755702B2 JP 4755702 B2 JP4755702 B2 JP 4755702B2 JP 2009074810 A JP2009074810 A JP 2009074810A JP 2009074810 A JP2009074810 A JP 2009074810A JP 4755702 B2 JP4755702 B2 JP 4755702B2
Authority
JP
Japan
Prior art keywords
virtual machine
data
acquisition
request
acquired
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.)
Expired - Fee Related
Application number
JP2009074810A
Other languages
Japanese (ja)
Other versions
JP2010231251A (en
Inventor
悠利 江口
真生 大畑
賢 太田
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 JP2009074810A priority Critical patent/JP4755702B2/en
Publication of JP2010231251A publication Critical patent/JP2010231251A/en
Application granted granted Critical
Publication of JP4755702B2 publication Critical patent/JP4755702B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)
  • Telephonic Communication Services (AREA)

Description

本発明は、複数の仮想マシンを実行する情報処理装置におけるデータ通信に関する。   The present invention relates to data communication in an information processing apparatus that executes a plurality of virtual machines.

物理的に単一の通信端末において、複数の仮想マシンを動作させる技術が知られている(特許文献1−7参照)。特許文献1は、端末に保存されたスケルトンファイルにアクセスすると、リモートサーバからデータファイルを取得する技術を開示している。特許文献2は、外部と通信するために、ホストOSのTCP/IPスタックを用いて通信を行う技術を開示している。特許文献3は、異なる仮想マシン上で動作するアプリケーション同士が通信により連携する技術を開示している。特許文献4は、仮想化ソフトウェアにおいて、外部と通信している仮想マシンを特定し、受信したパケットをどの仮想マシンに送信するか判定する技術を開示している。特許文献5は、サービスOSとゲストOSとを有する装置において、ゲストOS上のFTPクライアントからFTP接続要求を受け取ると、サービスOS側の仮想マシンが通信を確立することを開示している。特許文献6は、複数の仮想マシンを有する情報処理装置において、ある仮想マシンにおいてエラーが発生した場合に、他の仮想マシンの動作を継続させる技術を開示している。特許文献7は、複数のVMMを有する装置において、特権イベントが発生した場合に、特権イベントを処理すべきVMMを特定し、そのVMMに制御を移行させる技術を開示している。   A technique for operating a plurality of virtual machines in a physically single communication terminal is known (see Patent Documents 1-7). Patent Document 1 discloses a technique for acquiring a data file from a remote server when accessing a skeleton file stored in a terminal. Patent Document 2 discloses a technique for performing communication using a TCP / IP stack of a host OS in order to communicate with the outside. Patent Document 3 discloses a technology in which applications running on different virtual machines cooperate through communication. Japanese Patent Application Laid-Open No. 2004-133867 discloses a technique for identifying a virtual machine communicating with the outside and determining to which virtual machine a received packet is transmitted in virtualization software. Patent Document 5 discloses that in an apparatus having a service OS and a guest OS, a virtual machine on the service OS side establishes communication when an FTP connection request is received from an FTP client on the guest OS. Patent Document 6 discloses a technique for continuing the operation of another virtual machine when an error occurs in a certain virtual machine in an information processing apparatus having a plurality of virtual machines. Patent Document 7 discloses a technique for specifying a VMM that should process a privileged event and transferring control to that VMM when a privileged event occurs in an apparatus having a plurality of VMMs.

米国特許第6735601号明細書US Pat. No. 6,735,601 米国特許第7424710号明細書US Pat. No. 7,424,710 米国特許第7346909号明細書US Pat. No. 7,346,909 米国特許第7356818号明細書US Pat. No. 7,356,818 特開2008−299617号公報JP 2008-299617 A 特開2007−323142号公報JP 2007-323142 A 特表2007−505402号公報Special table 2007-505402

特許文献1−7は、特定の接続先を介してのみアクセス可能なように制限されたサーバに対して、ある仮想マシン上のアプリケーションがデータの取得を試みてそれが失敗した場合の処理について開示していない。
本発明は、ある仮想マシンからのデータの取得が失敗することが予測される場合、または、データの取得が失敗した場合に、自動的に別の仮想マシンからデータの取得を試みる技術を提供する。
Patent Documents 1 to 7 disclose processing when an application on a virtual machine attempts to acquire data and fails for a server that is restricted to be accessible only through a specific connection destination. Not done.
The present invention provides a technique for automatically trying to acquire data from another virtual machine when data acquisition from one virtual machine is predicted to fail or when data acquisition fails. .

本発明は、通信装置と、第1の仮想マシンおよび第2の仮想マシンを実現するためのプログラム、前記第2の仮想マシン上で動作し、前記通信装置および特定の接続先を介してデータを取得する第1のアプリケーションを実現するためのプログラム、ならびに前記第1の仮想マシン上で動作し、前記接続先以外の接続先および前記通信装置を介してデータを取得する第2のアプリケーションを実現するためのプログラムを記憶した記憶装置と、前記記憶装置に記憶されたプログラムに従った処理を行うプロセッサとを有し、前記第1の仮想マシンが、前記第2のアプリケーションから出された、前記通信装置を介してデータを取得することを要求する取得要求を検知する検知手段と、前記検知手段により検知された取得要求により要求されたデータを、前記第1の仮想マシンが取得できるか判定する第1の判定手段と、前記データを取得できないと前記第1の判定手段が判定した場合、前記第2の仮想マシンに対して、前記データを取得するように要求をする要求手段とを有し、前記第2の仮想マシンが、前記要求を受けると、前記通信装置を介して前記データを取得する第1の取得手段を有することを特徴とする情報処理装置を提供する。
この情報処理装置によれば、第1の仮想マシンがデータを取得できないと判定された場合においても、第2の仮想マシンによるデータの取得が試みられる。
The present invention relates to a communication device, a program for realizing the first virtual machine and the second virtual machine, and operates on the second virtual machine, and receives data via the communication device and a specific connection destination. A program for realizing a first application to be acquired and a second application that operates on the first virtual machine and acquires data via a connection destination other than the connection destination and the communication device And a communication device including a storage device storing a program for storing and a processor performing processing according to the program stored in the storage device, wherein the first virtual machine is issued from the second application. Detection means for detecting an acquisition request for requesting acquisition of data via the apparatus, and requested by the acquisition request detected by the detection means When the first determination unit determines whether the first virtual machine can acquire data, and the first determination unit determines that the data cannot be acquired, the second virtual machine Requesting means for making a request to obtain the data, and when the second virtual machine receives the request, the second virtual machine has first obtaining means for obtaining the data via the communication device. An information processing apparatus characterized by the above is provided.
According to this information processing apparatus, even when it is determined that the first virtual machine cannot acquire data, acquisition of data by the second virtual machine is attempted.

また、本発明は、通信装置と、第1の仮想マシンおよび第2の仮想マシンを実現するためのプログラム、前記第2の仮想マシン上で動作し、前記通信装置および特定の接続先を介してデータを取得する第1のアプリケーションを実現するためのプログラム、ならびに前記第1の仮想マシン上で動作し、前記特定の接続先以外の接続先および前記通信装置を介してデータを取得する第2のアプリケーションを実現するためのプログラムを記憶した記憶装置と、前記記憶装置に記憶されたプログラムに従った処理を行うプロセッサと、を有し、前記第1の仮想マシンが、前記第2のアプリケーションから出された、前記通信装置を介してデータを取得することを要求する取得要求を検知する検知手段と、前記取得要求により要求されるデータの取得を試みる第2の取得手段と、前記検知手段により検知された取得要求により要求されたデータを、前記第2の取得手段が取得できたか判定する第1の判定手段と、前記データを取得できなかったと前記第1の判定手段が判定した場合、前記第2の仮想マシンに対して、前記データを取得するように要求をする要求手段とを有し、前記第2の仮想マシンが、前記要求を受けると、前記通信装置を介して前記データを取得する第1の取得手段を有することを特徴とする情報処理装置を提供する。
この情報処理装置によれば、第1の仮想マシンがデータを取得できなかったと判定された場合においても、第2の仮想マシンによるデータの取得が試みられる。
The present invention also provides a communication device, a program for realizing the first virtual machine and the second virtual machine, and operates on the second virtual machine, via the communication device and a specific connection destination. A program for realizing a first application for acquiring data, and a second program that operates on the first virtual machine and acquires data via a connection destination other than the specific connection destination and the communication device A storage device that stores a program for realizing an application; and a processor that performs processing according to the program stored in the storage device, wherein the first virtual machine is output from the second application. Detection means for detecting an acquisition request for requesting acquisition of data via the communication device, and acquisition of data requested by the acquisition request. Second acquisition means for trying, first determination means for determining whether the second acquisition means has acquired the data requested by the acquisition request detected by the detection means, and the data cannot be acquired If the first determination means determines, the request requesting means requests the second virtual machine to acquire the data, and the second virtual machine issues the request. When received, the information processing apparatus includes a first acquisition unit that acquires the data via the communication apparatus.
According to this information processing apparatus, even when it is determined that the first virtual machine could not acquire data, acquisition of data by the second virtual machine is attempted.

好ましい態様において、前記取得要求が、前記データを特定するための文字列を含み、前記第1の仮想マシンは、文字列のパターンを示す情報を記憶する第1の記憶手段を有し、前記検知手段により検知された取得要求に含まれる文字列の所定の一部または全部が前記第1の記憶手段に記憶されている情報と一致した場合、前記第1の判定手段は、前記データを取得できないと判定してもよい。
この情報処理装置によれば、特定のパターンの文字列を含む取得要求に係るデータの取得が、第2の仮想マシンに自動的に要求される。
In a preferred aspect, the acquisition request includes a character string for specifying the data, and the first virtual machine includes first storage means for storing information indicating a pattern of the character string, and the detection When the predetermined part or all of the character string included in the acquisition request detected by the means matches the information stored in the first storage means, the first determination means cannot acquire the data May be determined.
According to this information processing apparatus, the second virtual machine is automatically requested to acquire data related to an acquisition request including a character string of a specific pattern.

別の好ましい態様において、前記取得要求が、前記データを特定するための文字列を含み、前記第1の仮想マシンは、前記第1の仮想マシンが取得できなかったデータの所在を示す所在情報の履歴、または、前記第2の仮想マシンが取得できたデータの所在を示す所在情報の履歴を示す情報を記憶する第1の記憶手段を有し、前記検知手段により検知された取得要求に含まれる文字列の所定の一部または全部が、前記第1の記憶手段に記憶されている情報と一致した場合、前記第1の判定手段は、前記データを取得できないと判定してもよい。
この情報処理装置によれば、第1の仮想マシンが取得できなかったデータの所在情報の履歴または第2の仮想マシンが取得できたデータの所在を示す所在情報の履歴と一致する文字列を含む取得要求に係るデータ取得が、第2の仮想マシンに自動的に要求される。
In another preferable aspect, the acquisition request includes a character string for specifying the data, and the first virtual machine is a location information indicating a location of data that the first virtual machine could not acquire. It has the 1st storage means which memorizes the history or the information which shows the history of the location information which shows the location of the data which the 2nd virtual machine has acquired, and is contained in the acquisition request detected by the detection means When a predetermined part or all of the character string matches information stored in the first storage unit, the first determination unit may determine that the data cannot be acquired.
According to this information processing apparatus, the first virtual machine includes a character string that matches the history of location information of data that could not be acquired or the location information history that indicates the location of data that could be acquired by the second virtual machine. Data acquisition related to the acquisition request is automatically requested to the second virtual machine.

さらに別の好ましい態様において、前記第2の仮想マシンは、前記第1の取得手段が前記データを取得した場合、前記データを取得できたことを示す結果を前記第1の仮想マシンに送信する送信手段を有し、前記第1の仮想マシンは、前記第2の仮想マシンから前記結果を受信した場合、前記結果に係るデータの所在を示す所在情報を用いて前記第1の記憶手段に記憶されている履歴を更新する更新手段を有してもよい。
この情報処理装置によれば、第2の仮想マシンにおけるデータの取得結果に応じて、第1の記憶手段に記憶されている履歴が書き替えられる。
In still another preferred aspect, when the first acquisition unit acquires the data, the second virtual machine transmits a result indicating that the data has been acquired to the first virtual machine. And when the first virtual machine receives the result from the second virtual machine, the first virtual machine is stored in the first storage unit using location information indicating a location of data related to the result. Update means for updating the existing history.
According to this information processing apparatus, the history stored in the first storage unit is rewritten according to the data acquisition result in the second virtual machine.

さらに別の好ましい態様において、前記第2の仮想マシンは、前記第1の取得手段が取得したデータの所在を示す所在情報の履歴を示す情報を記憶する第2の記憶手段を有し、前記第1の仮想マシンは、前記検知手段により検知された前記取得要求により要求される前記データの取得の可否の判定を前記第2の仮想マシンに依頼する依頼手段を有し、前記第2の仮想マシンは、前記依頼を受けると、前記データの所在情報の所定の一部または全部が、前記第2の記憶手段に記憶されている情報と一致するか判定する第2の判定手段を有し、前記データの所在情報の所定の一部または全部が前記第2の記憶手段に記憶されている情報と一致すると前記第2の判定手段により判定された場合、前記第1の取得手段が、前記データを取得してもよい。
この情報処理装置によれば、データの取得の可否の判定精度がより高められる。
In still another preferred aspect, the second virtual machine has second storage means for storing information indicating a history of location information indicating the location of data acquired by the first acquisition means, The first virtual machine has request means for requesting the second virtual machine to determine whether or not to acquire the data requested by the acquisition request detected by the detection means, and the second virtual machine Receives the request, and has second determination means for determining whether a predetermined part or all of the location information of the data matches information stored in the second storage means, When the second determination unit determines that a predetermined part or all of the data location information matches the information stored in the second storage unit, the first acquisition unit stores the data May get
According to this information processing apparatus, the accuracy of determining whether or not data can be acquired is further improved.

さらに別の好ましい態様において、前記第1の仮想マシンは、第1のデータを取得する第2の取得手段を有し、前記第2の取得手段により取得された前記第1のデータが、第2のデータの所在を示す所在情報を含み、前記第1の仮想マシンは、前記第1のデータから前記第2のデータの所在情報を抽出する抽出手段を有し、前記抽出手段により抽出された前記所在情報の所定の一部または全部が前記第1の記憶手段に記憶された情報に一致したとき、前記第1の判定手段は、前記第2のデータを取得できないと判定してもよい。
この情報処理装置によれば、第2のデータについて取得要求が出されなくても、第2のデータの取得の可否が判断される。
In still another preferred aspect, the first virtual machine has second acquisition means for acquiring first data, and the first data acquired by the second acquisition means is second The first virtual machine has extraction means for extracting the location information of the second data from the first data, and the extraction means extracts the location information of the second data. When the predetermined part or all of the location information matches the information stored in the first storage unit, the first determination unit may determine that the second data cannot be acquired.
According to this information processing apparatus, whether or not the second data can be acquired is determined even if an acquisition request is not issued for the second data.

さらに別の好ましい態様において、前記第2のデータを取得できないと前記第1の判定手段が判定しなかった場合、前記第2の取得手段は、前記第2のデータを取得してもよい。
この情報処理装置によれば、第1の仮想マシンで取得できるデータについては第1の仮想マシンで取得される。
In still another preferred aspect, when the first determination unit does not determine that the second data cannot be acquired, the second acquisition unit may acquire the second data.
According to this information processing apparatus, data that can be acquired by the first virtual machine is acquired by the first virtual machine.

さらに別の好ましい態様において、前記第1のデータが、データを構成するための制御情報を含み、前記制御情報が前記第1の仮想マシンに対応しないものであった場合、前記要求手段が、前記データを取得するように前記第2の仮想マシンに要求してもよい。
この情報処理装置によれば、第1の仮想マシンと対応しない制御情報に対応するデータは、第2の仮想マシンでの取得が試みられる。
In still another preferred aspect, when the first data includes control information for configuring data, and the control information does not correspond to the first virtual machine, the request unit includes You may request the second virtual machine to obtain data.
According to this information processing apparatus, data corresponding to control information that does not correspond to the first virtual machine is attempted to be acquired by the second virtual machine.

さらに別の好ましい態様において、この情報処理装置は、表示装置を有し、前記第2の仮想マシンが、前記第1の取得手段により取得されたデータに従った画像を前記表示装置に表示させる表示手段を有してもよい。
この情報処理装置によれば、第2の仮想マシンでデータを取得すると、取得したデータに従った画像が自動的に表示される。
In still another preferred aspect, the information processing apparatus includes a display device, and the second virtual machine displays the image according to the data acquired by the first acquisition unit on the display device. You may have a means.
According to this information processing apparatus, when data is acquired by the second virtual machine, an image according to the acquired data is automatically displayed.

さらに別の好ましい態様において、この情報処理装置は、前記通信装置を介した通信が許可される第1の動作モードと、前記通信装置を介した通信が許可されない第2の動作モードとを有し、前記要求手段は、前記動作モードが前記第1の動作モードである場合に、前記データを取得するように前記第2の仮想マシンに要求してもよい。
この情報処理装置によれば、第2の仮想マシンに対する無駄な要求が抑制される。
In yet another preferred aspect, the information processing apparatus has a first operation mode in which communication via the communication device is permitted and a second operation mode in which communication via the communication device is not permitted. The request unit may request the second virtual machine to acquire the data when the operation mode is the first operation mode.
According to this information processing apparatus, useless requests for the second virtual machine are suppressed.

さらに、本発明は、通信装置と、第1の仮想マシンおよび第2の仮想マシンを実現するためのプログラム、前記第2の仮想マシン上で動作し、前記通信装置および特定の接続先を介してデータを取得する第1のアプリケーションを実現するためのプログラム、ならびに前記第1の仮想マシン上で動作し、前記特定の接続先とは別の接続先および前記通信装置を介してデータを取得する第2のアプリケーションを実現するためのプログラムを記憶した記憶装置と、前記記憶装置に記憶されたプログラムに従った処理を行うプロセッサとを有する情報処理装置における通信方法であって、前記第1の仮想マシンが、前記第2のアプリケーションから出された、前記通信装置を介してデータを取得することを要求する取得要求を検知するステップと、前記第1の仮想マシンが、前記検知された取得要求により要求されたデータを、前記第1の仮想マシンが取得できるか判定するステップと、前記第1の仮想マシンが前記データを取得できないと判定された場合、前記第2の仮想マシンに対して、前記データを取得するように要求をするステップと、前記第2の仮想マシンが、前記要求を受けると、前記通信装置を介して前記データを取得するステップとを有することを特徴とする通信方法を提供する。
この通信方法によれば、第1の仮想マシンがデータを取得できないと判定された場合においても、第2の仮想マシンによるデータの取得が試みられる。
Furthermore, the present invention provides a communication device, a program for realizing the first virtual machine and the second virtual machine, and operates on the second virtual machine, via the communication device and a specific connection destination. A program for realizing a first application for acquiring data, and a program that operates on the first virtual machine and acquires data via a connection destination different from the specific connection destination and the communication device A communication method in an information processing apparatus, comprising: a storage device storing a program for realizing the application 2; and a processor that performs processing according to the program stored in the storage device, wherein the first virtual machine Detecting an acquisition request issued from the second application for requesting acquisition of data via the communication device; Determining whether the first virtual machine can acquire the data requested by the detected acquisition request, and determining that the first virtual machine cannot acquire the data; If the second virtual machine receives the request, the second virtual machine requests the second virtual machine to acquire the data, and receives the request via the communication device. And a step of obtaining.
According to this communication method, even when it is determined that the first virtual machine cannot acquire data, acquisition of data by the second virtual machine is attempted.

さらに、本発明は、通信装置と、第1の仮想マシンおよび第2の仮想マシンを実現するためのプログラム、前記第2の仮想マシン上で動作し、前記通信装置および特定の接続先を介してデータを取得する第1のアプリケーションを実現するためのプログラム、ならびに前記第1の仮想マシン上で動作し、前記特定の接続先とは別の接続先および前記通信装置を介してデータを取得する第2のアプリケーションを実現するためのプログラムを記憶した記憶装置と、前記記憶装置に記憶されたプログラムに従った処理を行うプロセッサとを有する情報処理装置における通信方法であって、前記第1の仮想マシンが、前記第2のアプリケーションから出された、前記通信装置を介してデータを取得することを要求する取得要求を検知するステップと、前記第1の仮想マシンが、前記取得要求により要求されるデータの取得を試みるステップと、前記第1の仮想マシンが、前記検知された取得要求により要求されたデータを取得できたか判定するステップと、前記第1の仮想マシンが、前記データを取得できなかったと判定した場合、前記第2の仮想マシンに対して、前記データを取得するように要求をするステップと、前記第2の仮想マシンが、前記要求を受けると、前記通信装置を介して前記データを取得するステップとを有することを特徴とする通信方法を提供する。
この通信方法によれば、第1の仮想マシンがデータを取得できなかったと判定された場合においても、第2の仮想マシンによるデータの取得が試みられる。
Furthermore, the present invention provides a communication device, a program for realizing the first virtual machine and the second virtual machine, and operates on the second virtual machine, via the communication device and a specific connection destination. A program for realizing a first application for acquiring data, and a program that operates on the first virtual machine and acquires data via a connection destination different from the specific connection destination and the communication device A communication method in an information processing apparatus, comprising: a storage device storing a program for realizing the application 2; and a processor that performs processing according to the program stored in the storage device, wherein the first virtual machine Detecting an acquisition request issued from the second application for requesting acquisition of data via the communication device; The first virtual machine attempting to acquire data requested by the acquisition request; and determining whether the first virtual machine has acquired the data requested by the detected acquisition request; If the first virtual machine determines that the data could not be acquired, the step of requesting the second virtual machine to acquire the data; and And receiving the request, obtaining the data via the communication device.
According to this communication method, even when it is determined that the first virtual machine could not acquire data, acquisition of data by the second virtual machine is attempted.

一実施形態に係る携帯電話機10のハードウェア構成を示す図である。It is a figure which shows the hardware constitutions of the mobile telephone 10 which concerns on one Embodiment. 携帯電話機10のソフトウェア構成を示す図である。3 is a diagram showing a software configuration of the mobile phone 10. FIG. 第1実施形態に係る携帯電話機10の機能構成を示す図である。It is a figure which shows the function structure of the mobile telephone 10 which concerns on 1st Embodiment. 判定部205で用いられるパターン情報を例示する図である。It is a figure which illustrates the pattern information used by the determination part. 判定部205で用いられる履歴情報を例示する図である。It is a figure which illustrates the history information used by the judgment part. 取得可否の判定処理を示すフローチャートである。It is a flowchart which shows the determination process of availability. コンテンツの取得処理を示すフローチャートである。It is a flowchart which shows the acquisition process of content. 履歴情報の更新処理を示すフローチャートである。It is a flowchart which shows the update process of log | history information. 第2実施形態に係る携帯電話機10の機能構成を示す図である。It is a figure which shows the function structure of the mobile telephone 10 which concerns on 2nd Embodiment. 取得可否の判定処理を示すフローチャートである。It is a flowchart which shows the determination process of availability. 判定の依頼を受信したときの処理を示すフローチャートである。It is a flowchart which shows a process when the request for determination is received. コンテンツ取得処理を示す図である。It is a figure which shows a content acquisition process. 第3実施形態に係る携帯電話機10の機能構成を示す図である。It is a figure which shows the function structure of the mobile telephone 10 which concerns on 3rd Embodiment. 第1のコンテンツを取得したときの処理を示すフローチャートである。It is a flowchart which shows a process when a 1st content is acquired. 第2のコンテンツの取得が要求されたときのフローチャートである。It is a flowchart when acquisition of the 2nd content is requested | required. コンテンツ取得処理を示すフローチャートである。It is a flowchart which shows a content acquisition process.

1.ハードウェア構成およびソフトウェア構成の概要
図1は、一実施形態に係る携帯電話機10のハードウェア構成を示す図である。携帯電話機10は、本発明に係る情報処理装置の一例である。携帯電話機10は、CPU(Central Processing Unit)20と、メモリ21と、記憶装置30と、キーパッド31と、ディスプレイ32と、スピーカ33と、通信装置34とを有する。
1. Overview of Hardware Configuration and Software Configuration FIG. 1 is a diagram illustrating a hardware configuration of a mobile phone 10 according to an embodiment. The mobile phone 10 is an example of an information processing apparatus according to the present invention. The cellular phone 10 includes a CPU (Central Processing Unit) 20, a memory 21, a storage device 30, a keypad 31, a display 32, a speaker 33, and a communication device 34.

図2は、携帯電話機10のソフトウェア構成を示す図である。携帯電話機10のソフトウェアは、仮想化ソフトウェア(Virtual Machine Manager、以下「VMM」という)40と、仮想マシン41(第1の仮想マシンの一例)と、仮想マシン42(第2の仮想マシンの一例)とを有する。以下、図1および図2を参照して携帯電話機10の構成を説明する。   FIG. 2 is a diagram illustrating a software configuration of the mobile phone 10. The software of the mobile phone 10 includes virtualization software (Virtual Machine Manager, hereinafter referred to as “VMM”) 40, a virtual machine 41 (an example of a first virtual machine), and a virtual machine 42 (an example of a second virtual machine). And have. Hereinafter, the configuration of the mobile phone 10 will be described with reference to FIGS. 1 and 2.

CPU20(プロセッサの一例)は、メモリ21上に展開されたソフトウェアを実行する処理装置である。メモリ21は、CPU20がプログラムを実行する際のワークエリアとして機能する記憶装置である。記憶装置30は、VMM40、OS(Operating System)、アプリケーション等のプログラムや、設定情報、コンテンツ等のデータを記憶する記憶装置、例えばフラッシュメモリである。この例では、記憶装置30からロードされたプログラムやデータがメモリ21上に展開され、CPU20により実行される。また、CPU20がVMM40を実行することにより、携帯電話機10の内部に仮想マシン41および仮想マシン42が形成される。   The CPU 20 (an example of a processor) is a processing device that executes software expanded on the memory 21. The memory 21 is a storage device that functions as a work area when the CPU 20 executes a program. The storage device 30 is a storage device, such as a flash memory, that stores programs such as the VMM 40, an OS (Operating System), an application, and data such as setting information and content. In this example, programs and data loaded from the storage device 30 are expanded on the memory 21 and executed by the CPU 20. Further, when the CPU 20 executes the VMM 40, a virtual machine 41 and a virtual machine 42 are formed inside the mobile phone 10.

キーパッド31は、ユーザの操作に応じた信号をCPU20に供給する入力装置である。ユーザによる操作は、単一のキーの押し下げ、複数のキーの同時押しなどがある。キーパッド31が操作されると、操作を示す情報がVMM40を介して仮想マシン41または仮想マシン42に伝達される。仮想マシン41または仮想マシン42の内部では、OSがアプリケーションに操作を示す情報を伝達する。これにより、ユーザによるキーパッド31の操作に応じて、メニュー選択や文字入力等の処理が行われる。   The keypad 31 is an input device that supplies a signal corresponding to a user operation to the CPU 20. User operations include pressing a single key, simultaneously pressing a plurality of keys, and the like. When the keypad 31 is operated, information indicating the operation is transmitted to the virtual machine 41 or the virtual machine 42 via the VMM 40. In the virtual machine 41 or the virtual machine 42, the OS transmits information indicating an operation to the application. As a result, processing such as menu selection and character input is performed according to the operation of the keypad 31 by the user.

ディスプレイ32は、仮想マシン41または仮想マシン42において実行されているアプリケーションプログラムの処理結果を画像として出力する出力装置である。ユーザがアプリケーションでコンテンツ(データ)を利用すると、そのコンテンツに応じた画面がディスプレイ32に表示される。ユーザは、ディスプレイ32に表示された画面を見ながらキーパッド31を操作し、携帯電話機10に情報を入力する。スピーカ33は、仮想マシン41または仮想マシン42において実行されているアプリケーションプログラムの処理結果を音(音声、音楽等)として出力する出力装置である。   The display 32 is an output device that outputs the processing result of the application program executed in the virtual machine 41 or the virtual machine 42 as an image. When the user uses content (data) in the application, a screen corresponding to the content is displayed on the display 32. The user operates the keypad 31 while viewing the screen displayed on the display 32 and inputs information to the mobile phone 10. The speaker 33 is an output device that outputs the processing result of the application program executed in the virtual machine 41 or the virtual machine 42 as sound (sound, music, etc.).

通信装置34は、外部の端末装置と通信するための装置である。この例で、通信装置34は、移動通信網用のアンテナ、通信プロセッサ、無線LAN(Local Area Network)アダプタ等を含む。   The communication device 34 is a device for communicating with an external terminal device. In this example, the communication device 34 includes an antenna for a mobile communication network, a communication processor, a wireless LAN (Local Area Network) adapter, and the like.

VMM40は、物理的に単一の装置(携帯電話機10)上に、複数の仮想的な装置(仮想マシン)を形成し、平行動作させるためのプログラムである。この例では、仮想マシン41および仮想マシン42が動作する。仮想マシン41および仮想マシン42は、それぞれ、VMM40により仮想化されたCPU、メモリ、周辺機器を有している。仮想マシン41および仮想マシン42は、それぞれがOSを有し、このOS上でAPI(Application Programming Interface)群、TCP/IP(Transmission Control Protocol/Internet Protocol)スタック等のミドルウェア(ソフトウェアモジュール)やブラウザ等のアプリケーションプログラムが動作する。VMM40としては、例えば、VMware、Xen(登録商標)、Virtualbox等が用いられる。   The VMM 40 is a program for forming a plurality of virtual devices (virtual machines) on a physically single device (mobile phone 10) and operating them in parallel. In this example, the virtual machine 41 and the virtual machine 42 operate. Each of the virtual machine 41 and the virtual machine 42 includes a CPU, a memory, and peripheral devices virtualized by the VMM 40. Each of the virtual machine 41 and the virtual machine 42 has an OS. On this OS, middleware (software module) such as API (Application Programming Interface) group, TCP / IP (Transmission Control Protocol / Internet Protocol) stack, browser, etc. The application program runs. For example, VMware, Xen (registered trademark), Virtualbox, or the like is used as the VMM 40.

仮想マシン41は、いわゆるスマートフォンに相当する仮想マシンである。スマートフォンとは、PCと同様にカスタマイズ性に優れている携帯電話機、具体的には、CPU20が直接実行可能なネイティブコードのアプリケーションプログラム(以下「ネイティブコードアプリ」という)を追加することができる携帯電話機をいう。ネイティブコードアプリの一例として、ブラウザがある。このブラウザは、携帯電話機に特化していない、一般PC(Personal Computer)向けのサイト(以下「PCサイトという」)を閲覧することができる。   The virtual machine 41 is a virtual machine corresponding to a so-called smartphone. A smart phone is a mobile phone that has excellent customizability like a PC, specifically, a mobile phone to which an application program of native code that can be directly executed by the CPU 20 (hereinafter referred to as “native code application”) can be added. Say. An example of a native code application is a browser. This browser can browse a site for general PC (Personal Computer) (hereinafter referred to as “PC site”) that is not specialized for mobile phones.

一般に、携帯電話機のセキュリティはPCのセキュリティよりも高い。近年、ブラウザを介して画像、着信音、楽曲などをダウンロードするサービスが知られているが、これらダウンロードされたデータは、携帯電話機10の外へ持ち出したり、改ざんしたりすることができないように制限されていることが多い。このような制限を行うために、ある種のウェブサーバにおいては、携帯電話機からのアクセスのみを許可し、PC等の携帯電話機以外の端末からのアクセスは許可しないように、端末の識別が行われている。この識別をするための技術としては、携帯電話事業者が運用するゲートウェイ(特定の接続先の一例)のIP(Internet Protocol)アドレスを用いて端末を識別する技術がある。このような技術により、携帯電話機からのみアクセスが可能なウェブサイト(以下「携帯サイト」という)が存在する。   In general, the security of a mobile phone is higher than the security of a PC. In recent years, services for downloading images, ringtones, music, etc. via a browser are known, but these downloaded data are restricted so that they cannot be taken out of the mobile phone 10 or tampered with. It is often done. In order to perform such restrictions, some types of web servers identify terminals so that only access from a mobile phone is allowed, and access from terminals other than mobile phones such as PCs is not allowed. ing. As a technique for this identification, there is a technique for identifying a terminal using an IP (Internet Protocol) address of a gateway (an example of a specific connection destination) operated by a mobile phone carrier. With such a technology, there is a website (hereinafter referred to as “mobile site”) that can be accessed only from a mobile phone.

スマートフォンにおいては、非ネイティブコードアプリよりも実行速度が速いネイティブコードアプリを用いて機能を拡張することが可能である。しかし、例えばコンピュータウイルスのような悪意あるアプリケーションプログラムが実行されると、ユーザの意図に反して、アドレス帳等の個人情報やコンテンツの消去、改ざん、漏洩が起こる危険性がある。この危険性により、スマートフォンにおいては、非スマートフォンの携帯電話機と異なり、コンテンツのダウンロードを許可したくないという事業者およびユーザの事情がある。このため、スマートフォンのブラウザは、携帯サイトにアクセスするためのゲートウェイを経由せずに、特定の接続先とは異なる別の接続先(またはアクセスポイント)を介してインターネットに接続される。すなわち、仮想マシン41は、このゲートウェイを経由せずにインターネットに接続される。この構成では、スマートフォンからは携帯サイトにアクセスできない。   In a smartphone, it is possible to expand functions using a native code application that has a higher execution speed than a non-native code application. However, when a malicious application program such as a computer virus is executed, there is a risk that personal information such as an address book or contents will be erased, altered or leaked against the user's intention. Due to this danger, there is a situation of business operators and users who do not want to allow content download in smartphones, unlike non-smartphone mobile phones. For this reason, the browser of the smartphone is connected to the Internet via a different connection destination (or access point) different from the specific connection destination without going through the gateway for accessing the mobile site. That is, the virtual machine 41 is connected to the Internet without going through this gateway. In this configuration, the mobile site cannot be accessed from the smartphone.

仮想マシン42は、標準機(非スマートフォン)に相当する仮想マシンである。前述のように仮想マシン42は、携帯サイトにアクセスするためのゲートウェイを経由して、外部のネットワークにアクセスする。仮想マシン42は、記憶装置30上に、仮想マシン41からはアクセスできない、仮想マシン42専用の記憶領域を有する。携帯サイトからダウンロードされたコンテンツは、この記憶領域に記憶される。同様に、仮想マシン41は、記憶装置30上に、仮想マシン42からはアクセスできない、仮想マシン41専用の記憶領域を有する。   The virtual machine 42 is a virtual machine corresponding to a standard machine (non-smartphone). As described above, the virtual machine 42 accesses an external network via the gateway for accessing the mobile site. The virtual machine 42 has a storage area dedicated to the virtual machine 42 that cannot be accessed from the virtual machine 41 on the storage device 30. The content downloaded from the mobile site is stored in this storage area. Similarly, the virtual machine 41 has a storage area dedicated to the virtual machine 41 that cannot be accessed from the virtual machine 42 on the storage device 30.

2.第1実施形態
2−1.構成
図3は、第1実施形態に係る携帯電話機10の機能構成を示す図である。仮想マシン41は、ブラウザ50、検知部201、判定部202、要求部203、判定部205および更新部207を有する。仮想マシン42は、ブラウザ60を有する。ブラウザ50は、インターネットに接続されたウェブサーバ(外部装置)からウェブコンテンツ(HTML(HyperText Markup Language)データおよび関連する画像ファイル、音声ファイル等)を取得し、取得したウェブコンテンツに従った画面をディスプレイ32に表示させるためのアプリケーションプログラムであり、仮想マシン41のOS上で動作する。記憶部100は、仮想マシン41専用の記憶領域である。ブラウザ60は、インターネットからHTMLデータを取得し、取得したHTMLデータに従った画面をディスプレイ32に表示させるためのアプリケーションプログラムであり、仮想マシン42のOS上で動作する。ブラウザ60は、取得部204および送信部206を有する。以下、ここで、「アプリケーション」とは、CPU20がアプリケーションプログラムを実行し、メモリやディスプレイを制御することにより、携帯電話機10上に実現(実装)される機能をいう。検知部201、判定部202、要求部203、判定部205および更新部207等の機能構成要素はソフトウェアモジュールである。以下、「検知部201が、・・・する」というように機能構成要素を主体として動作を記述することがあるが、これは、CPU20が検知部201に係るソフトウェアモジュールに含まれる命令群を実行することにより、その処理が行われることを意味する。
2. First embodiment 2-1. Configuration FIG. 3 is a diagram illustrating a functional configuration of the mobile phone 10 according to the first embodiment. The virtual machine 41 includes a browser 50, a detection unit 201, a determination unit 202, a request unit 203, a determination unit 205, and an update unit 207. The virtual machine 42 has a browser 60. The browser 50 acquires web contents (HTML (HyperText Markup Language) data and related image files, audio files, etc.) from a web server (external device) connected to the Internet, and displays a screen according to the obtained web contents. 32 is an application program to be displayed on the virtual machine 41 and operates on the OS of the virtual machine 41. The storage unit 100 is a storage area dedicated to the virtual machine 41. The browser 60 is an application program for acquiring HTML data from the Internet and causing the display 32 to display a screen according to the acquired HTML data, and operates on the OS of the virtual machine 42. The browser 60 includes an acquisition unit 204 and a transmission unit 206. Hereinafter, “application” refers to a function realized (implemented) on the mobile phone 10 by the CPU 20 executing an application program and controlling a memory and a display. Functional components such as the detection unit 201, the determination unit 202, the request unit 203, the determination unit 205, and the update unit 207 are software modules. Hereinafter, the operation may be described with the functional component as a main component such as “the detection unit 201 performs ...”. This is because the CPU 20 executes a group of instructions included in the software module related to the detection unit 201. This means that the process is performed.

検知部201は、通信装置34およびインターネットを介してウェブコンテンツを取得するための要求(以下「取得要求」という)を検知する。取得要求は、ブラウザ50から出される。この例で、取得要求は、そのコンテンツの所在を示す情報(以下「所在情報」という)としてURL(Uniform Resource Locator)を含む。URLは、例えば、「http://www.aaaaaa.co.jp/product/index.html」という文字列である。この例のURLは、「http」というスキームで、「www.xxxx.co.jp」という名前(ホスト名)のウェブサーバに接続して、「/product/index.html」というパス名で特定されるコンテンツ(HTMLファイル)を取得することを示す。検知部201は、URLで指定されるウェブサーバに接続するために、ブラウザ50が外部通信APIを呼び出したことを検知する。外部通信APIは、携帯電話機10の外部の装置との通信をするためのAPIである。あるいは、検知部201は、コンテンツへのリンクがクリックされたことを、取得要求として検知してもよい。   The detection unit 201 detects a request (hereinafter referred to as “acquisition request”) for acquiring web content via the communication device 34 and the Internet. The acquisition request is issued from the browser 50. In this example, the acquisition request includes a URL (Uniform Resource Locator) as information indicating the location of the content (hereinafter referred to as “location information”). The URL is, for example, a character string “http://www.aaaaaa.co.jp/product/index.html”. The URL of this example is specified by the path name “/product/index.html” by connecting to a web server with the name (host name) “www.xxxx.co.jp” with the scheme “http”. Content (HTML file) to be acquired. The detection unit 201 detects that the browser 50 calls the external communication API in order to connect to the web server specified by the URL. The external communication API is an API for communicating with an external device of the mobile phone 10. Or the detection part 201 may detect that the link to the content was clicked as an acquisition request.

判定部202は、検知部201が検知した取得要求に対するコンテンツを取得できたかどうかの判定をする。判定部202は、取得要求に対する、ウェブサーバからの回答を用いてこの判定をする。コンテンツを取得できた場合、ウェブサーバからの回答はそのコンテンツを含んでいる。したがって、コンテンツを取得できない場合とは、ウェブサーバからの回答に正しいコンテンツが含まれない場合をいう。ウェブサーバからコンテンツを取得する処理には、(1)ホスト名からIPアドレスを特定する(DNS(Domain Name Server)による名前解決)、(2)IPアドレスを用いてウェブサーバに接続する、(3)パス名を用いてコンテンツを要求する、(4)ウェブサーバがコンテンツを送信する、という4つの段階がある。「コンテンツを取得できない場合」には、具体的には、上記4つの段階に対応した、(1)ホスト名からIPアドレスの変換に失敗、(2)接続失敗、(3)コンテンツを取得できない、(4)標準機からのアクセスのみ許容される旨がコンテンツに記載されている、の4つの例がある。例(1)〜(3)では、仮想マシン41はエラーメッセージを取得する。この場合、判定部202は、取得したエラーメッセージから、コンテンツを取得できなかったと判定する。また、例(4)では、見かけ上コンテンツを取得できているが、コンテンツの内容としてエラーを含んでいる。判定部202は、取得したコンテンツの内容を検査し、エラーが含まれていた場合には、コンテンツを取得できなかったと判定する。   The determination unit 202 determines whether the content corresponding to the acquisition request detected by the detection unit 201 has been acquired. The determination unit 202 makes this determination using an answer from the web server to the acquisition request. If the content can be acquired, the response from the web server includes the content. Therefore, the case where the content cannot be acquired means the case where the correct content is not included in the response from the web server. The process of acquiring content from the web server includes (1) specifying an IP address from the host name (name resolution by DNS (Domain Name Server)), (2) connecting to the web server using the IP address, (3 There are four stages: requesting content using a path name, and (4) sending content from a web server. Specifically, in the case where “content cannot be acquired”, corresponding to the above four steps, (1) host name to IP address conversion failure, (2) connection failure, (3) content cannot be acquired, (4) There are four examples in which the content describes that only access from a standard machine is allowed. In examples (1) to (3), the virtual machine 41 acquires an error message. In this case, the determination unit 202 determines that the content could not be acquired from the acquired error message. In example (4), the content can be obtained apparently, but an error is included as the content. The determination unit 202 inspects the content of the acquired content, and determines that the content cannot be acquired if an error is included.

判定部205は、検知部201が検知した取得要求で要求されているコンテンツを、仮想マシン41が取得できるかどうか(コンテンツ取得の可否)の判定をする。換言すると、判定部205は、要求されているコンテンツが仮想マシン42で取得すべきものであるかを判定する。判定部205は、ウェブサーバからの回答ではなく、検知部201が検知した取得要求を用いてこの判定をする。すなわち、判定部202は、仮想マシン41がコンテンツを実際に取得できたかを判定し、判定部205は、仮想マシン41がコンテンツを取得できるか予測する。この例で、判定部205は、取得要求に含まれるURLが所定のパターンの文字列を含むか、または、過去にコンテンツの取得に失敗したURLの履歴に一致する、という2つの基準を用いてコンテンツ取得の可否を判定する。   The determination unit 205 determines whether the virtual machine 41 can acquire the content requested by the acquisition request detected by the detection unit 201 (contents can be acquired). In other words, the determination unit 205 determines whether the requested content is to be acquired by the virtual machine 42. The determination unit 205 makes this determination using the acquisition request detected by the detection unit 201, not the response from the web server. That is, the determination unit 202 determines whether or not the virtual machine 41 can actually acquire the content, and the determination unit 205 predicts whether or not the virtual machine 41 can acquire the content. In this example, the determination unit 205 uses two criteria that the URL included in the acquisition request includes a character string of a predetermined pattern or matches the history of URLs that failed to acquire content in the past. It is determined whether or not content can be acquired.

図4は、判定部205で用いられるパターン情報を例示する図である。パターン情報とは、文字列のパターンを示す情報をいう。パターン情報は、記憶部100に記憶されている。パターン情報は、携帯サイトのURLに含まれることが多いことが知られている文字列、例えば、「imode」、「.mobi」、「mobile.」、「/i/」、「/m/」および「/mobile/」を含むリストである。判定部205は、取得要求に含まれるURLの全部または所定の一部がパターン情報に含まれる文字列と一致するか、すなわち、取得要求に含まれるURLが、パターン情報に含まれる文字列のいずれかを含むか検査する。取得要求に含まれるURLがこれらの文字列のいずれかを含むことが検知された場合、判定部205は、検知部201が検知した取得要求に対するコンテンツを取得できないと判定する。   FIG. 4 is a diagram illustrating pattern information used in the determination unit 205. The pattern information is information indicating a character string pattern. The pattern information is stored in the storage unit 100. The pattern information is a character string that is often known to be included in the URL of the mobile site, for example, “imode”, “.mobi”, “mobile.”, “/ I /”, “/ m /”. And a list containing “/ mobile /”. The determination unit 205 determines whether all or a predetermined part of the URL included in the acquisition request matches the character string included in the pattern information, that is, the URL included in the acquisition request is the character string included in the pattern information. Inspect whether or not. When it is detected that the URL included in the acquisition request includes any of these character strings, the determination unit 205 determines that content for the acquisition request detected by the detection unit 201 cannot be acquired.

図5は、判定部205で用いられる履歴情報を例示する図である。履歴情報とは、過去の所定期間、所定回数または過去すべてのアクセスにおいて、仮想マシン41においてコンテンツを取得できなかったURL、または仮想マシン42においてコンテンツを取得できたURLの一部または全部を示す情報をいう。図5の例では、スキームおよびホスト名が履歴として用いられる。履歴情報は、記憶部100に記憶されている。判定部205は、取得要求に含まれるURLが、履歴情報に含まれる履歴(文字列)のいずれかを含むか検査する。取得要求に含まれるURLがこれらの履歴のいずれかを含むことが検知された場合、判定部205は、検知部201が検知した取得要求に対するコンテンツを取得できないと判定する。   FIG. 5 is a diagram illustrating history information used in the determination unit 205. The history information is information indicating a URL in which the content could not be acquired in the virtual machine 41 or a part or all of the URL in which the content could be acquired in the virtual machine 42 in the past predetermined period, a predetermined number of times, or all the past accesses. Say. In the example of FIG. 5, the scheme and host name are used as the history. The history information is stored in the storage unit 100. The determination unit 205 checks whether the URL included in the acquisition request includes any of the history (character string) included in the history information. When it is detected that the URL included in the acquisition request includes any of these histories, the determination unit 205 determines that content for the acquisition request detected by the detection unit 201 cannot be acquired.

再び図3を参照する。要求部203は、コンテンツを取得できなかったと判定部202が判定した場合、または、コンテンツを取得できないと判定部205が判定した場合に、仮想マシン42に対してコンテンツを取得するよう要求をする。VMM40は、仮想マシン41と仮想マシン42との間での通信を行うためのソフトウェアモジュール(以下「VM(Virtual Machine)間通信機構」という)を有しており、これを用いて仮想マシン41から仮想マシン42に要求が送られる。この要求は、コンテンツの取得に用いられる情報、例えばコンテンツのURLを含む。なお、VM間通信機構は、VMM40とは別のソフトウェアモジュールであってもよい。   Refer to FIG. 3 again. The request unit 203 requests the virtual machine 42 to acquire content when the determination unit 202 determines that content cannot be acquired or when the determination unit 205 determines that content cannot be acquired. The VMM 40 has a software module for performing communication between the virtual machine 41 and the virtual machine 42 (hereinafter referred to as a “VM (Virtual Machine) communication mechanism”), and the VMM 40 uses the software module to communicate with the virtual machine 41. A request is sent to the virtual machine 42. This request includes information used for content acquisition, for example, the URL of the content. The inter-VM communication mechanism may be a software module different from the VMM 40.

仮想マシン41からの要求を受けると、仮想マシン42の取得部204は、通信装置34およびインターネットを介して、コンテンツを送信するようウェブサーバに対に要求する。取得部204は、コンテンツの要求に対する応答をウェブサーバから取得する。   Upon receiving a request from the virtual machine 41, the acquisition unit 204 of the virtual machine 42 requests the web server to transmit content via the communication device 34 and the Internet. The acquisition unit 204 acquires a response to the content request from the web server.

送信部206は、取得部204におけるコンテンツの取得の結果を、仮想マシン41に送信する。結果は、VM間通信機構を用いて仮想マシン42から仮想マシン41に送信される。ここでいう「結果」は、少なくとも、要求が成功した(すなわちコンテンツを取得できた)かあるいは失敗したかを示す情報を含む。また、この結果は、仮想マシン41におけるコンテンツの取得要求を特定する情報を含む。さらに、この結果は、判定部202で説明した4つのエラーのうちいずれに該当するかという情報を含んでもよい。   The transmission unit 206 transmits the result of content acquisition by the acquisition unit 204 to the virtual machine 41. The result is transmitted from the virtual machine 42 to the virtual machine 41 using the inter-VM communication mechanism. The “result” here includes at least information indicating whether the request has succeeded (that is, the content has been acquired) or has failed. This result also includes information for specifying a content acquisition request in the virtual machine 41. Furthermore, this result may include information indicating which of the four errors described in the determination unit 202 corresponds.

受信部212は、仮想マシン42から送信される情報を受信する。更新部207は、受信部212が仮想マシン42からコンテンツ取得の結果を受信すると、受信した結果に応じて、記憶部100に記憶されている履歴情報を更新する。仮想マシン42から受信した結果が、コンテンツを取得できたことを示すものであった場合、更新部207は、受信した結果に係る取得要求から履歴として保存する情報(この例ではスキームおよびホスト名)を履歴情報に追加する。   The receiving unit 212 receives information transmitted from the virtual machine 42. When the reception unit 212 receives the result of content acquisition from the virtual machine 42, the update unit 207 updates the history information stored in the storage unit 100 according to the received result. If the result received from the virtual machine 42 indicates that the content has been acquired, the update unit 207 stores information stored as a history from the acquisition request related to the received result (in this example, the scheme and host name). To the history information.

2−2.動作
図6は、仮想マシン41におけるコンテンツの取得可否の判定処理を示すフローチャートである。検知部201が取得要求を検知すると、図6のフローが実行される。ステップS101において、判定部205は、記憶部100からパターン情報を読み出す。ステップS102において、判定部205は、取得要求に含まれるURLが、パターン情報に含まれる文字列を含むか判定する。URLの所定の一部または全部が、パターン情報の文字列と一致したと判定された場合(S102:YES)、判定部205は、処理をステップS107に移行する。URLがパターン情報の文字列を含まないと判定された場合(S102:NO)、判定部205は、処理をステップS103に移行する。
2-2. Operation FIG. 6 is a flowchart showing processing for determining whether or not content can be acquired in the virtual machine 41. When the detection unit 201 detects an acquisition request, the flow of FIG. 6 is executed. In step S <b> 101, the determination unit 205 reads pattern information from the storage unit 100. In step S102, the determination unit 205 determines whether the URL included in the acquisition request includes a character string included in the pattern information. When it is determined that a predetermined part or all of the URL matches the character string of the pattern information (S102: YES), the determination unit 205 moves the process to step S107. When it is determined that the URL does not include the character string of the pattern information (S102: NO), the determination unit 205 moves the process to step S103.

ステップS103において、判定部205は、記憶部100から履歴情報を読み出す。ステップS104において、判定部205は、取得要求に含まれるURLが、履歴情報に含まれる文字列を含むか判定する。URLの所定の一部または全部が、履歴情報の文字列と一致したと判定された場合(S104:YES)、判定部205は、処理をステップS107に移行する。URLが履歴情報の文字列を含まないと判定された場合(S104:NO)、判定部205は、処理をステップS105に移行する。ステップS101−S104の処理は、ウェブサーバに対してコンテンツの送信の要求が、携帯電話機10から外部の装置に送信される前に実行される。   In step S <b> 103, the determination unit 205 reads history information from the storage unit 100. In step S104, the determination unit 205 determines whether the URL included in the acquisition request includes a character string included in the history information. When it is determined that a predetermined part or all of the URL matches the character string of the history information (S104: YES), the determination unit 205 moves the process to step S107. When it is determined that the URL does not include the character string of the history information (S104: NO), the determination unit 205 moves the process to step S105. The processing in steps S101 to S104 is executed before a content transmission request is transmitted from the mobile phone 10 to an external device to the web server.

ステップS105において、外部通信APIは、コンテンツの取得を試みる。すなわち、通信装置34およびインターネットを介して、コンテンツを送信するようウェブサーバに要求する。外部通信APIは、この要求に対する応答を受信する。   In step S105, the external communication API attempts to acquire content. That is, the web server is requested to transmit the content via the communication device 34 and the Internet. The external communication API receives a response to this request.

ステップS106において、判定部202は、コンテンツが取得できたか判定する。コンテンツが取得できなかったと判定された場合(S106:NO)、判定部202は、処理をステップS107に移行する。コンテンツが取得できたと判定された場合(S106:YES)、判定部202は、取得要求の判定処理を終了する。   In step S106, the determination unit 202 determines whether content has been acquired. If it is determined that the content could not be acquired (S106: NO), the determination unit 202 moves the process to step S107. When it is determined that the content has been acquired (S106: YES), the determination unit 202 ends the acquisition request determination process.

ステップS107において、要求部203は、仮想マシン42に対し、コンテンツの取得の要求をする。この要求は、コンテンツのURLを含んでいる。この要求をすると、要求部203は、コンテンツの取得可否の判定処理を終了する。   In step S <b> 107, the request unit 203 requests the virtual machine 42 to acquire content. This request includes the URL of the content. When this request is made, the request unit 203 ends the process for determining whether or not the content can be acquired.

要求部203において、コンテンツの取得の要求を送信する装置は以下のように特定される。要求部203は、送信先の装置の識別子をあらかじめ記憶している。要求部203は、記憶している識別子により特定される装置に、コンテンツの取得の要求を送信する。この識別子としては、例えば、VMM40により付与されるIDが用いられる。この場合、VMM40は、各仮想マシンにIDを与え、そのIDのリストを記憶している。あるいは、送信先の装置の識別子としてIPアドレスが用いられてもよい。仮想マシン41および仮想マシン42がTCP/IPに従った通信インターフェースを有していれば、仮想マシン41および仮想マシン42にはIPアドレスが付与されるので、これを識別子として用いることができる。   In the request unit 203, an apparatus that transmits a content acquisition request is specified as follows. The request unit 203 stores an identifier of a transmission destination device in advance. The request unit 203 transmits a content acquisition request to the device specified by the stored identifier. As this identifier, for example, an ID given by the VMM 40 is used. In this case, the VMM 40 assigns an ID to each virtual machine and stores a list of the IDs. Alternatively, an IP address may be used as the identifier of the destination device. If the virtual machine 41 and the virtual machine 42 have a communication interface according to TCP / IP, an IP address is assigned to the virtual machine 41 and the virtual machine 42, which can be used as an identifier.

図7は、仮想マシン42におけるコンテンツの取得処理を示すフローチャートである。仮想マシン41からコンテンツの取得の要求を受信すると、取得部204は、通信装置34およびインターネットを介して、コンテンツを送信するようウェブサーバに要求する(ステップS201)。取得部204は、この要求に対する応答を受信する。この応答は、コンテンツの取得が許可された場合はコンテンツを含み、それ以外の場合は判定部202において説明した4つのエラーのいずれかを示すエラーメッセージや、接続タイムアウトなどのエラーメッセージを含んでいる。   FIG. 7 is a flowchart showing content acquisition processing in the virtual machine 42. Upon receiving a content acquisition request from the virtual machine 41, the acquisition unit 204 requests the web server to transmit the content via the communication device 34 and the Internet (step S201). The acquisition unit 204 receives a response to this request. This response includes the content when content acquisition is permitted, and includes an error message indicating one of the four errors described in the determination unit 202 or an error message such as a connection timeout in other cases. .

ステップS202において、取得部204は、コンテンツの取得要求の結果を特定する。取得部204は、コンテンツを取得できた場合は結果が成功だったと特定し、コンテンツを取得できなかった場合は結果が失敗だったと特定する。ステップS203において、送信部206は、特定した結果を、コンテンツ取得の要求元である仮想マシン41に送信する。結果の送信には、VM間通信が用いられる。結果を送信すると、送信部206は、コンテンツの取得処理を終了する。   In step S202, the acquisition unit 204 specifies the result of the content acquisition request. The acquisition unit 204 specifies that the result is successful when the content can be acquired, and specifies that the result is failure when the content cannot be acquired. In step S203, the transmission unit 206 transmits the identified result to the virtual machine 41 that is the content acquisition request source. Communication between VMs is used to transmit the result. When the result is transmitted, the transmission unit 206 ends the content acquisition process.

図8は、仮想マシン41における履歴情報の更新処理を示すフローチャートである。仮想マシン42からコンテンツの取得の結果を受信すると、更新部207は、コンテンツを取得できたか判定する(ステップS301)。コンテンツを取得できたと判定された場合(S301:YES)、更新部207は、処理をステップS302に移行する。コンテンツを取得できなかったと判定された場合(S301:NO)、更新部207は、処理をステップS303に移行する。   FIG. 8 is a flowchart showing history information update processing in the virtual machine 41. When receiving the result of content acquisition from the virtual machine 42, the update unit 207 determines whether the content has been acquired (step S301). If it is determined that the content has been acquired (S301: YES), the update unit 207 proceeds to step S302. When it is determined that the content could not be acquired (S301: NO), the update unit 207 proceeds to step S303.

ステップS302において、更新部207は、記憶部100に記憶されている履歴情報を更新する。具体的には、更新部207は、取得できたコンテンツのURLから履歴として記憶する情報(この例ではスキームおよびホスト名)を抽出し、抽出した情報を履歴情報に追加する。履歴情報を更新すると、更新部207は、履歴情報の更新処理を終了する。   In step S <b> 302, the update unit 207 updates the history information stored in the storage unit 100. Specifically, the update unit 207 extracts information (scheme and host name in this example) stored as a history from the URL of the acquired content, and adds the extracted information to the history information. When the history information is updated, the update unit 207 ends the history information update process.

ステップS303において、更新部207は、仮想マシン41においてコンテンツの取得を実行する前であるか判定する。仮想マシン41は、処理対象となっている取得要求について、その取得要求が外部装置に送信済みであるか送信前であるかを示すフラグを記憶している。更新部207は、このフラグを参照してコンテンツの取得を実行する前であるか判定する。コンテンツの取得を実行する前であると判定された場合(S303:YES)、更新部207は、処理をステップS304に移行する。コンテンツの取得を実行した後であると判定された場合(S303:NO)、更新部207は、図8のフローを終了する。   In step S <b> 303, the update unit 207 determines whether it is before executing content acquisition in the virtual machine 41. The virtual machine 41 stores a flag indicating whether the acquisition request that has been processed is transmitted to the external device or not yet transmitted. The update unit 207 refers to this flag to determine whether it is before executing content acquisition. When it is determined that it is before executing content acquisition (S303: YES), the update unit 207 proceeds to step S304. When it is determined that the content acquisition has been executed (S303: NO), the update unit 207 ends the flow of FIG.

ステップS304において、取得部204は、通信装置34およびインターネットを介して、コンテンツを送信するようウェブサーバに要求する。取得部204は、この要求に対する応答を受信する。この応答により、要求されたコンテンツを取得できた場合、そのコンテンツをブラウザ50に渡す。コンテンツを取得できなかった場合、取得部204は、コンテンツを取得できなかった旨をブラウザ50に通知する。   In step S304, the acquisition unit 204 requests the web server to transmit content via the communication device 34 and the Internet. The acquisition unit 204 receives a response to this request. If the requested content can be acquired by this response, the content is passed to the browser 50. When the content cannot be acquired, the acquisition unit 204 notifies the browser 50 that the content cannot be acquired.

以上で説明したように、本実施形態によれば、仮想マシン41でコンテンツを取得できなかった場合または、仮想マシン41でコンテンツを取得できないと予想される場合、仮想マシン41は、仮想マシン42にコンテンツの取得を要求する(すなわち、コンテンツの取得を依頼する)。仮想マシン42は、仮想マシン41からの要求に応じてコンテンツを取得する。これにより、携帯電話機10のユーザはサイトのアクセス制限によらず、仮想マシン41に対して操作入力を行うことによりコンテンツを取得できる。本実施形態の構成を有しない場合と比較して、操作性が向上する。また、コンテンツを取得できなかったと判定部202が判定した場合にのみ、要求部203がコンテンツの取得を仮想マシン42に要求する構成であると、コンテンツの取得の要求がタイムアウトするまで次の処理が行えない場合がある。しかし、この場合でも、コンテンツの取得要求を実施する前に、判定部205により、取得要求に基づいてコンテンツの取得の可否が判断される。これにより、タイムアウトを待たなくても次の処理が実行できる。また、コンテンツの要求が携帯電話機10の外部に送信される前にコンテンツの取得の可否が判定され、仮想マシン41からコンテンツの取得の要求が行われず、仮想マシン42からコンテンツの取得の要求が行われる場合には、本実施形態の構成を有しない場合と比較してネットワーク上を流れるパケットの数(通信量)が抑制される。   As described above, according to the present embodiment, when content cannot be acquired by the virtual machine 41 or when it is predicted that content cannot be acquired by the virtual machine 41, the virtual machine 41 is transferred to the virtual machine 42. Request acquisition of content (that is, request acquisition of content). The virtual machine 42 acquires content in response to a request from the virtual machine 41. Thereby, the user of the mobile phone 10 can acquire content by performing an operation input to the virtual machine 41 regardless of site access restrictions. The operability is improved as compared with the case where the configuration of the present embodiment is not provided. Further, if the request unit 203 requests the virtual machine 42 to acquire content only when the determination unit 202 determines that content could not be acquired, the next process is performed until the content acquisition request times out. It may not be possible. However, even in this case, before executing the content acquisition request, the determination unit 205 determines whether or not the content can be acquired based on the acquisition request. Thus, the next process can be executed without waiting for the timeout. In addition, before the content request is transmitted to the outside of the mobile phone 10, it is determined whether or not the content can be acquired, the content acquisition request is not made from the virtual machine 41, and the content acquisition request is made from the virtual machine 42. In this case, the number of packets (communication amount) flowing on the network is suppressed as compared with the case where the configuration of the present embodiment is not provided.

本実施形態で説明した機能の実装は、例えば以下のように行われる。仮想マシン41において、外部通信APIを提供するミドルウェアが従来のものから改変されている。このミドルウェアは、外部通信APIと、新たに導入された、仮想的な外部通信API、第1判定API、第2判定API、要求APIとを有している。以下この仮想的な外部通信APIを、「仮想API」という。外部通信APIは従来からある外部通信APIである。仮想APIは、ブラウザ50が外部通信APIを呼び出したときに、外部通信APIよりも先に仮想APIが呼び出されるように構成されている。仮想APIは、本実施形態に係る機能を実現または呼び出すためのAPIである。第1判定APIは、判定部202に相当する機能を提供するAPIである。第2判定APIは、判定部205に相当する機能を提供するAPIである。要求APIは、要求部203に相当する機能を提供するAPIである。以下、図6のフローを例に、動作の詳細を説明する。   The implementation of the functions described in the present embodiment is performed as follows, for example. In the virtual machine 41, middleware that provides an external communication API is modified from the conventional one. This middleware has an external communication API, a newly introduced virtual external communication API, a first determination API, a second determination API, and a request API. Hereinafter, this virtual external communication API is referred to as “virtual API”. The external communication API is a conventional external communication API. The virtual API is configured such that when the browser 50 calls the external communication API, the virtual API is called before the external communication API. The virtual API is an API for realizing or calling a function according to the present embodiment. The first determination API is an API that provides a function corresponding to the determination unit 202. The second determination API is an API that provides a function corresponding to the determination unit 205. The request API is an API that provides a function corresponding to the request unit 203. Hereinafter, the details of the operation will be described using the flow of FIG. 6 as an example.

まず、コンテンツの取得をするために、ブラウザ50が外部通信APIを呼び出す。ブラウザ50が外部通信APIを呼び出すと、外部通信APIではなく、仮想APIが呼び出される。ブラウザ50から呼び出されると、仮想APIは、第2判定APIを呼び出す。すなわち、この例では仮想APIが検知部201として機能している。第2判定APIは、図6のステップS101−S104の処理を行う。第2判定APIは、取得要求がパターン情報または履歴情報に一致した場合、要求APIを呼び出す。どちらにも一致しなかった場合、第2判定APIは、処理を仮想APIに戻す。仮想APIは、外部通信APIを呼び出す。   First, the browser 50 calls an external communication API in order to acquire content. When the browser 50 calls the external communication API, the virtual API is called instead of the external communication API. When called from the browser 50, the virtual API calls the second determination API. That is, in this example, the virtual API functions as the detection unit 201. The second determination API performs the processing of steps S101 to S104 in FIG. The second determination API calls the request API when the acquisition request matches the pattern information or the history information. If they do not match either, the second determination API returns the processing to the virtual API. The virtual API calls an external communication API.

外部通信APIは、DNSによる名前解決、サーバへの接続、コンテンツの取得等の処理を行う(ステップS105)。外部通信APIは、コンテンツを取得できた場合はそのコンテンツを、コンテンツを取得できなかった場合はエラーメッセージを、結果として仮想APIに渡す。仮想APIは、外部通信APIから受け取った結果を判定するために第1判定APIを呼び出す。第1判定APIは、結果がコンテンツを含む場合には、標準機からのアクセスのみ許容される旨がコンテンツに記載されているか、コンテンツを検査する。標準機からのアクセスのみ許容される旨がコンテンツに記載されていた場合、または、外部通信APIからエラーメッセージを含む結果を受け取った場合、第1判定APIは、要求APIを呼び出す。結果がコンテンツを含み、かつ、標準機からのアクセスのみ許容される旨がコンテンツに記載されていなかった場合、第1判定APIは、エラーが無い旨を仮想APIに回答する。エラーが無い旨の回答を受けると、仮想APIは、外部通信APIを呼び出した結果として、取得したコンテンツを設定する。   The external communication API performs processing such as name resolution by DNS, connection to a server, and content acquisition (step S105). The external communication API passes the content to the virtual API as a result if the content can be acquired, or the error message if the content cannot be acquired. The virtual API calls the first determination API to determine the result received from the external communication API. When the result includes the content, the first determination API checks the content to determine that only access from the standard machine is permitted. When it is described in the content that only access from the standard machine is permitted, or when a result including an error message is received from the external communication API, the first determination API calls the request API. When the result includes the content and the content that only the access from the standard machine is allowed is not described in the content, the first determination API answers the virtual API that there is no error. When receiving an answer indicating that there is no error, the virtual API sets the acquired content as a result of calling the external communication API.

要求APIは、コンテンツの取得を仮想マシン42に要求する(ステップS107)。要求APIは、仮想マシン42に要求をした旨を仮想APIに回答する。要求APIからの回答を受けると、仮想APIは、結果をエラーに設定する。   The request API requests the virtual machine 42 to acquire content (step S107). The request API replies to the virtual API that the virtual machine 42 has been requested. Upon receiving an answer from the request API, the virtual API sets the result as an error.

仮想APIは、設定された結果をブラウザ50に渡す。ブラウザ50は、取得した結果(コンテンツまたはエラー)に応じた画面を表示する。   The virtual API passes the set result to the browser 50. The browser 50 displays a screen corresponding to the acquired result (content or error).

3.第2実施形態
3−1.構成
図9は、第2実施形態に係る携帯電話機10の機能構成を示す図である。以下、第1実施形態と共通する要素については共通の参照符号を用い、その説明を省略する。第2実施形態において、携帯電話機10は、記憶部101を有する。記憶部101は、仮想マシン42専用の記憶領域である。記憶部101は、仮想マシン42における履歴情報を記憶する。仮想マシン42における履歴情報とは、仮想マシン42が取得することができたコンテンツのURLの履歴(成功した取得要求の履歴)を示す情報である。仮想マシン42のブラウザ60は、仮想マシン41から要求を受けた場合に加え、ユーザが仮想マシン42のブラウザ60を操作している場合に、ウェブサーバからコンテンツの取得を試みる。仮想マシン42における履歴情報は、これら2つの場合による履歴を含む。本実施形態において、コンテンツを取得できるか否かは、仮想マシン41における履歴情報に加え、仮想マシン42における履歴情報を用いて判定される。
3. Second embodiment 3-1. Configuration FIG. 9 is a diagram illustrating a functional configuration of the mobile phone 10 according to the second embodiment. Hereinafter, common reference numerals are used for elements common to the first embodiment, and description thereof is omitted. In the second embodiment, the mobile phone 10 includes a storage unit 101. The storage unit 101 is a storage area dedicated to the virtual machine 42. The storage unit 101 stores history information in the virtual machine 42. The history information in the virtual machine 42 is information indicating the URL history (successful acquisition request history) of the content that the virtual machine 42 could acquire. The browser 60 of the virtual machine 42 tries to acquire content from the web server when the user is operating the browser 60 of the virtual machine 42 in addition to receiving a request from the virtual machine 41. The history information in the virtual machine 42 includes the history according to these two cases. In the present embodiment, whether content can be acquired is determined using history information in the virtual machine 42 in addition to history information in the virtual machine 41.

仮想マシン41の判定部205は、検知部201によって検知された取得要求について、コンテンツ取得の可否を判定するように仮想マシン42に依頼する。   The determination unit 205 of the virtual machine 41 requests the virtual machine 42 to determine whether or not content acquisition is possible for the acquisition request detected by the detection unit 201.

仮想マシン42の判定部208は、仮想マシン41からの依頼を受けて、仮想マシン42においてコンテンツを取得すべきであるか、すなわち、仮想マシン42におけるコンテンツ取得の可否を判定する。この判定には、記憶部101に記憶されている履歴情報が用いられる。取得部204は、仮想マシン41からコンテンツの取得要求を受けた場合に加え、判定部208の判定結果に応じて、コンテンツを送信するようウェブサーバに要求する。   Upon receiving a request from the virtual machine 41, the determination unit 208 of the virtual machine 42 determines whether content should be acquired in the virtual machine 42, that is, whether or not content acquisition is possible in the virtual machine 42. For this determination, history information stored in the storage unit 101 is used. In addition to receiving a content acquisition request from the virtual machine 41, the acquisition unit 204 requests the web server to transmit the content according to the determination result of the determination unit 208.

3−2.動作
図10は、第2実施形態に係る取得要求の判定処理を示すフローチャートである。ステップS101−S103の処理は、第1実施形態で説明したとおりである。ステップS104において、判定部205は、取得要求に含まれるURLが履歴情報に一致するか判定する。URLが、履歴情報に一致すると判定された場合(S104:YES)、判定部205は、処理をステップS107に移行する。URLが履歴情報に一致しないと判定された場合(S104:NO)、判定部205は、処理をステップS108に移行する。
3-2. Operation FIG. 10 is a flowchart showing acquisition request determination processing according to the second embodiment. The processing in steps S101 to S103 is as described in the first embodiment. In step S104, the determination unit 205 determines whether the URL included in the acquisition request matches the history information. If it is determined that the URL matches the history information (S104: YES), the determination unit 205 moves the process to step S107. When it is determined that the URL does not match the history information (S104: NO), the determination unit 205 moves the process to step S108.

ステップS108において、判定部205は、仮想マシン42に対してコンテンツの取得の可否を判定するように依頼(要求)をする。この依頼は、取得しようとするコンテンツのURLを含む。この依頼をすると、判定部205は図10のフローを終了する。   In step S <b> 108, the determination unit 205 requests (requests) the virtual machine 42 to determine whether or not content acquisition is possible. This request includes the URL of the content to be acquired. When this request is made, the determination unit 205 ends the flow of FIG.

図11は、仮想マシン42が判定の依頼を受信したときの処理を示すフローチャートである。仮想マシン41からコンテンツの取得の可否の判定を依頼されると、図11のフローが実行される。ステップS401において、判定部208は、記憶部101から履歴情報を読み出す。ステップS402において、判定部208は、仮想マシン41においてコンテンツを取得可能であるか、具体的には、仮想マシン41からの要求に含まれるURLが、記憶部101から読み出した履歴情報に含まれる履歴を含むか判定する(ステップS402)。仮想マシン41においてコンテンツを取得可能であると判定された場合(S402:YES)、判定部208は、処理をステップS403に移行する。仮想マシン41においてコンテンツを取得可能でないと判定された場合(S402:NO)、判定部208は、送信部206を介してその旨を仮想マシン41に回答する。   FIG. 11 is a flowchart illustrating processing when the virtual machine 42 receives a determination request. When the virtual machine 41 requests to determine whether or not content can be acquired, the flow of FIG. 11 is executed. In step S <b> 401, the determination unit 208 reads history information from the storage unit 101. In step S <b> 402, the determination unit 208 can acquire content in the virtual machine 41, specifically, the history included in the history information read from the storage unit 101 is the URL included in the request from the virtual machine 41. Is included (step S402). If it is determined that the content can be acquired in the virtual machine 41 (S402: YES), the determination unit 208 proceeds to step S403. When it is determined that the content cannot be acquired in the virtual machine 41 (S402: NO), the determination unit 208 replies to the virtual machine 41 via the transmission unit 206.

ステップS403において、判定部208は、取得部204にコンテンツの取得を要求する。コンテンツの取得を要求すると、判定部208は、図11のフローを終了する。   In step S403, the determination unit 208 requests the acquisition unit 204 to acquire content. When the content acquisition is requested, the determination unit 208 ends the flow of FIG.

図12は、仮想マシン41におけるコンテンツ取得処理を示す図である。からコンテンツを取得可能でない旨の回答を仮想マシン42から受けると、外部通信APIは、コンテンツの取得を試みる(ステップS501)。すなわち、外部通信APIは、通信装置34を介して、コンテンツを送信するようウェブサーバに要求する。外部通信APIは、この要求に対する応答を受信する。ステップS502において、判定部202は、コンテンツが取得できたか判定する。コンテンツが取得できなかったと判定された場合(S502:NO)、判定部202は、処理をステップS503に移行する。コンテンツが取得できたと判定された場合(S502:YES)、判定部202は、取得要求の判定処理を終了する。   FIG. 12 is a diagram illustrating content acquisition processing in the virtual machine 41. When receiving an answer from the virtual machine 42 that the content cannot be acquired from the external machine API, the external communication API tries to acquire the content (step S501). That is, the external communication API requests the web server to transmit content via the communication device 34. The external communication API receives a response to this request. In step S502, the determination unit 202 determines whether content has been acquired. When it is determined that the content could not be acquired (S502: NO), the determination unit 202 shifts the processing to step S503. When it is determined that the content has been acquired (S502: YES), the determination unit 202 ends the acquisition request determination process.

ステップS503において、要求部203は、仮想マシン42に対し、コンテンツの取得の要求をする。この要求をすると、要求部203は、コンテンツの取得処理を終了する。ステップS501−S503の処理は、第1実施形態のステップS105−S107の処理に相当する。ステップS107、S403またはS503においてコンテンツの取得を要求されると、取得部204は、図7のフローに従ってコンテンツの取得を試みる。   In step S <b> 503, the request unit 203 requests the virtual machine 42 to acquire content. When this request is made, the request unit 203 ends the content acquisition process. The processing in steps S501 to S503 corresponds to the processing in steps S105 to S107 in the first embodiment. When acquisition of content is requested in step S107, S403, or S503, the acquisition unit 204 attempts to acquire content according to the flow of FIG.

仮想マシン41においては仮想マシン42でコンテンツを取得すべきであると判定できなくても、仮想マシン42において、仮想マシン42でコンテンツを取得できると判定できる場合がある。本実施形態によれば、本実施形態の構成を有しない場合と比較して、仮想マシン42におけるコンテンツ取得の可否をより確実に判定することができる。   Even if the virtual machine 41 cannot determine that the content should be acquired by the virtual machine 42, the virtual machine 42 may determine that the content can be acquired by the virtual machine 42. According to the present embodiment, it is possible to more reliably determine whether or not the content can be acquired in the virtual machine 42 than in the case where the configuration of the present embodiment is not provided.

4.第3実施形態
4−1.構成
図13は、第3実施形態に係る携帯電話機10の機能構成を示す図である。第3実施形態において、携帯電話機10は、第1のコンテンツを取得したときに、第1のコンテンツに含まれる所在情報(第2のコンテンツのURL)を含む文字列(HTMLタグ)を抽出する。携帯電話機10は、抽出した文字列を用いて、第2のコンテンツの取得可否を判定する。この処理は、第1のコンテンツを取得したときに行われ、第2のコンテンツの取得要求があったか否かにかかわらず行われる。以下、第1実施形態と共通する要素については共通の参照符号を用い、その説明を省略する。
4). Third embodiment 4-1. Configuration FIG. 13 is a diagram illustrating a functional configuration of the mobile phone 10 according to the third embodiment. In the third embodiment, when the mobile phone 10 acquires the first content, the mobile phone 10 extracts a character string (HTML tag) including location information (URL of the second content) included in the first content. The mobile phone 10 determines whether or not the second content can be acquired using the extracted character string. This process is performed when the first content is acquired, and is performed regardless of whether there is a request for acquiring the second content. Hereinafter, common reference numerals are used for elements common to the first embodiment, and description thereof is omitted.

仮想マシン41の抽出部209は、ブラウザ50が取得したコンテンツ(第1のコンテンツ)から、第2のコンテンツのURLを含む文字列を抽出する。いま、コンテンツがHTMLファイルを含むウェブコンテンツである場合を例に説明する。HTMLファイルは、多くの場合、別のウェブコンテンツへのリンクを示すHTMLタグを含む。このリンクは、別のウェブコンテンツのURLを含む。ユーザがブラウザ50上で別のウェブコンテンツのリンクを選択すると、ブラウザ50は、選択されたリンクに含まれるURLを用いてコンテンツの取得要求を生成する。さらに、ブラウザ50は、生成した取得要求を用いてコンテンツを取得する。抽出部209は、ウェブコンテンツが取得されると、そのウェブコンテンツに含まれるリンクが選択されたか否かにかかわらず、リンクのURLを含む文字列を抽出する。すなわち、リンクが選択される前にURLを抽出することが可能である。ウェブコンテンツに複数のリンクが含まれる場合、抽出部209は、複数組の文字列を抽出する。   The extraction unit 209 of the virtual machine 41 extracts a character string including the URL of the second content from the content (first content) acquired by the browser 50. Now, the case where the content is web content including an HTML file will be described as an example. HTML files often include HTML tags that indicate links to other web content. This link contains the URL of another web content. When the user selects another web content link on the browser 50, the browser 50 generates a content acquisition request using the URL included in the selected link. Furthermore, the browser 50 acquires content using the generated acquisition request. When the web content is acquired, the extraction unit 209 extracts a character string including the URL of the link regardless of whether or not the link included in the web content is selected. That is, it is possible to extract the URL before the link is selected. When the web content includes a plurality of links, the extraction unit 209 extracts a plurality of sets of character strings.

この例で、抽出部209は、HTMLファイルから、URLを含む1区切りの文字列を抽出する。「1区切りの文字列」とは、ここでは1つのHTMLタグをいう。例えば、HTMLファイルが「<a href="http://www.aaaaaa.co.jp/mn.main">」というHTMLタグを含んでいた場合、抽出部209は、「<a href="http://www.aaaaaa.co.jp/mn.main">」という文字列を抽出する。別の例で、HTMLファイルが「<a href="http://www.aaaaaa.co.jp/mn.main" accesskey="1">」というHTMLタグを含んでいた場合、抽出部209は、「<a href="http://www.aaaaaa.co.jp/mn.main" accesskey="1">」という文字列を抽出する。   In this example, the extraction unit 209 extracts a single character string including a URL from the HTML file. Here, “one-delimited character string” refers to one HTML tag. For example, when the HTML file includes an HTML tag “<a href="http://www.aaaaaa.co.jp/mn.main">”, the extraction unit 209 determines that “<a href =" http "@ www.aaaaaa.co.jp / mn.main"> "is extracted. In another example, when the HTML file includes an HTML tag “<a href="http://www.aaaaaa.co.jp/mn.main" accesskey="1">", the extraction unit 209 , “<a href="http://www.aaaaaa.co.jp/mn.main" accesskey="1">" is extracted.

判定部205は、抽出部209が抽出したURLについて、仮想マシン42におけるコンテンツの取得の可否の判定をする。この判定は、第1実施形態における取得要求の判定と同様に行われる。抽出部209が複数のURLを抽出した場合、処理の対象となるURLが所定のルールに従って1つずつ順番に特定され、対象となるURLについて判定が行われる。判定部205は、仮想マシン42において取得されるべきコンテンツの取得要求を特定する情報、すなわち、仮想マシン42において取得されるべきと判定されたコンテンツのURLをキャッシュに一時的に記憶する。検知部201によりコンテンツの取得要求が検知されると、判定部205は、記憶部100のパターン情報および履歴情報を参照せず、キャッシュを参照して仮想マシン42におけるコンテンツの取得の可否の判定をする。仮想マシン42において取得されるべきと判定されたURLが複数存在する場合、判定部205は、複数のURLをキャッシュに記憶される。キャッシュは、メモリ21において仮想マシン41の内部に設けられるので、仮想マシン41の外部に設けられる場合と比較して判定部205が高速に参照することが可能である。   The determination unit 205 determines whether or not the virtual machine 42 can acquire content for the URL extracted by the extraction unit 209. This determination is performed in the same manner as the acquisition request determination in the first embodiment. When the extraction unit 209 extracts a plurality of URLs, the URLs to be processed are specified one by one in accordance with a predetermined rule, and the target URLs are determined. The determination unit 205 temporarily stores, in a cache, information that specifies an acquisition request for content to be acquired in the virtual machine 42, that is, the URL of the content determined to be acquired in the virtual machine 42. When the content acquisition request is detected by the detection unit 201, the determination unit 205 refers to the cache without referring to the pattern information and history information in the storage unit 100, and determines whether or not the content can be acquired in the virtual machine 42. To do. When there are a plurality of URLs determined to be acquired in the virtual machine 42, the determination unit 205 stores the plurality of URLs in a cache. Since the cache is provided inside the virtual machine 41 in the memory 21, the determination unit 205 can refer to the cache at a higher speed than when the cache is provided outside the virtual machine 41.

取得部210は、判定部205において仮想マシン42によりコンテンツを取得すべきであると判定されなかった場合に、通信装置34を介してコンテンツを送信するようウェブサーバに要求する。   The acquisition unit 210 requests the web server to transmit the content via the communication device 34 when the determination unit 205 does not determine that the content should be acquired by the virtual machine 42.

本実施形態において、情報処理装置10は、通信装置34を介して外部装置と通信する通信機能をオフにする動作モード(以下「セルフモード」という)を有する。セルフモードは、例えば、消費電力を抑制する目的で使用される。情報処理装置10の動作モードがセルフモードである場合、仮想マシン42にコンテンツの取得を要求しても、コンテンツを取得することはできない。すなわち、要求が無駄になってしまう。また、電力を余計に消費してしまう場合もあり、セルフモードの利点が薄れてしまう。したがって、本実施形態において、要求部203は、情報処理装置10の動作モードがセルフモードにある場合には、仮想マシン42に対してコンテンツの取得の要求をしない。   In the present embodiment, the information processing apparatus 10 has an operation mode (hereinafter referred to as “self mode”) for turning off a communication function for communicating with an external apparatus via the communication apparatus 34. The self mode is used for the purpose of suppressing power consumption, for example. When the operation mode of the information processing apparatus 10 is the self mode, even if the virtual machine 42 is requested to acquire content, the content cannot be acquired. That is, the request is wasted. In addition, extra power may be consumed, and the advantages of the self mode are diminished. Therefore, in the present embodiment, the request unit 203 does not request content acquisition from the virtual machine 42 when the operation mode of the information processing apparatus 10 is in the self mode.

要求部203は、例えば、仮想マシン42に対し動作モードの問い合わせを行うことにより、情報処理装置10の動作モードを示す情報を取得する。あるいは、仮想マシン42が、動作モードを変更するたびに、その時点での動作モードを示す情報を仮想マシン41に送信してもよい。あるいは、VMM40など、仮想マシン41および仮想マシン42以外のソフトウェアモジュールが情報処理装置10の動作モードを監視し、仮想マシン41は、このソフトウェアモジュールから情報処理装置10の動作モードを示す情報を取得してもよい。   The request unit 203 acquires information indicating the operation mode of the information processing apparatus 10 by, for example, making an inquiry about the operation mode to the virtual machine 42. Alternatively, each time the virtual machine 42 changes the operation mode, information indicating the operation mode at that time may be transmitted to the virtual machine 41. Alternatively, a software module such as the VMM 40 other than the virtual machine 41 and the virtual machine 42 monitors the operation mode of the information processing apparatus 10, and the virtual machine 41 acquires information indicating the operation mode of the information processing apparatus 10 from this software module. May be.

表示部211は、取得部204が取得したコンテンツに従った画像をディスプレイ32に表示する。取得部204(仮想マシン41)がコンテンツを取得したということは、仮想マシン41がアクティブになり、ブラウザ60の画面がディスプレイ32に表示される必要がある。表示部211は、コンテンツが取得できた場合、仮想マシン42をアクティブにし、ブラウザ60の画面がディスプレイ32に表示されるように制御をする。   The display unit 211 displays an image according to the content acquired by the acquisition unit 204 on the display 32. The fact that the acquisition unit 204 (virtual machine 41) has acquired content requires that the virtual machine 41 becomes active and the screen of the browser 60 is displayed on the display 32. When the content can be acquired, the display unit 211 activates the virtual machine 42 and performs control so that the screen of the browser 60 is displayed on the display 32.

4−2.動作
図14は、仮想マシン41が第1のコンテンツを取得したときの処理を示すフローチャートである。仮想マシン41が通信装置34を介してコンテンツを取得すると、図14のフローが実行される。
4-2. Operation FIG. 14 is a flowchart showing processing when the virtual machine 41 acquires the first content. When the virtual machine 41 acquires content via the communication device 34, the flow of FIG. 14 is executed.

ステップS601において、判定部205は、抽出部209が抽出した文字列に仮想マシン42で用いられる制御情報が含まれているか判定する。「仮想マシン42で用いられる制御情報」とは、仮想マシン42の独自の機能を制御するための情報をいう。例えば、「<a href="http://www.aaaaaa.co.jp/mn.main" accesskey="1">」というHTMLタグにおいて、「accesskey="1"」の部分は、キーパッド31のうち「1」キーが押されると、このリンクを選択する機能を提供するための文字列(情報)であり、仮想マシン42に独自のものである。仮想マシン41は、仮想マシン42の独自機能に関する文字列の一覧を記憶部101に記憶しており、判定部205は、この一覧を参照して、文字列に仮想マシン42で用いられる制御情報が含まれているか判定する。あるいは、判定部205は、ブラウザ50にこの文字列の解釈をさせ、ブラウザ50が解釈できなかった場合、文字列に仮想マシン42で用いられる制御情報が含まれていると判定してもよい。仮想マシン42で用いられる制御情報が含まれていると判定された場合(S601:YES)、判定部205は、処理をステップS602に移行する。仮想マシン42で用いられる制御情報が含まれていないと判定された場合(S601:NO)、判定部205は、処理をステップS604に移行する。   In step S <b> 601, the determination unit 205 determines whether the character string extracted by the extraction unit 209 includes control information used by the virtual machine 42. “Control information used in the virtual machine 42” refers to information for controlling a unique function of the virtual machine 42. For example, in the HTML tag “<a href="http://www.aaaaaa.co.jp/mn.main" accesskey="1">", the part "accesskey =" 1 "" is the keypad 31. When the “1” key is pressed, it is a character string (information) for providing a function for selecting this link, and is unique to the virtual machine 42. The virtual machine 41 stores a list of character strings related to the unique functions of the virtual machine 42 in the storage unit 101, and the determination unit 205 refers to this list to obtain control information used by the virtual machine 42 in the character string. Determine if it is included. Alternatively, the determination unit 205 may cause the browser 50 to interpret this character string, and may determine that the character string includes control information used by the virtual machine 42 if the browser 50 cannot interpret the character string. If it is determined that the control information used in the virtual machine 42 is included (S601: YES), the determination unit 205 moves the process to step S602. If it is determined that the control information used in the virtual machine 42 is not included (S601: NO), the determination unit 205 moves the process to step S604.

ステップS602において、要求部203は、情報処理装置10において通信が許可されているか、すなわち、情報処理装置10の動作モードが非セルフモードであるか判定する。情報処理装置10において通信が許可されていると判定された場合(S602:YES)、要求部203は、仮想マシン42にコンテンツの取得を要求する(ステップS603)。情報処理装置10において通信が許可されていないと判定された場合(S602:NO)、要求部203は図14のフローを終了する。   In step S602, the request unit 203 determines whether communication is permitted in the information processing apparatus 10, that is, whether the operation mode of the information processing apparatus 10 is the non-self mode. When it is determined that communication is permitted in the information processing apparatus 10 (S602: YES), the request unit 203 requests the virtual machine 42 to acquire content (step S603). If the information processing apparatus 10 determines that communication is not permitted (S602: NO), the request unit 203 ends the flow of FIG.

ステップS604において、抽出部209は、取得したコンテンツから文字列を抽出する。ステップS605−S608において、判定部205は、第1実施形態のステップS101−S104と同様に、文字列とパターン情報および履歴情報との照合を行う。抽出された文字列がパターン情報または履歴情報と一致する部分を含んでいた場合(S606またはS608:YES)、判定部205は、処理をステップS609に移行する。抽出された文字列がパターン情報および履歴情報と一致する部分を含んでいなかった場合(S608:NO)、判定部205は、処理をステップS610に移行する。   In step S604, the extraction unit 209 extracts a character string from the acquired content. In steps S605 to S608, the determination unit 205 collates the character string with the pattern information and history information as in steps S101 to S104 of the first embodiment. If the extracted character string includes a portion that matches the pattern information or the history information (S606 or S608: YES), the determination unit 205 moves the process to step S609. If the extracted character string does not include a portion that matches the pattern information and the history information (S608: NO), the determination unit 205 moves the process to step S610.

ステップS609において、判定部205は、パターン情報または履歴情報と一致する部分を含んでいた文字列を、仮想マシン42においてコンテンツを取得すべきリンクを特定する情報としてキャッシュに記憶する。ステップS610において、判定部205は、仮想マシン42においてコンテンツを取得すべきであるか否かの判定結果を示す情報を、リンクを特定する情報とともにキャッシュに記憶する。   In step S <b> 609, the determination unit 205 stores a character string that includes a portion that matches the pattern information or history information in the cache as information for specifying a link for which content is to be acquired in the virtual machine 42. In step S610, the determination unit 205 stores, in the cache, information indicating a determination result as to whether or not content should be acquired in the virtual machine 42 together with information for specifying a link.

図15は、仮想マシン41において第2のコンテンツの取得が要求されたときの処理を示すフローチャートである。ステップS109において、判定部205は、取得を要求されているコンテンツ(第2のコンテンツ)が、第1のコンテンツに含まれるリンクを選択したことにより要求されたものであるか判定する。ブラウザ50においては、リンクを選択することに加え、URLを入力することによっても、第2のコンテンツの取得が可能である。ここでは、第1のコンテンツに含まれるリンクを選択した場合とそれ以外の場合とで処理を異ならせている。リンクを選択することによる要求であると判定された場合(S109:YES)、判定部205は、処理をステップS110に移行する。リンクを選択することによる要求でないと判定された場合(S109:NO)、判定部205は、処理をステップS101に移行する。   FIG. 15 is a flowchart illustrating processing when the virtual machine 41 requests acquisition of the second content. In step S109, the determination unit 205 determines whether the content requested to be acquired (second content) is requested by selecting a link included in the first content. In the browser 50, the second content can be acquired not only by selecting a link but also by inputting a URL. Here, the processing is different depending on whether the link included in the first content is selected or not. When it determines with it being a request | requirement by selecting a link (S109: YES), the determination part 205 transfers a process to step S110. If it is determined that the request is not a request by selecting a link (S109: NO), the determination unit 205 moves the process to step S101.

ステップS110において、判定部205は、キャッシュを参照して、そのリンクについて、仮想マシン42においてコンテンツを取得すべきであるとの判定結果であるか判定する。仮想マシン42においてコンテンツを取得すべきであるとの判定結果であると判定された場合(S110:YES)、判定部205は、処理をステップS111に移行する。仮想マシン42においてコンテンツを取得すべきであるとの判定結果であると判定された場合(S110:NO)、判定部205は、処理をステップS111に移行する。   In step S <b> 110, the determination unit 205 refers to the cache and determines whether the link is a determination result that the virtual machine 42 should acquire content. If it is determined that the content is to be acquired in the virtual machine 42 (S110: YES), the determination unit 205 moves the process to step S111. When it is determined that the content is to be acquired in the virtual machine 42 (S110: NO), the determination unit 205 moves the process to step S111.

ステップS111において、判定部205は、キャッシュを参照して、そのリンクについて、仮想マシン42においてコンテンツを取得すべきであるか否かを判定する。仮想マシン42においてコンテンツを取得すべきであると判定された場合(S111:YES)、判定部205は、処理をステップS112に移行する。仮想マシン42においてコンテンツを取得すべきであると判定されなかった場合(S111:NO)、判定部205は、処理をステップS101に移行する。   In step S111, the determination unit 205 refers to the cache and determines whether or not the virtual machine 42 should acquire content for the link. When it is determined that the content should be acquired in the virtual machine 42 (S111: YES), the determination unit 205 moves the process to step S112. When it is not determined that the content should be acquired in the virtual machine 42 (S111: NO), the determination unit 205 moves the process to step S101.

ステップS101−S105の処理は、第1実施形態で説明したものと同様である。ステップS106において、コンテンツが取得できなかったと判定された場合、判定部202は、処理をステップS112に移行する。   The processing in steps S101 to S105 is the same as that described in the first embodiment. If it is determined in step S106 that content could not be acquired, the determination unit 202 proceeds to step S112.

ステップS112において、要求部203は、情報処理装置10において通信が許可されているか、すなわち、情報処理装置10の動作モードが非セルフモードであるか判定する。情報処理装置10において通信が許可されていると判定された場合(S112:YES)、要求部203は、処理をステップS107に移行する。情報処理装置10において通信が許可されていないと判定された場合(S112:NO)、要求部203は、図15のフローを終了する。   In step S112, the request unit 203 determines whether communication is permitted in the information processing apparatus 10, that is, whether the operation mode of the information processing apparatus 10 is the non-self mode. If it is determined that communication is permitted in the information processing apparatus 10 (S112: YES), the request unit 203 proceeds to step S107. If the information processing apparatus 10 determines that communication is not permitted (S112: NO), the request unit 203 ends the flow of FIG.

図16は、仮想マシン42におけるコンテンツ取得処理を示すフローチャートである。ステップS201−S202の処理は、第1実施形態で説明したものと同様である。ステップS202の処理が終了すると、取得部204は、処理をステップS204に移行する。   FIG. 16 is a flowchart showing content acquisition processing in the virtual machine 42. The processing in steps S201 to S202 is the same as that described in the first embodiment. When the process of step S202 ends, the acquisition unit 204 moves the process to step S204.

ステップS204において、取得部204は、コンテンツを取得できたか判定する。コンテンツを取得できたと判定された場合(S204:YES)、取得部204は、処理をステップS205に移行する。コンテンツを取得できなかったと判定された場合(S204:NO)、取得部204は、処理をステップS203に移行する。   In step S204, the acquisition unit 204 determines whether the content has been acquired. If it is determined that the content has been acquired (S204: YES), the acquisition unit 204 proceeds to step S205. If it is determined that the content could not be acquired (S204: NO), the acquisition unit 204 proceeds to step S203.

ステップS205において、表示部211は、コンテンツに従った画面をディスプレイ32に表示する。   In step S205, the display unit 211 displays a screen according to the content on the display 32.

以上で説明したように、本実施形態によれば、仮想マシン42においてコンテンツを取得すべきであるか否かの判定は、コンテンツの取得要求がなくても行われる。コンテンツの取得要求に先立って判定が行われていた場合、判定の結果を確認すればよいので、本実施形態の構成を有しない場合と比較して、コンテンツの取得要求があってから仮想マシン42にコンテンツの取得を要求するまでの時間を短縮できる。   As described above, according to the present embodiment, the determination as to whether or not content should be acquired in the virtual machine 42 is performed even when there is no content acquisition request. If the determination is made prior to the content acquisition request, it is only necessary to confirm the determination result. Compared to the case of not having the configuration of the present embodiment, the virtual machine 42 has received the content acquisition request. It is possible to shorten the time required to request content acquisition.

5.他の実施形態
本発明は上述の実施形態に限定されるものではなく、種々の変形実施が可能である。以下、変形例をいくつか説明する。以下で説明する変形例のうち2つ以上のものが組み合わせて用いられてもよい。
5. 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.

第1実施形態に係る機能の具体的な実装方法は、実施形態で説明したものに限定されない。第1実施形態では、検知部201、判定部202、要求部203、判定部205に相当する新たなAPIおよび外部通信APIを含むミドルウェアを新たに導入する例を説明したが、これ以外の態様で上記の機能が実装されてもよい。例えば、外部通信API自体を改良し、検知部201、判定部202、要求部203、判定部205としての機能またはこれらの機能を呼び出す機能を付加してもよい。あるいは、ブラウザ50に、検知部201、判定部202、要求部203、判定部205としての機能またはこれらの機能を呼び出す機能を付加してもよい。さらにあるいは、ブラウザ50以外のアプリケーションプログラムやOS等に、検知部201、判定部202、要求部203、判定部205としての機能またはこれらの機能を呼び出す機能を持たせてもよい。要は、仮想マシン41が全体として実施形態で説明した機能を実現できるのであれば、実装の形態はどのようなものであってもよい。仮想マシン42や、第2実施形態、第3実施形態、その他の実施形態についても同様である。   The specific mounting method of the function according to the first embodiment is not limited to that described in the embodiment. In the first embodiment, an example of newly introducing middleware including a new API and an external communication API corresponding to the detection unit 201, the determination unit 202, the request unit 203, and the determination unit 205 has been described. The above functions may be implemented. For example, the external communication API itself may be improved and a function as the detection unit 201, the determination unit 202, the request unit 203, and the determination unit 205 or a function for calling these functions may be added. Or you may add to the browser 50 the function as a detection part 201, the determination part 202, the request | requirement part 203, the determination part 205, or the function to call these functions. Further alternatively, an application program or OS other than the browser 50 may have a function as the detection unit 201, the determination unit 202, the request unit 203, or the determination unit 205 or a function for calling these functions. In short, as long as the virtual machine 41 can realize the functions described in the embodiment as a whole, any form of implementation may be used. The same applies to the virtual machine 42, the second embodiment, the third embodiment, and other embodiments.

第1〜第3実施形態において、仮想マシン41は、判定部202および判定部205のうちどちらか一方を有していなくてもよい。例えば、判定部202を有さない場合、図6のステップS106の処理が省略される。要は、要求部203は、コンテンツを取得できないと予測された場合、または、コンテンツを取得できなかった場合に、仮想マシン42に対してコンテンツの取得を要求するものであればよい。   In the first to third embodiments, the virtual machine 41 may not have either the determination unit 202 or the determination unit 205. For example, when the determination unit 202 is not provided, the process of step S106 in FIG. 6 is omitted. In short, the request unit 203 only needs to request the virtual machine 42 to acquire content when it is predicted that content cannot be acquired or when content cannot be acquired.

第1〜第3実施形態において、記憶部100は、パターン情報および履歴情報のうちどちらか一方を有していなくてもよい。例えば、記憶部100がパターン情報を有しない場合、図6のステップS101およびS102の処理が省略される。記憶部100が履歴情報を有しない場合についても同様である。   In the first to third embodiments, the storage unit 100 may not have any one of the pattern information and the history information. For example, when the storage unit 100 does not have pattern information, the processes in steps S101 and S102 in FIG. 6 are omitted. The same applies to the case where the storage unit 100 does not have history information.

第1〜第3実施形態において、送信部206は、取得部204でコンテンツを取得できたことを示す結果を送信する機能を有していなくてもよい。この場合、仮想マシン41は、更新部207を有していなくてもよい。   In the first to third embodiments, the transmission unit 206 may not have a function of transmitting a result indicating that the acquisition unit 204 has acquired the content. In this case, the virtual machine 41 may not have the update unit 207.

第1実施形態において、更新部207は、仮想マシン42によりコンテンツの取得の結果ではなく、仮想マシン41によるコンテンツの取得の結果に応じて記憶部100に記憶された履歴情報の更新を行ってもよい。この場合、仮想マシン41においてコンテンツの取得(ステップS304)ができなかったときに、更新207は履歴情報の更新をする。   In the first embodiment, the update unit 207 may update the history information stored in the storage unit 100 according to the result of content acquisition by the virtual machine 41 instead of the content acquisition result by the virtual machine 42. Good. In this case, when the content cannot be acquired (step S304) in the virtual machine 41, the update 207 updates the history information.

第2実施形態において、仮想マシン41は、判定部202および判定部205を有していなくてもよい。すなわち、仮想マシン42でコンテンツを取得すべきであるかの判定(仮想マシン41でコンテンツを取得できるかの判定)は仮想マシン42のみで行い、仮想マシン41がその結果に応じて、仮想マシン42に対してコンテンツの取得の要求を行ってもよい。   In the second embodiment, the virtual machine 41 does not have to include the determination unit 202 and the determination unit 205. That is, the determination as to whether or not the content should be acquired by the virtual machine 42 (the determination as to whether or not the content can be acquired by the virtual machine 41) is performed only by the virtual machine 42, and the virtual machine 41 responds to the result according to the result. A content acquisition request may be issued to the user.

第3実施形態において、仮想マシン42は、表示部211を有していなくてもよい。
あるいは、第1および第2実施形態の仮想マシン42が、表示部211を有していてもよい。
In the third embodiment, the virtual machine 42 may not have the display unit 211.
Alternatively, the virtual machine 42 according to the first and second embodiments may include the display unit 211.

第3実施形態において、仮想マシン42独自の制御情報に応じた処理の分岐は行われなくてもよい。すなわち、図14のステップS601の処理は省略されてもよい。あるいは、HTMLタグが制御情報を含むかの判定は、パターン情報を用いた判定(図15のステップS101およびS102)の一部として行われてもよい。この場合、パターン情報は、仮想マシン42独自の制御情報を示す文字列を含む。あるいは、第1実施形態または第2実施形態の携帯電話機10において、仮想マシン42独自の制御情報がHTMLタグにあった場合に、仮想マシン42にコンテンツの取得を要求してもよい。   In the third embodiment, branching of processing according to control information unique to the virtual machine 42 may not be performed. That is, the process of step S601 in FIG. 14 may be omitted. Alternatively, the determination of whether the HTML tag includes control information may be performed as part of the determination using the pattern information (steps S101 and S102 in FIG. 15). In this case, the pattern information includes a character string indicating control information unique to the virtual machine 42. Alternatively, in the mobile phone 10 according to the first embodiment or the second embodiment, when the control information unique to the virtual machine 42 is in the HTML tag, the virtual machine 42 may be requested to acquire content.

第3実施形態において、仮想マシン42は、動作モードとしてセルフモードを有していなくてもよい。あるいは、第1および第2実施形態の仮想マシン42が、動作モードとしてセルフモードを有していてもよい。この場合、図15のステップS112と同様の処理が行われてもよい。   In the third embodiment, the virtual machine 42 may not have the self mode as the operation mode. Alternatively, the virtual machine 42 according to the first and second embodiments may have a self mode as an operation mode. In this case, the same process as step S112 in FIG. 15 may be performed.

ソフトウェアまたはソフトウェアモジュール間の機能の分担は、実施形態で説明したものに限定されない。仮想マシン41または仮想マシン42が全体として、実施形態で説明した機能を実現できるのであれば、個々のソフトウェアモジュールの機能の分担はどのようなものであってもよい。例えば、第3実施形態において、HTMLタグが仮想マシン42独自の制御情報を含むかの判定は、判定部205が行う例を説明した。しかし、この判定は、判定部205以外の別のソフトウェアモジュールにより行われてもよい。また、別の例で、第3実施形態において、ブラウザ60が取得部204および送信部206を有している例を説明した。しかし、ブラウザ60以外の別のアプリケーションが、取得部204および送信部206の少なくともいずれか一方を有し、ブラウザ60と連携して動作してもよい。さらに別の例で、第1実施形態において、ブラウザ50以外の別のアプリケーションプログラムが検知部201、判定部202、要求部203、判定部205および更新部207を有している例を説明した。しかし、ブラウザ50が、これらの機能の少なくとも1つを有し、このアプリケーションプログラムと連携して動作してもよい。また、検知部201、判定部202、要求部203、判定部205および更新部207はそれぞれ別のプログラムとして実装されてもよい。特に例示はしないが、他の実施形態や他の機能要素についても同様である。   The sharing of functions between software or software modules is not limited to that described in the embodiment. As long as the virtual machine 41 or the virtual machine 42 as a whole can realize the functions described in the embodiment, the division of functions of the individual software modules may be any. For example, in the third embodiment, the example in which the determination unit 205 determines whether the HTML tag includes control information unique to the virtual machine 42 has been described. However, this determination may be performed by another software module other than the determination unit 205. In another example, the browser 60 has the acquisition unit 204 and the transmission unit 206 in the third embodiment. However, another application other than the browser 60 may include at least one of the acquisition unit 204 and the transmission unit 206 and operate in cooperation with the browser 60. In yet another example, the example in which another application program other than the browser 50 includes the detection unit 201, the determination unit 202, the request unit 203, the determination unit 205, and the update unit 207 has been described in the first embodiment. However, the browser 50 may have at least one of these functions and operate in cooperation with this application program. Moreover, the detection unit 201, the determination unit 202, the request unit 203, the determination unit 205, and the update unit 207 may be implemented as separate programs. Although not specifically illustrated, the same applies to other embodiments and other functional elements.

仮想マシン41上および仮想マシン42上でインターネットを介したデータ通信を行うアプリケーションはブラウザに限定されない。同様に、インターネットを介して取得されるデータはウェブコンテンツに限定されない。メーラ等の他のアプリケーションおよび電子メール等の他のデータが用いられてもよい。データが電子メールである場合、データの所在を示す情報は、メールサーバのアドレスまたはメールアドレスである。   An application that performs data communication via the Internet on the virtual machine 41 and the virtual machine 42 is not limited to a browser. Similarly, data acquired via the Internet is not limited to web content. Other applications such as mailers and other data such as emails may be used. When the data is an electronic mail, the information indicating the location of the data is a mail server address or a mail address.

10…携帯電話機、20…CPU、21…メモリ、30…記憶装置、31…キーパッド、32…ディスプレイ、33…スピーカ、34…通信装置、40…VMM、41…仮想マシン、42…仮想マシン、50…ブラウザ、60…ブラウザ、100…記憶部、101…記憶部、201…検知部、202…判定部、203…要求部、204…取得部、205…判定部、206…送信部、207…更新部、208…判定部、209…抽出部、210…取得部、211…表示部、212…受信部 DESCRIPTION OF SYMBOLS 10 ... Mobile phone, 20 ... CPU, 21 ... Memory, 30 ... Storage device, 31 ... Keypad, 32 ... Display, 33 ... Speaker, 34 ... Communication device, 40 ... VMM, 41 ... Virtual machine, 42 ... Virtual machine, DESCRIPTION OF SYMBOLS 50 ... Browser, 60 ... Browser, 100 ... Storage part, 101 ... Storage part, 201 ... Detection part, 202 ... Determination part, 203 ... Request part, 204 ... Acquisition part, 205 ... Determination part, 206 ... Transmission part, 207 ... Update unit, 208 ... determination unit, 209 ... extraction unit, 210 ... acquisition unit, 211 ... display unit, 212 ... reception unit

Claims (13)

通信装置と、
第1の仮想マシンおよび第2の仮想マシンを実現するためのプログラム、前記第2の仮想マシン上で動作し、前記通信装置および特定の接続先を介してデータを取得する第1のアプリケーションを実現するためのプログラム、ならびに前記第1の仮想マシン上で動作し、前記特定の接続先とは別の接続先および前記通信装置を介してデータを取得する第2のアプリケーションを実現するためのプログラムを記憶した記憶装置と、
前記記憶装置に記憶されたプログラムに従った処理を行うプロセッサと、
を有し、
前記第1の仮想マシンが、
前記第2のアプリケーションから出された、前記通信装置を介してデータを取得することを要求する取得要求を検知する検知手段と、
前記検知手段により検知された取得要求により要求されたデータを、前記第1の仮想マシンが取得できるか判定する第1の判定手段と、
前記データを取得できないと前記第1の判定手段が判定した場合、前記第2の仮想マシンに対して、前記データを取得するように要求をする要求手段と
を有し、
前記第2の仮想マシンが、
前記要求を受けると、前記通信装置を介して前記データを取得する第1の取得手段
を有する
ことを特徴とする情報処理装置。
A communication device;
A program for realizing a first virtual machine and a second virtual machine and a first application that operates on the second virtual machine and acquires data via the communication device and a specific connection destination And a program for realizing a second application that operates on the first virtual machine and acquires data via a connection destination different from the specific connection destination and the communication device A stored storage device;
A processor that performs processing according to a program stored in the storage device;
Have
The first virtual machine is
Detection means for detecting an acquisition request issued from the second application for requesting acquisition of data via the communication device;
First determination means for determining whether the first virtual machine can acquire the data requested by the acquisition request detected by the detection means;
Requesting means for requesting the second virtual machine to acquire the data when the first determination means determines that the data cannot be acquired;
The second virtual machine is
An information processing apparatus comprising: a first acquisition unit configured to acquire the data via the communication device when receiving the request.
通信装置と、
第1の仮想マシンおよび第2の仮想マシンを実現するためのプログラム、前記第2の仮想マシン上で動作し、前記通信装置および特定の接続先を介してデータを取得する第1のアプリケーションを実現するためのプログラム、ならびに前記第1の仮想マシン上で動作し、前記特定の接続先とは別の接続先および前記通信装置を介してデータを取得する第2のアプリケーションを実現するためのプログラムを記憶した記憶装置と、
前記記憶装置に記憶されたプログラムに従った処理を行うプロセッサと、
を有し、
前記第1の仮想マシンが、
前記第2のアプリケーションから出された、前記通信装置を介してデータを取得することを要求する取得要求を検知する検知手段と、
前記取得要求により要求されるデータの取得を試みる第2の取得手段と、
前記検知手段により検知された取得要求により要求されたデータを、前記第2の取得手段が取得できたか判定する第1の判定手段と、
前記データを取得できなかったと前記第1の判定手段が判定した場合、前記第2の仮想マシンに対して、前記データを取得するように要求をする要求手段と
を有し、
前記第2の仮想マシンが、
前記要求を受けると、前記通信装置を介して前記データを取得する第1の取得手段
を有する
ことを特徴とする情報処理装置。
A communication device;
A program for realizing a first virtual machine and a second virtual machine and a first application that operates on the second virtual machine and acquires data via the communication device and a specific connection destination And a program for realizing a second application that operates on the first virtual machine and acquires data via a connection destination different from the specific connection destination and the communication device A stored storage device;
A processor that performs processing according to a program stored in the storage device;
Have
The first virtual machine is
Detection means for detecting an acquisition request issued from the second application for requesting acquisition of data via the communication device;
Second acquisition means for attempting to acquire data requested by the acquisition request;
First determination means for determining whether the second acquisition means has acquired the data requested by the acquisition request detected by the detection means;
Request means for requesting the second virtual machine to acquire the data when the first determination means determines that the data could not be acquired;
The second virtual machine is
An information processing apparatus comprising: a first acquisition unit configured to acquire the data via the communication device when receiving the request.
前記取得要求が、前記データを特定するための文字列を含み、
前記第1の仮想マシンは、文字列のパターンを示す情報を記憶する第1の記憶手段を有し、
前記検知手段により検知された取得要求に含まれる文字列の所定の一部または全部が前記第1の記憶手段に記憶されている情報と一致した場合、前記第1の判定手段は、前記データを取得できないと判定する
ことを特徴とする請求項1に記載の情報処理装置。
The acquisition request includes a character string for specifying the data,
The first virtual machine has first storage means for storing information indicating a character string pattern;
When a predetermined part or all of the character string included in the acquisition request detected by the detection unit matches the information stored in the first storage unit, the first determination unit stores the data The information processing apparatus according to claim 1, wherein it is determined that the information cannot be acquired.
前記取得要求が、前記データを特定するための文字列を含み、
前記第1の仮想マシンは、前記第1の仮想マシンが取得できなかったデータの所在を示す所在情報の履歴、または、前記第2の仮想マシンが取得できたデータの所在を示す所在情報の履歴を示す情報を記憶する第1の記憶手段を有し、
前記検知手段により検知された取得要求に含まれる文字列の所定の一部または全部が、前記第1の記憶手段に記憶されている情報と一致した場合、前記第1の判定手段は、前記データを取得できないと判定する
ことを特徴とする請求項1または3に記載の情報処理装置。
The acquisition request includes a character string for specifying the data,
The first virtual machine has a history of location information indicating the location of data that could not be acquired by the first virtual machine, or a history of location information indicating the location of data that could be acquired by the second virtual machine. First storage means for storing information indicating
When a predetermined part or all of the character string included in the acquisition request detected by the detection unit matches the information stored in the first storage unit, the first determination unit The information processing apparatus according to claim 1, wherein the information processing apparatus determines that it cannot be acquired.
前記第2の仮想マシンは、前記第1の取得手段が前記データを取得した場合、前記データを取得できたことを示す結果を前記第1の仮想マシンに送信する送信手段を有し、
前記第1の仮想マシンは、前記第2の仮想マシンから前記結果を受信した場合、前記結果に係るデータの所在を示す所在情報を用いて前記第1の記憶手段に記憶されている履歴を更新する更新手段を有する
ことを特徴とする請求項4に記載の情報処理装置。
The second virtual machine has transmission means for transmitting a result indicating that the data has been acquired to the first virtual machine when the first acquisition means acquires the data,
When the first virtual machine receives the result from the second virtual machine, the first virtual machine updates the history stored in the first storage unit using the location information indicating the location of the data related to the result. The information processing apparatus according to claim 4, further comprising an update unit configured to perform update processing.
前記第2の仮想マシンは、前記第1の取得手段が取得したデータの所在を示す所在情報の履歴を示す情報を記憶する第2の記憶手段を有し、
前記第1の仮想マシンは、前記検知手段により検知された前記取得要求により要求される前記データの取得の可否の判定を前記第2の仮想マシンに依頼する依頼手段を有し、
前記第2の仮想マシンは、前記依頼を受けると、前記データの所在情報の所定の一部または全部が、前記第2の記憶手段に記憶されている情報と一致するか判定する第2の判定手段を有し、
前記データの所在情報の所定の一部または全部が前記第2の記憶手段に記憶されている情報と一致すると前記第2の判定手段により判定された場合、前記第1の取得手段が、前記データを取得する
ことを特徴とする請求項1、3−5のいずれかの項に記載の情報処理装置。
The second virtual machine has second storage means for storing information indicating a history of location information indicating the location of data acquired by the first acquisition means,
The first virtual machine has request means for requesting the second virtual machine to determine whether or not to acquire the data requested by the acquisition request detected by the detection means,
Upon receiving the request, the second virtual machine determines whether a predetermined part or all of the location information of the data matches information stored in the second storage unit Having means,
When the second determination unit determines that a predetermined part or all of the location information of the data matches the information stored in the second storage unit, the first acquisition unit includes the data The information processing apparatus according to any one of claims 1 and 3-5.
前記第1の仮想マシンは、第1のデータを取得する第2の取得手段を有し、
前記第2の取得手段により取得された前記第1のデータが、第2のデータの所在を示す所在情報を含み、
前記第1の仮想マシンは、前記第1のデータから前記第2のデータの所在情報を抽出する抽出手段を有し、
前記抽出手段により抽出された前記所在情報の所定の一部または全部が前記第1の記憶手段に記憶された情報に一致したとき、前記第1の判定手段は、前記第2のデータを取得できないと判定する
ことを特徴とする請求項1、3−6のいずれかの項に記載の情報処理装置。
The first virtual machine has second acquisition means for acquiring first data;
The first data acquired by the second acquisition means includes location information indicating the location of the second data;
The first virtual machine has extraction means for extracting location information of the second data from the first data,
When the predetermined part or all of the location information extracted by the extraction unit matches the information stored in the first storage unit, the first determination unit cannot acquire the second data The information processing apparatus according to any one of claims 1 and 3-6.
前記データを取得できないと前記第1の判定手段が判定しなかった場合、前記第2の取得手段は、前記第2のデータを取得する
ことを特徴とする請求項7に記載の情報処理装置。
The information processing apparatus according to claim 7, wherein when the first determination unit does not determine that the data cannot be acquired, the second acquisition unit acquires the second data.
前記第1のデータが、データを構成するための制御情報を含み、
前記制御情報が前記第1の仮想マシンに対応しないものであった場合、前記要求手段が、前記データを取得するように前記第2の仮想マシンに要求する
ことを特徴とする請求項7または8に記載の情報処理装置。
The first data includes control information for configuring the data;
The said request | requirement means requests | requires the said 2nd virtual machine to acquire the said data, when the said control information does not respond | correspond to the said 1st virtual machine. The information processing apparatus described in 1.
表示装置を有し、
前記第2の仮想マシンが、前記第1の取得手段により取得されたデータに従った画像を前記表示装置に表示させる表示手段を有する
ことを特徴とする請求項1−9のいずれかの項に記載の情報処理装置。
Having a display device;
The said 2nd virtual machine has a display means to display the image according to the data acquired by the said 1st acquisition means on the said display apparatus. The term in any one of Claims 1-9 characterized by the above-mentioned. The information processing apparatus described.
前記通信装置を介した通信が許可される第1の動作モードと、前記通信装置を介した通信が許可されない第2の動作モードとを有し、
前記要求手段は、前記動作モードが前記第1の動作モードである場合に、前記データを取得するように前記第2の仮想マシンに要求する
ことを特徴とする請求項1−10のいずれかの項に記載の情報処理装置。
A first operation mode in which communication through the communication device is permitted, and a second operation mode in which communication through the communication device is not permitted,
11. The request unit according to claim 1, wherein when the operation mode is the first operation mode, the request unit requests the second virtual machine to acquire the data. The information processing apparatus according to item.
通信装置と、第1の仮想マシンおよび第2の仮想マシンを実現するためのプログラム、前記第2の仮想マシン上で動作し、前記通信装置および特定の接続先を介してデータを取得する第1のアプリケーションを実現するためのプログラム、ならびに前記第1の仮想マシン上で動作し、前記特定の接続先とは別の接続先および前記通信装置を介してデータを取得する第2のアプリケーションを実現するためのプログラムを記憶した記憶装置と、前記記憶装置に記憶されたプログラムに従った処理を行うプロセッサとを有する情報処理装置における通信方法であって、
前記第1の仮想マシンが、前記第2のアプリケーションから出された、前記通信装置を介してデータを取得することを要求する取得要求を検知するステップと、
前記第1の仮想マシンが、前記検知された取得要求により要求されたデータを、前記第1の仮想マシンが取得できるか判定するステップと、
前記第1の仮想マシンが前記データを取得できないと判定された場合、前記第2の仮想マシンに対して、前記データを取得するように要求をするステップと、
前記第2の仮想マシンが、前記要求を受けると、前記通信装置を介して前記データを取得するステップと
を有することを特徴とする通信方法。
A communication device, a program for realizing a first virtual machine and a second virtual machine, a first program that operates on the second virtual machine and acquires data via the communication device and a specific connection destination And a second application that operates on the first virtual machine and acquires data via a connection destination different from the specific connection destination and the communication device A communication method in an information processing apparatus having a storage device storing a program for storing and a processor that performs processing according to the program stored in the storage device,
The first virtual machine detecting an acquisition request issued from the second application requesting acquisition of data via the communication device;
Determining whether the first virtual machine can acquire the data requested by the detected acquisition request;
Requesting the second virtual machine to obtain the data if it is determined that the first virtual machine cannot obtain the data;
When the second virtual machine receives the request, the second virtual machine acquires the data via the communication device.
通信装置と、第1の仮想マシンおよび第2の仮想マシンを実現するためのプログラム、前記第2の仮想マシン上で動作し、前記通信装置および特定の接続先を介してデータを取得する第1のアプリケーションを実現するためのプログラム、ならびに前記第1の仮想マシン上で動作し、前記特定の接続先とは別の接続先および前記通信装置を介してデータを取得する第2のアプリケーションを実現するためのプログラムを記憶した記憶装置と、前記記憶装置に記憶されたプログラムに従った処理を行うプロセッサとを有する情報処理装置における通信方法であって、
前記第1の仮想マシンが、前記第2のアプリケーションから出された、前記通信装置を介してデータを取得することを要求する取得要求を検知するステップと、
前記第1の仮想マシンが、前記取得要求により要求されるデータの取得を試みるステップと、
前記第1の仮想マシンが、前記検知された取得要求により要求されたデータを取得できたか判定するステップと、
前記第1の仮想マシンが、前記データを取得できなかったと判定した場合、前記第2の仮想マシンに対して、前記データを取得するように要求をするステップと、
前記第2の仮想マシンが、前記要求を受けると、前記通信装置を介して前記データを取得するステップと
を有することを特徴とする通信方法。
A communication device, a program for realizing a first virtual machine and a second virtual machine, a first program that operates on the second virtual machine and acquires data via the communication device and a specific connection destination And a second application that operates on the first virtual machine and acquires data via a connection destination different from the specific connection destination and the communication device A communication method in an information processing apparatus having a storage device storing a program for storing and a processor that performs processing according to the program stored in the storage device,
The first virtual machine detecting an acquisition request issued from the second application requesting acquisition of data via the communication device;
The first virtual machine attempting to acquire data requested by the acquisition request;
Determining whether the first virtual machine has acquired the data requested by the detected acquisition request;
If the first virtual machine determines that the data could not be obtained, requesting the second virtual machine to obtain the data;
When the second virtual machine receives the request, the second virtual machine acquires the data via the communication device.
JP2009074810A 2009-03-25 2009-03-25 Information processing apparatus and communication method Expired - Fee Related JP4755702B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009074810A JP4755702B2 (en) 2009-03-25 2009-03-25 Information processing apparatus and communication method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009074810A JP4755702B2 (en) 2009-03-25 2009-03-25 Information processing apparatus and communication method

Publications (2)

Publication Number Publication Date
JP2010231251A JP2010231251A (en) 2010-10-14
JP4755702B2 true JP4755702B2 (en) 2011-08-24

Family

ID=43047043

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009074810A Expired - Fee Related JP4755702B2 (en) 2009-03-25 2009-03-25 Information processing apparatus and communication method

Country Status (1)

Country Link
JP (1) JP4755702B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5821631B2 (en) * 2011-12-28 2015-11-24 富士通株式会社 Playback apparatus, playback method, and playback program

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002169751A (en) * 2000-12-01 2002-06-14 Ntt Me Corp System and method for modification and distribution of contents and computer program
JP2005064678A (en) * 2003-08-08 2005-03-10 Sanyo Electric Co Ltd Portable communication equipment and server device
JP2005236480A (en) * 2004-02-18 2005-09-02 Nec Corp Information communication terminal, network route selecting method and program
JP4358224B2 (en) * 2006-12-27 2009-11-04 株式会社東芝 Guest OS scheduling method and virtual machine monitor
WO2008126145A1 (en) * 2007-03-30 2008-10-23 Fujitsu Limited Setting method for virtual network adapter in virtual os environment of computer system and computer system

Also Published As

Publication number Publication date
JP2010231251A (en) 2010-10-14

Similar Documents

Publication Publication Date Title
US11921996B2 (en) Information processing terminal and control method
EP2129148B1 (en) Content distribution system
US9021468B1 (en) Bundling extension installation with web browser installation
CN111684778B (en) Implementation method of application function and electronic equipment
US10152660B2 (en) Smart card read/write method and apparatus
CN110399578B (en) Page access method and device
KR102073678B1 (en) Method and apparatus for firmware virtualization
CN111190591B (en) Interface display method, data processing method, device, terminal and server
US10235189B2 (en) Isolating a redirected smart card reader to a remote session
US10341346B2 (en) Information processing method, information processing apparatus, and storage medium
US20160285880A1 (en) Mashup method, computer-readable recording medium, and terminal
JP5004857B2 (en) Application update information providing system and application update information providing method
EP2558934A1 (en) Method and apparatus for widget compatibility and transfer
JP2013191196A (en) Information processing device, apparatus, information processing system, information processing method, and information processing program
EP3007470B1 (en) Performance improvement method in instance hosting environment and service system therefor
US20090300478A1 (en) Image forming apparatus, information processing method and program
US10643234B1 (en) Pre-loaded native application tracking service
CN111400072B (en) Interface calling method, storage medium and related equipment
CN112468611A (en) Application program starting method, terminal device and computer storage medium
JP4755702B2 (en) Information processing apparatus and communication method
CN109618016B (en) DNS request sending and processing method, related method and related device
US10594511B2 (en) Address system
US20150128070A1 (en) Additional Service Executing Apparatus Included in User Terminal to Provide Additional Service, and Method for Providing Additional Service Using Same
US11196799B2 (en) Redirection of USB devices from hardware isolated virtual desktop infrastructure clients
CA2593877C (en) Automatic mobile device configuration

Legal Events

Date Code Title Description
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: 20110517

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110518

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110527

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

Free format text: PAYMENT UNTIL: 20140603

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4755702

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

LAPS Cancellation because of no payment of annual fees