(57)【要約】【課題】仮想計算機環境の複数のＯＳ上で動作するアプリケーションの最新の設定情報を、より安全に共有する。【解決手段】ゲストＯＳ上で動作する第１アプリケーションの動作内容を定める第１設定情報と、他のゲストＯＳおよびホストＯＳの少なくとも一方で動作する第２アプリケーションの動作内容を定める第２設定情報とを記憶する設定記憶部１３０と、第１設定情報を識別する第１識別情報と、第２設定情報を識別する第２識別情報とを対応づけて記憶する対応記憶部１４０と、アクセス要求が受付けられた第１設定情報の第１識別情報に対応する第２識別情報を対応記憶部１４０から読み出し、アクセス要求が受付けられた第１設定情報にアクセスする代わりに、読み出した第２識別情報の第２設定情報にアクセスするアクセス代行部１６６と、を備える。【選択図】図１
2010198169.tif 000002
【特許請求の範囲】
【請求項１】
ハードウェアリソースを仮想化し、仮想化したハードウェアリソースに対する複数の仮想計算機からのアクセスを制御する仮想化部と、
前記仮想計算機上で動作するＯＳであるゲストＯＳ上で動作する第１アプリケーションの動作内容を定める第１設定情報と、他のゲストＯＳおよび前記仮想化部を動作させるホストＯＳの少なくとも一方で動作する第２アプリケーションの動作内容を定める第２設定情報とを記憶する設定記憶部と、
前記第１設定情報を識別する第１識別情報と、前記第２設定情報のうち共有する前記第２設定情報を識別する第２識別情報とを対応づけて記憶する対応記憶部と、を備え、
前記仮想化部は、
前記第１設定情報に対するアクセス要求を受付ける受付部と、
前記アクセス要求が受付けられた場合に、前記アクセス要求が受付けられた前記第１設定情報の前記第１識別情報に対応する前記第２識別情報を前記対応記憶部から読み出し、読み出した前記第２識別情報の前記第２設定情報にアクセスするアクセス代行部と、
を備えることを特徴とする情報処理装置。
【請求項２】
前記アクセス要求を発行したユーザが前記第２設定情報にアクセスする権限を有するか否かを判定する判定部をさらに備え、
前記アクセス代行部は、前記アクセス要求が受付けられ、かつ、前記アクセス要求を発行したユーザが前記第２設定情報にアクセスする権限を有すると判定された場合に、前記アクセス要求が受付けられた前記第１設定情報の前記第１識別情報に対応する前記第２識別情報を前記対応記憶部から読み出し、読み出した前記第２識別情報の前記第２設定情報にアクセスすること、
を特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記設定記憶部は、前記ゲストＯＳのユーザごとに定められた前記第１設定情報と、前記第２設定情報とを記憶し、
前記受付部は、前記ゲストＯＳのユーザから前記第１設定情報に対する前記アクセス要求を受付け、
前記アクセス代行部は、前記アクセス要求が受付けられた場合に、前記アクセス要求を発行したユーザに対して定められた前記第１設定情報の前記第１識別情報に対応する前記第２識別情報を前記対応記憶部から読み出し、読み出した前記第２識別情報の前記第２設定情報にアクセスすること、
を特徴とする請求項１に記載の情報処理装置。
【請求項４】
前記対応記憶部は、前記第１識別情報と、前記第２識別情報と、前記第１設定情報と前記第２設定情報との間でデータ形式の変換が必要か否かを表す変換情報と、を対応づけて記憶し、
前記アクセス代行部は、さらに、前記アクセス要求が受付けられた場合に、前記アクセス要求が受付けられた前記第１設定情報の前記第１識別情報に対応する前記変換情報が、データ形式の変換が必要であることを表すか否かを判定し、
データ形式の変換が必要であると判定された場合に、前記第２設定情報に書き込むデータの変換、および、前記第２設定情報から読み出したデータの変換の少なくとも一方を実行する変換部をさらに備えたこと、
を特徴とする請求項１に記載の情報処理装置。
【請求項５】
前記第１設定情報を検出する第１検出部と、
前記第２設定情報を検出する第２検出部と、
検出された前記第１設定情報の前記第１識別情報と、検出された前記第２設定情報の前記第２識別情報とを対応づけて前記対応記憶部に保存する保存部と、をさらに備えたこと、
を特徴とする請求項１に記載の情報処理装置。
【請求項６】
前記第２検出部は、ユーザごとに定められた複数の前記第２設定情報を検出し、
検出された複数の前記第２設定情報のうち、前記第１設定情報に対応づける前記第２設定情報を選択する選択部をさらに備え、
前記保存部は、検出された前記第１設定情報の前記第１識別情報と、選択された前記第２設定情報の前記第２識別情報とを対応づけて前記対応記憶部に保存すること、
を特徴とする請求項５に記載の情報処理装置。
【請求項７】
前記選択部は、検出された複数の前記第２設定情報のうち、前記第１設定情報のユーザと同一のユーザに対して定められた前記第２設定情報を選択すること、
を特徴とする請求項６に記載の情報処理装置。
【請求項８】
前記選択部は、検出された複数の前記第２設定情報のうち、前記他のゲストＯＳおよび前記ホストＯＳのいずれかにログインしているユーザに対して定められた前記第２設定情報を選択すること、
を特徴とする請求項６に記載の情報処理装置。
【請求項９】
前記選択部は、検出された複数の前記第２設定情報のうち、ユーザにより指定された前記第２設定情報を選択すること、
を特徴とする請求項６に記載の情報処理装置。
【請求項１０】
ハードウェアリソースを仮想化し、仮想化したハードウェアリソースに対する複数の仮想計算機からのアクセスを制御する仮想化部と、
仮想計算機上で動作するＯＳであるゲストＯＳ上で動作する第１アプリケーションの動作内容を定める第１設定情報と、他のゲストＯＳおよび前記仮想化部を動作させるホストＯＳの少なくとも一方で動作する第２アプリケーションの動作内容を定める第２設定情報とを記憶する設定記憶部と、
前記第１設定情報を識別する第１識別情報と、前記第２設定情報のうち共有する前記第２設定情報を識別する第２識別情報とを対応づけて記憶する対応記憶部と、を備えた情報処理装置で実行される情報処理方法であって、
受付部が、前記第１設定情報に対するアクセス要求を受付ける受付ステップと、
アクセス代行部が、前記アクセス要求が受付けられた場合に、前記アクセス要求が受付けられた前記第１設定情報の前記第１識別情報に対応する前記第２識別情報を前記対応記憶部から読み出し、読み出した前記第２識別情報の前記第２設定情報にアクセスするアクセス代行ステップと、
を備えることを特徴とする情報処理方法。
【請求項１１】
コンピュータを、
ハードウェアリソースを仮想化し、仮想化したハードウェアリソースに対する複数の仮想計算機からのアクセスを制御する仮想化部と、
仮想計算機上で動作するＯＳであるゲストＯＳ上で動作する第１アプリケーションの動作内容を定める第１設定情報と、他のゲストＯＳおよび前記仮想化部を動作させるホストＯＳの少なくとも一方で動作する第２アプリケーションの動作内容を定める第２設定情報とを記憶する設定記憶部と、
前記第１設定情報を識別する第１識別情報と、前記第２設定情報のうち共有する前記第２設定情報を識別する第２識別情報とを対応づけて記憶する対応記憶部と、
前記第１設定情報に対するアクセス要求を受付ける受付部と、
前記アクセス要求が受付けられた場合に、前記アクセス要求が受付けられた前記第１設定情報の前記第１識別情報に対応する前記第２識別情報を前記対応記憶部から読み出し、読み出した前記第２識別情報の前記第２設定情報にアクセスするアクセス代行部
として機能させるための情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、仮想計算機環境で動作するアプリケーションの設定情報を共有する情報処理装置に関する。
【背景技術】
【０００２】
通常、１台の情報処理装置では１つのオペレーティングシステム(ＯＳ)が動作する。しかし、１台の情報処理装置で異なる種類の複数のＯＳを利用したい場合がある。例えば、事務作業と開発作業とで異なるＯＳを使用する場合や、通常使用しているＯＳが未対応のアプリケーションやデバイスを、他のＯＳで利用する場合が挙げられる。
【０００３】
一方、１台の情報処理装置で複数の仮想計算機を動作させる仮想計算機環境が実現されている。仮想計算機環境では、仮想化ソフトウェア上で、複数の仮想計算機が動作する。仮想化ソフトウェアは、ハードウェアリソースを仮想化し、複数の仮想計算機のハードウェアリソースへのアクセスの調停などを行う。
【０００４】
仮想化ソフトウェアは、ハードウェア上で直接実行される場合と間接的に実行される場合がある。間接的に実行するとは、ハードウェア上では、動作基盤となるホストＯＳが動作し、このホストＯＳ上でさらに仮想化ソフトウェアが動作することを意味する。仮想計算機上で動作するＯＳは、ホストＯＳに対してゲストＯＳと呼ばれる。
【０００５】
このような構成により、例えば、普段使用するＯＳをホストＯＳとして、その上で、ホストＯＳと異なる種類のゲストＯＳを動作させることが可能となる。
【０００６】
仮想計算機環境では、ある仮想計算機が他の仮想計算機およびホストＯＳに影響を及ぼさないように、利用するハードウェア資源等が仮想計算機ごとに隔離されている。例えば、一般に、仮想計算機から利用するハードディスクは、実際にはディスクイメージファイルとなっており、該当するディスクイメージファイルにアクセスできるのは対応する仮想計算機だけとすることにより、隔離性を保っている。
【０００７】
一方、ある仮想計算機と他の仮想計算機およびホストＯＳでデータを共有したい場合がある。例えば、ホストＯＳ上のブラウザとゲストＯＳ上のブラウザとでは、ブックマークなどのユーザごとに定められる設定情報（プレファレンス）を共通に利用できるようにすることが望ましい。
【０００８】
例えば、特許文献１では、別途用意されたサーバにブックマークや表示履歴を登録し、当該サーバからブックマークや表示履歴を参照することにより、異なる通信端末装置でブラウザのブックマークや表示履歴を共有するシステムが提案されている。
【０００９】
しかし、特許文献１の方法では、ブックマークや表示履歴は明示的に登録およびダウンロードする必要があり、端末側で更新した際は明示的にサーバに登録し直す必要がある。このため、キャッシュのように動的に生成されるファイルは共有できないという課題や、最新のプレファレンスを共有できないという課題が存在する。また、別途サーバを必要とするため、利用環境に依存するという課題も存在する。
【００１０】
これに対し、非特許文献１では、ＶＭｗａｒｅの仮想化ソフトウェアの共有フォルダ機能を利用することにより、専用のサーバ等を用いずに情報共有を可能とする技術が提案されている。共有フォルダ機能では、ホストＯＳの任意のフォルダ（ディレクトリ）をゲストＯＳにマウントすることにより、ゲストＯＳからも直接読み書きできるようにしている。
【先行技術文献】
【特許文献】
【００１１】
【特許文献１】特開２００８−９７２０１号公報
【非特許文献】
【００１２】
【非特許文献１】ＶＭｗａｒｅ  Ｗｏｒｋｓｔａｔｉｏｎのユーザマニュアル、“Ｕｓｉｎｇ  Ｓｈａｒｅｄ  Ｆｏｌｄｅｒｓ”、Ｐ．１７７〜Ｐ．１８４．
【発明の概要】
【発明が解決しようとする課題】
【００１３】
しかしながら、非特許文献１の方法では、ファイル単位ではなくフォルダ単位で情報を共有するため、意図しない共有が発生する可能性があり、安全性が低下するという問題があった。また、共有フォルダを処理するためのドライバをゲストＯＳにインストールする必要があるが、ゲストＯＳによっては共有フォルダ機能が動作しないため、利用環境に依存するという課題も存在する。さらに、共有フォルダ機能の設定によっては共有に失敗するため、利便性が低下するという課題も存在する。
【００１４】
また、一部のブラウザは、ブックマークなどのプレファレンスは同時に利用できない仕様になっており、複数のブラウザから同じプレファレンスファイルを参照しようとすると起動に失敗する。このため、非特許文献１の方法を適用した場合であっても、ホストＯＳとゲストＯＳとで同時に当該ブラウザを起動するときには、プレファレンスをコピーして利用する必要がある。このように、ブラウザの種類によっては、特許文献１と同様に最新のプレファレンスを共有できないという問題も発生する。
【００１５】
本発明は、上記に鑑みてなされたものであって、仮想計算機環境の複数のＯＳ上で動作するアプリケーションの最新の設定情報を、より安全に共有することができる装置、方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１６】
上述した課題を解決し、目的を達成するために、本発明は、ゲストＯＳ上で動作する第１アプリケーションの動作内容を定める第１設定情報と、他のゲストＯＳおよびホストＯＳの少なくとも一方で動作する第２アプリケーションの動作内容を定める第２設定情報とを記憶する設定記憶部と、前記第１設定情報を識別する第１識別情報と、前記第２設定情報を識別する第２識別情報とを対応づけて記憶する対応記憶部と、前記第１設定情報に対するアクセス要求を受付ける受付部と、前記アクセス要求が受付けられた場合に、前記アクセス要求が受付けられた前記第１設定情報の前記第１識別情報に対応する前記第２識別情報を前記対応記憶部から読み出し、読み出した前記第２識別情報の前記第２設定情報にアクセスするアクセス代行部と、を備えることを特徴とする。
【００１７】
また、本発明は、上記装置で実行することができる方法およびプログラムである。
【発明の効果】
【００１８】
本発明によれば、仮想計算機環境の複数のＯＳ上で動作するアプリケーションの最新の設定情報を、より安全に共有することができるという効果を奏する。
【図面の簡単な説明】
【００１９】
【図１】図１は、第１の実施の形態にかかる情報処理装置の構成の一例を示すブロック図である。
【図２】図２は、対応記憶部に記憶される対応情報のデータ構造の一例を示す図である。
【図３】図３は、第１の実施の形態におけるプレファレンス共有初期化処理の全体の流れを示すフローチャートである。
【図４】図４は、第２検出部が検出するプレファレンス情報の一例を示す図である。
【図５】図５は、第１検出部が検出するプレファレンス情報の一例を示す図である。
【図６】図６は、第１の実施の形態におけるプレファレンス共有処理の全体の流れを示すフローチャートである。
【図７】図７は、第２の実施の形態にかかる情報処理装置の構成の一例を示すブロック図である。
【図８】図８は、対応記憶部に記憶される対応情報のデータ構造の一例を示す図である。
【図９】図９は、第２の実施の形態におけるプレファレンス共有処理の全体の流れを示すフローチャートである。
【図１０】図１０は、第１または第２の実施の形態にかかる情報処理装置のハードウェア構成を示す説明図である。
【発明を実施するための形態】
【００２０】
以下に添付図面を参照して、この発明にかかる情報処理装置の最良な実施の形態を詳細に説明する。
【００２１】
（第１の実施の形態）
第１の実施の形態の情報処理装置は、同じ種類のブラウザ間でプレファレンスを共有する。以下では、ホストＯＳ上で動作するブラウザのプレファレンスを、ゲストＯＳ上で動作する同一種類のブラウザが共有する例について説明する。なお、あるゲストＯＳ上で動作するブラウザのプレファレンスを、別のゲストＯＳ上で動作する同一種類のブラウザが共有する場合にも、同様の方法を適用できる。また、設定情報を共有可能なアプリケーションはブラウザに限定されるものではなく、他のアプリケーションにおけるデータ共有にも適用することができる。
【００２２】
図１は、第１の実施の形態にかかる情報処理装置１００の構成の一例を示すブロック図である。図１に示すように、情報処理装置１００は、ハードウェア１１０と、ソフトウェア１２０とを備えている。
【００２３】
ハードウェア１１０は、設定記憶部１３０と、対応記憶部１４０とを備えている。設定記憶部１３０は、ブックマークファイル１３１、Ｃｏｏｋｉｅファイル１３２、およびキャッシュファイル１３３などのブラウザのプレファレンスを記憶する。なお、同図では省略しているが、設定記憶部１３０は、表示履歴、パスワードファイル、およびブラウザの設定ファイルなどのプレファレンスを記憶してもよい。また、同図では、ブックマークファイル１３１、Ｃｏｏｋｉｅファイル１３２、およびキャッシュファイル１３３を１つのみ記載しているが、各ファイルは、例えばユーザごとに複数記憶される。以下では、ブックマークファイル１３１、Ｃｏｏｋｉｅファイル１３２、およびキャッシュファイル１３３をプレファレンスファイルという場合がある。
【００２４】
対応記憶部１４０は、共有を提供する側のプレファレンス情報と提供される側のプレファレンス情報を対応付けた対応情報を格納する。プレファレンス情報とは、ユーザごとに定められる設定情報であるプレファレンスを識別可能な情報（識別情報）を表す。例えば、ブックマークファイル１３１のファイル名がプレファレンス情報に該当する。
【００２５】
図２は、対応記憶部１４０に記憶される対応情報のデータ構造の一例を示す図である。図２に示すように対応記憶部１４０は、役割と、ユーザ名と、ブックマークファイル名と、Ｃｏｏｋｉｅファイル名と、キャッシュフォルダ名と、を対応づけて記憶している。
【００２６】
役割は、共有するプレファレンスを提供する側か、プレファレンスを提供される側かを設定する。ユーザ名は、ホストＯＳ１５０またはゲストＯＳ１８１でのユーザのユーザ名を設定する。同図では、ゲストＯＳ１８１のログインユーザ名と同じユーザ名であるホストＯＳ１５０上のユーザ「ｕｓｅｒＡ」のプレファレンスを共有する例を示している。ブックマークファイル名およびＣｏｏｋｉｅファイル名は、それぞれ当該ユーザ名に対応するブックマークファイル１３１およびＣｏｏｋｉｅファイル１３２の名称を設定する。キャッシュフォルダ名は、当該ユーザ名のキャッシュファイル１３３を格納するフォルダ名を設定する。キャッシュの場合は、キャッシュファイル１３３を作成するフォルダを単位として共有するため、このようにフォルダ名を設定する。
【００２７】
同図は、役割が「提供する側」である各データ（ユーザ名、ブックマークファイル名、Ｃｏｏｋｉｅファイル名、キャッシュフォルダ名）と、役割が「提供される側」である各データとがそれぞれ対応づけられ、全体として対応情報を構成する例を示している。また、同図は、ホストＯＳ１５０上で動作するホストブラウザ１７０のプレファレンスを、ホストブラウザ１７０と同一種類（ＢｒｏｗｓｅｒＡ）のゲストブラウザ１８２で共有する場合の対応情報の例を表している。
【００２８】
なお、ホストＯＳ１５０とゲストＯＳ１８１でプレファレンスを共有する場合は、ホストＯＳ１５０が共有を提供する側でゲストＯＳ１８１が提供される側になる。複数のゲストＯＳ１８１間でプレファレンスを共有する場合は、例えば、ファイルの更新日時が新しい方を共有するプレファレンスとして選択する。なお、共有するプレファレンスの選択方法はこれに限られず、例えば、ファイルのサイズが大きい方を選択してもよいし、ユーザが明示的に指定したプレファレンスを選択してもよい。また、３つ以上のブラウザ間でプレファレンスを共有する場合は、共有を提供される側ごとに対応情報を格納する。
【００２９】
さらに、ホストＯＳ１５０上に複数のブラウザがインストールされている場合は、例えば、プレファレンスのファイルの更新日時が最も新しいブラウザを、プレファレンスを共有するブラウザとして選択する。ブラウザの選択方法はこれに限られず、例えば、ゲストＯＳ１８１上のブラウザと同じ種類のブラウザを選択してもよいし、ユーザが明示的に指定したブラウザを選択してもよい。
【００３０】
なお、設定記憶部１３０および対応記憶部１４０は、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）、光ディスク、メモリカードなどの一般的に利用されているあらゆる記憶媒体により構成することができる。また、同図では省略しているが、ハードウェア１１０は、プロセッサおよびＲＯＭなどのハードウェアリソースも備えている。
【００３１】
ソフトウェア１２０は、ホストＯＳ１５０と、仮想計算機１８０と、仮想化ソフトウェア１６０と、ホストブラウザ１７０と、を備えている。
【００３２】
ホストＯＳ１５０は、ハードウェア１１０上で動作基盤として動作するＯＳである。例えば、Ｗｉｎｄｏｗｓ（登録商標）やＬｉｎｕｘ（登録商標）などをホストＯＳ１５０として利用できる。ホストＯＳ１５０上では、ホストブラウザ１７０を含む通常のアプリケーションが動作する。アプリケーションは、ホストＯＳ１５０上で動作する各種処理を提供するプログラムである。仮想化ソフトウェア１６０もホストＯＳ１５０上で動作する。
【００３３】
ホストブラウザ１７０は、ホストＯＳ１５０上で動作するブラウザである。なお、同図ではホストブラウザ１７０を１つのみ記載しているが、複数種類のホストブラウザ１７０が動作するように構成してもよい。
【００３４】
なお、ホストＯＳ１５０を具備せず、ハードウェア１１０上で仮想化ソフトウェア１６０を直接実行するように構成してもよい。すなわち、仮想計算機１８０、仮想化ソフトウェア１６０、およびハードウェア１１０だけで構成される形態であってもよい。
【００３５】
仮想計算機１８０は、仮想化ソフトウェア１６０により実現される仮想的な計算機である。仮想計算機１８０上では、ゲストＯＳ１８１が稼動し、ゲストＯＳ１８１上でゲストブラウザ１８２が動作する。なお、ゲストＯＳ１８１は、ゲストブラウザ１８２以外のアプリケーションも実行することができる。ゲストＯＳ１８１もホストＯＳ１５０と同様に、例えば、Ｗｉｎｄｏｗｓ（登録商標）やＬｉｎｕｘ（登録商標）などを適用できる。
【００３６】
なお、同図には、１つのゲストＯＳ１８１のみを示してあるが、ゲストＯＳ１８１は任意の数に設定することが可能である。各ゲストＯＳ１８１は、異なる種類のＯＳであってもよいし、同じ種類のＯＳであってもよい。
【００３７】
仮想化ソフトウェア１６０は、ハードウェアリソースを仮想化し、仮想化したハードウェアリソースに対する仮想計算機１８０からのアクセスを制御する仮想化部として機能する。すなわち、仮想化ソフトウェア１６０は、複数のゲストＯＳ１８１からの共有ハードウェアリソース（ハードウェア１１０）へのアクセスの調停などを行う。仮想化ソフトウェア１６０は、さらに詳細な構成として、第１検出部１６１と、第２検出部１６２と、選択部１６３と、保存部１６４と、受付部１６５と、アクセス代行部１６６と、判定部１６７と、を備えている。
【００３８】
第１検出部１６１は、ゲストＯＳ１８１上のログインユーザ名を取得して、ゲストＯＳ１８１にインストールされているゲストブラウザ１８２の種類を検出する。そして、第１検出部１６１は、ゲストブラウザ１８２のブラウザ名と、ゲストブラウザ１８２のログインユーザ名に対応するプレファレンスファイルへのディレクトリパスと、を含むプレファレンス情報を取得する。
【００３９】
なお、複数のゲストＯＳ１８１が動作している場合、第１検出部１６１は、ゲストＯＳ１８１ごとに情報を取得する。
【００４０】
第２検出部１６２は、ホストＯＳ１５０にインストールされているホストブラウザ１７０の種類を検出する。そして、第２検出部１６２は、ホストブラウザ１７０のブラウザ名と、ユーザ名と、ホストブラウザ１７０のユーザ名に対応するプレファレンスファイルへのディレクトリパスと、を含むプレファレンス情報を取得する。
【００４１】
選択部１６３は、第１検出部１６１が取得したゲストＯＳ１８１のログインユーザ名に対応する、ホストＯＳ１５０のユーザ名を選択する。例えば、選択部１６３は、ホストＯＳ１５０のユーザ名のうち、ゲストＯＳ１８１のユーザ名と同じユーザを選択する。なお、選択部１６３による選択方法はこれに限られず、ホストＯＳ１５０のユーザ名から、１つのユーザ名を選択する方法であればあらゆる方法を適用できる。例えば、ホストＯＳ１５０にログイン中のユーザのユーザ名を選択してもよいし、ユーザが明示的に指定したユーザ名を選択してもよい。
【００４２】
保存部１６４は、選択されたユーザ名に対して第１検出部１６１が検出したプレファレンス情報と、当該ユーザ名に対して第２検出部１６２が検出したプレファレンス情報とを対応づけて対応記憶部１４０に保存する。
【００４３】
受付部１６５は、ゲストＯＳ１８１から、プレファレンスへのアクセス要求を受付ける。例えば、受付部１６５は、ゲストブラウザ１８２による同ブラウザのプレファレンスへのデータの書き込み、および、同ブラウザのプレファレンスのデータの読み出しの要求を、アクセス要求として受付ける。
【００４４】
アクセス代行部１６６は、対応記憶部１４０のプレファレンスを提供される側（例えばゲストＯＳ１８１）のプレファレンスファイルへのアクセス要求が受付けられた場合に、対応記憶部１４０に格納されている対応情報を参照し、代わりに対応するホストＯＳ１５０上のプレファレンスファイルにアクセスする。例えば、アクセス代行部１６６は、役割が「提供される側」であるユーザ名の各プレファレンスファイル（ブックマークファイル１３１等）のファイル名が対応記憶部１４０に格納されている場合、対応する「提供する側」の各プレファレンスファイルのファイル名を読み出す。そして、アクセス代行部１６６は、読み出したファイル名のプレファレンスファイルにアクセスする。
【００４５】
アクセス代行部１６６は、アクセス要求が書き込み要求の場合、読み出したファイル名のプレファレンスファイルに対して指定されたデータを書き込み、書き込み結果を要求元に返す。また、アクセス代行部１６６は、アクセス要求が読み出し要求の場合、読み出したファイル名のプレファレンスファイルから指定されたデータを読み出し、読み出したデータを要求元に返す。
【００４６】
判定部１６７は、プレファレンスファイルへの読み出しおよび書き込み要求を発行したゲストＯＳ１８１のユーザが、対応するホストＯＳ１５０上のプレファレンスファイルの読み出しおよび書き込みを行う権限を有するか否かを判定する。
【００４７】
次に、このように構成された第１の実施の形態にかかる情報処理装置１００によるプレファレンス共有初期化処理について図３を用いて説明する。図３は、第１の実施の形態におけるプレファレンス共有初期化処理の全体の流れを示すフローチャートである。なお、仮想化ソフトウェア１６０は、情報処理装置１００が起動した時に例えばサービスとして起動していることを前提とする。
【００４８】
まず、第２検出部１６２が、ホストＯＳ１５０上で動作するホストブラウザ１７０のプレファレンス情報を検出する（ステップＳ５０１）。図４は、第２検出部１６２が検出するプレファレンス情報の一例を示す図である。同図は、ホストＯＳ１５０上にｕｓｅｒＡとＡｄｍｉｎｉｓｔｒａｔｏｒの２人のユーザが存在し、各ユーザに対して、ＢｒｏｗｓｅｒＡおよびＢｒｏｗｓｅｒＢの２種類のブラウザが検出された例を示している。なお、同図では省略しているが、表示履歴、パスワードファイル、およびブラウザの設定ファイルなどのプレファレンス情報を検出するように構成してもよい。
【００４９】
次に、第１検出部１６１が、ゲストＯＳ１８１上のログインユーザ名とゲストＯＳ１８１上で動作するゲストブラウザ１８２のプレファレンス情報を検出する（ステップＳ５０２）。
【００５０】
なお、第１検出部１６１および第２検出部１６２は、ゲストＯＳ１８１およびホストＯＳ１５０の種類に応じた所定の方法により、ログインユーザ名やプレファレンス情報を検出する。例えば、ゲストＯＳ１８１がＬｉｎｕｘ（登録商標）の場合、ログインユーザ名は、仮想化ソフトウェア１６０からゲストＯＳ１８１のディスクイメージファイル内の「／ｖａｒ／ｒｕｎ／ｕｔｍｐ」を読み出すことにより取得することができる。
【００５１】
図５は、第１検出部１６１が検出するプレファレンス情報の一例を示す図である。同図は、ログインユーザ名がｕｓｅｒＡであり、種類がＢｒｏｗｓｅｒＡであるゲストブラウザ１８２が検出された例を示している。なお、同図では省略しているが、表示履歴、パスワードファイル、およびブラウザの設定ファイルなどのプレファレンス情報を検出するように構成してもよい。
【００５２】
次に、選択部１６３が、検出されたホストブラウザ１７０のプレファレンス情報のうち、共有するプレファレンスのプレファレンス情報を選択する（ステップＳ５０３）。例えば、選択部１６３は、図４のプレファレンス情報のうち、ユーザ名が「ｕｓｅｒＡ」であるＢｒｏｗｓｅｒＡのプレファレンス情報を、共有するプレファレンスのプレファレンス情報として選択する。
【００５３】
次に、保存部１６４が、共有を提供する側であるホストブラウザ１７０（ＢｒｏｗｓｅｒＡ）のプレファレンス情報と、提供される側であるゲストブラウザ１８２（ＢｒｏｗｓｅｒＢ）のプレファレンス情報とを対応付けた対応情報を対応記憶部１４０に保存し（ステップＳ５０４）、プレファレンス共有初期化処理を終了する。
【００５４】
次に、このように構成された第１の実施の形態にかかる情報処理装置１００によるプレファレンス共有処理について図６を用いて説明する。図６は、第１の実施の形態におけるプレファレンス共有処理の全体の流れを示すフローチャートである。
【００５５】
まず、受付部１６５が、対応記憶部１４０に格納されているゲストブラウザ１８２のプレファレンスファイルへの読み出しまたは書き込み要求を受付ける（ステップＳ６０１）。
【００５６】
上述のように、仮想化ソフトウェア１６０は、ハードウェアリソースを仮想化し、複数のゲストＯＳ１８１からのハードウェアリソースへのアクセスの調停を行う。これは、ハードディスクに対しても同様である。すなわち、仮想化ソフトウェア１６０は、ゲストＯＳ１８１からのファイルへのアクセス要求をフックし、いずれのゲストＯＳ１８１がいずれのファイルにアクセス要求を発行したかを認識することができる。この性質により、ゲストＯＳ１８１上で動作するゲストブラウザ１８２のプレファレンスファイルへの読み出しおよび書き込みを検知することができる。また、ゲストＯＳ１８１からユーザ名へのマッピングには、対応記憶部１４０に格納されている情報を用いる。
【００５７】
次に、アクセス代行部１６６は、読み出しまたは書き込みを要求されたゲストブラウザ１８２のプレファレンスファイルに対応するホストブラウザ１７０のプレファレンスファイルのファイル名を対応記憶部１４０から取得する（ステップＳ６０２）。
【００５８】
次に、判定部１６７は、読み出しまたは書き込みを要求したゲストＯＳ１８１のユーザが、取得したファイル名のプレファレンスファイルの読み出しまたは書き込みを行う権限を有するか否かを判断する（ステップＳ６０３）。
【００５９】
例えば、該当するホストＯＳ１５０上のプレファレンスファイルにアクセス権限を設定しておき、判定部１６７が、このアクセス権限を参照してアクセス制御を行うように構成することができる。なお、アクセス権限の判定方法はこれに限られず、従来から用いられているあらゆる方法を適用できる。例えば、判定部１６７が独自のアクセス制御のルールを定め、このルールを元にアクセス権限を判定するように構成してもよい。
【００６０】
アクセス権限を有さないと判断された場合（ステップＳ６０３：ＮＯ）、仮想化ソフトウェア１６０は、通常と同様の方法により、ゲストブラウザ１８２のプレファレンスファイルにアクセスする（ステップＳ６０４）。アクセス権限を有すると判断された場合（ステップＳ６０３：ＹＥＳ）、アクセス代行部１６６は、ステップＳ６０２で取得したファイル名のプレファレンスファイル（ホストブラウザ１７０のプレファレンスファイル）にアクセスする（ステップＳ６０５）。
【００６１】
図２の例では、ゲストＯＳ１８１が、ゲストブラウザ１８２のブックマークファイル「／ｈｏｍｅ／ｕｓｅｒＡ／ＢｒｏｗｓｅｒＡ／ｚｚｚｚｚｚｚｚ．ｄｅｆａｕｌｔ／ｐｌａｃｅｓ．ｓｑｌｉｔｅ」に対して読み出し要求を発行すると、仮想化ソフトウェア１６０がこの読み出し要求をフックする。アクセス代行部１６６は、このファイルが、対応記憶部１４０に格納されているファイルであることと、ゲストＯＳ１８１に対応するユーザがｕｓｅｒＡであることを検知する。判定部１６７は、このｕｓｅｒＡがホストブラウザ１７０のブックマークファイル「Ｃ：￥Ｄｏｃｕｍｅｎｔｓ  ａｎｄ  Ｓｅｔｔｉｎｇｓ￥ｕｓｅｒＡ￥Ａｐｐｌｉｃａｔｉｏｎ  Ｄａｔａ￥ＢｒｏｗｓｅｒＡ￥Ｐｒｏｆｉｌｅｓ￥ｘｘｘｘｘｘｘｘ．ｄｅｆａｕｌｔ￥ｐｌａｃｅｓ．ｓｑｌｉｔｅ」を読み出す権利を有するかを判断する。読み出す権限を有する場合は、アクセス代行部１６６がホストブラウザ１７０のブックマークファイルを読み出す。読み出す権限を有さない場合は、仮想化ソフトウェア１６０は、ゲストブラウザ１８２のブックマークファイルを読み出す。
【００６２】
上述のように、キャッシュの場合は、共有の対象はファイルではなくフォルダとなる。このため、例えば、ゲストブラウザ１８２のキャッシュファイル「／ｈｏｍｅ／ｕｓｅｒＡ／ＢｒｏｗｓｅｒＡ／ｚｚｚｚｚｚｚｚ．ｄｅｆａｕｌｔ／Ｃａｃｈｅ／ＸＸＸＸＸＸＸＸＸＸＸ」は、ホストブラウザ１７０のキャッシュファイル「Ｃ：￥Ｄｏｃｕｍｅｎｔｓ  ａｎｄ  Ｓｅｔｔｉｎｇｓ￥ｕｓｅｒＡ￥Ｌｏｃａｌ  Ｓｅｔｔｉｎｇｓ￥Ａｐｐｌｉｃａｔｉｏｎ  Ｄａｔａ￥ＢｒｏｗｓｅｒＡ￥Ｐｒｏｆｉｌｅｓ￥ｘｘｘｘｘｘｘｘ．ｄｅｆａｕｌｔ￥Ｃａｃｈｅ￥ＸＸＸＸＸＸＸＸＸＸＸ」に対応付けられる。
【００６３】
このように、第１の実施の形態にかかる情報処理装置では、特定のユーザによる特定のファイルへのアクセス要求のみを仮想化ソフトウェアでフックして、代わりに対応するホストＯＳ上のファイルへのアクセス要求を行うことができる。これにより、仮想計算機環境のブラウザ間で最新の設定情報（プレファレンス）を共有することができる。また、必要最低限のユーザに必要最低限のファイルのみを利用可能とすることができるため、最新の設定情報を共有するときの安全性を保つことができる。また、仮想化ソフトウェアにファイルを共有するための仕組みを導入するため、利用環境に依存せず、ユーザの設定も変更する必要がない。すなわち、ユーザの利便性も保つことができる。
【００６４】
（第２の実施の形態）
第１の実施の形態では、同じ種類のブラウザ間でプレファレンスを共有していた。これに対し、第２の実施の形態の情報処理装置は、異なる種類のブラウザ間でプレファレンスを共有する。以下では、ホストＯＳ上で動作する種類が「ＢｒｏｗｓｅｒＢ」のブラウザのプレファレンスを、ゲストＯＳ上で動作する種類が「ＢｒｏｗｓｅｒＡ」のブラウザが共有する例について説明する。例えば、Ｗｉｎｄｏｗｓ（登録商標）であるホストＯＳ上で動作する「Ｉｎｔｅｒｎｅｔ  Ｅｘｐｌｏｒｅｒ  ６」（登録商標）のプレファレンスを、Ｌｉｎｕｘ（登録商標）であるゲストＯＳ上で動作する「Ｆｉｒｅｆｏｘ  ３」（登録商標）で共有する場合が該当する。
【００６５】
図７は、第２の実施の形態にかかる情報処理装置２００の構成の一例を示すブロック図である。図７に示すように、情報処理装置２００は、ハードウェア２１０と、ソフトウェア２２０とを備えている。
【００６６】
第２の実施の形態では、ソフトウェア２２０内の仮想化ソフトウェア２６０に変換部２６８が追加されたこと、仮想化ソフトウェア２６０のアクセス代行部２６６の機能、および、ハードウェア２１０内の対応記憶部２４０のデータ構造が、第１の実施の形態と異なっている。その他の構成および機能は、第１の実施の形態と同様であるので、ここでの説明は省略する。
【００６７】
対応記憶部２４０は、ホストブラウザ１７０とゲストブラウザ１８２との間でプレファレンスファイルのフォーマットの変換が必要か否かを表す情報をさらに格納する。図８は、対応記憶部２４０に記憶される対応情報のデータ構造の一例を示す図である。図８に示すように対応記憶部２４０は、図２に示す第１の実施の形態の対応記憶部１４０の各データに加え、フォーマット変換の要否を表す変換フィールド、および、ブラウザ名を含んでいる。同図では変換が必要なことを表す「必要」が設定された例が示されている。変換が不要な場合は、例えば、「不要」を変換フィールドに設定する。
【００６８】
アクセス代行部２６６は、第１の実施の形態のアクセス代行部１６６の機能に加え、対応記憶部２４０に格納されているプレファレンスファイルへの読み出しおよび書き込みの際に、フォーマットの変換が必要であることが対応記憶部２４０に記憶されているか否かを判断する。
【００６９】
変換部２６８は、フォーマットの変換が必要なことが対応記憶部２４０に記憶されている場合に、対応するプレファレンスファイルから読み出したデータのフォーマット、および、対応するプレファレンスファイルに書き込むデータのフォーマットを、ホストブラウザ１７０の種類およびゲストブラウザ１８２の種類に応じて変換する。
【００７０】
次に、このように構成された第２の実施の形態にかかる情報処理装置２００によるプレファレンス共有処理について図９を用いて説明する。なお、プレファレンス共有初期化処理は、保存する情報が上述のように変更されるのみであり、処理の流れは第１の実施の形態と同様（図３参照）であるため、説明を省略する。図９は、第２の実施の形態におけるプレファレンス共有処理の全体の流れを示すフローチャートである。
【００７１】
ステップＳ９０１からステップＳ９０４までの、アクセス要求受付処理、アクセス権限判定処理は、第１の実施の形態にかかる情報処理装置１００におけるステップＳ６０１からステップＳ６０４までと同様の処理なので、その説明を省略する。
【００７２】
プレファレンスファイルのアクセス権限を有すると判断された場合（ステップＳ９０３：ＹＥＳ）、アクセス代行部２６６は、アクセス要求が読み出し要求か否かを判断する（ステップＳ９０５）。読み出し要求の場合（ステップＳ９０５：ＹＥＳ）、アクセス代行部２６６は、ステップＳ９０２で取得したファイル名のプレファレンスファイル（ホストブラウザ１７０のプレファレンスファイル）から指定されたデータを読み出す（ステップＳ９０６）。
【００７３】
次に、アクセス代行部２６６は、対応記憶部２４０を参照し、フォーマットの変換が必要であることが記憶されているか否かを判断する（ステップＳ９０７）。変換が必要な場合は（ステップＳ９０７：ＹＥＳ）、アクセス代行部２６６は、読み出したデータを変換部２６８に渡す。変換部２６８は、渡されたデータのフォーマットを、ホストブラウザ１７０のブラウザ名とゲストブラウザ１８２のブラウザ名に応じて変換する（ステップＳ９０８）。各ブラウザのブラウザ名は、対応記憶部２４０から取得することができる。
【００７４】
変換が必要でない場合は（ステップＳ９０７：ＮＯ）、アクセス代行部２６６は、読み出したデータを変換せずに要求元へ返し（同図では図示せず）、プレファレンス共有処理を終了する。
【００７５】
ステップＳ９０５で、アクセス要求が読み出し要求でない、すなわち、書込み要求であると判断された場合（ステップＳ９０５：ＮＯ）、アクセス代行部２６６は、対応記憶部２４０を参照し、フォーマットの変換が必要であることが記憶されているか否かを判断する（ステップＳ９０９）。変換が必要な場合は（ステップＳ９０９：ＹＥＳ）、アクセス代行部２６６は、書き込むデータを変換部２６８に渡す。変換部２６８は、渡されたデータのフォーマットを、ホストブラウザ１７０のブラウザ名とゲストブラウザ１８２のブラウザ名に応じて変換する（ステップＳ９１０）。
【００７６】
変換が必要でない場合（ステップＳ９０９：ＮＯ）、および、ステップＳ９１０でフォーマット変換後、アクセス代行部２６６は、要求されたデータをプレファレンスファイルに書き込み（ステップＳ９１１）、プレファレンス共有処理を終了する。
【００７７】
次に、フォーマット変換の具体例について説明する。例えば、Ｉｎｔｅｒｎｅｔ  Ｅｘｐｌｏｒｅｒ  ６（登録商標）のブックマークファイルは文字コードをＳｈｉｆｔ＿ＪＩＳとして保存するが、Ｆｉｒｅｆｏｘ  ３（登録商標）のブックマークファイルは文字コードをＵＴＦ−８として保存する。  また、Ｉｎｔｅｒｎｅｔ  Ｅｘｐｌｏｒｅｒ  ６（登録商標）はブックマークをテキストファイルとして保存するが、Ｆｉｒｅｆｏｘ  ３（登録商標）はブックマークをＳＱＬｉｔｅ３データベースとして保存する。さらに、Ｉｎｔｅｒｎｅｔ  Ｅｘｐｌｏｒｅｒ  ６（登録商標）はブックマークと表示履歴とを別々に管理するが、Ｆｉｒｅｆｏｘ  ３（登録商標）はブックマークと表示履歴とを同じデータベースで管理する。
【００７８】
このため、両者のうちいずれかのブラウザのブックマークファイルを他方のブラウザで共有する場合は、ブックマークの文字コードの変換、および、ブックマークのファイル形式の変換が必要となる。
【００７９】
図８の例では、ゲストＯＳ１８１がブックマークを追加するためにゲストブラウザ１８２のブックマークファイル「／ｈｏｍｅ／ｕｓｅｒＡ／ＢｒｏｗｓｅｒＡ／ｚｚｚｚｚｚｚｚ．ｄｅｆａｕｌｔ／ｐｌａｃｅｓ．ｓｑｌｉｔｅ」に対する書き込み要求を発行すると、仮想化ソフトウェア２６０がこの書き込み要求をフックする。アクセス代行部２６６は、このファイルに対して対応記憶部２４０でフォーマットの変換が必要なことがマークされていると判定する。このため、アクセス代行部２６６は、変換部２６８に対して書き込むデータを渡す。変換部２６８は、データの文字コードをＵＴＦ−８からＳｈｉｆｔ＿ＪＩＳに変換する。また、変換部２６８は、データがブックマーク情報であるか表示履歴情報であるかを判断する。ブックマーク情報であれば、アクセス代行部２６６は、ホストブラウザ１７０のブックマークファイル「Ｃ：￥Ｄｏｃｕｍｅｎｔｓ  ａｎｄ  Ｓｅｔｔｉｎｇｓ￥ｕｓｅｒＡ￥Ｆａｖｏｒｉｔｅｓ￥」にデータを書き込む。表示履歴情報であれば、アクセス代行部２６６は、ホストブラウザ１７０の表示履歴「Ｃ：￥Ｄｏｃｕｍｅｎｔｓ  ａｎｄ  Ｓｅｔｔｉｎｇｓ￥ｕｓｅｒＡ￥Ｌｏｃａｌ  Ｓｅｔｔｉｎｇｓ￥Ｈｉｓｔｏｒｙ」にデータを書き込む。
【００８０】
また、ゲストＯＳ１８１がブックマークを確認するために、ゲストブラウザ１８２のブックマークファイル「／ｈｏｍｅ／ｕｓｅｒＡ／ＢｒｏｗｓｅｒＡ／ｚｚｚｚｚｚｚｚ．ｄｅｆａｕｌｔ／ｐｌａｃｅｓ．ｓｑｌｉｔｅ」に対する読み出し要求を発行したとする。アクセス代行部２６６は、このファイルに対して対応記憶部２４０でフォーマットの変換が必要なことがマークされていると判定する。このため、アクセス代行部２６６は、変換部２６８に対してフォーマットの変換に必要な情報を確認する。そして、アクセス代行部２６６は、ホストブラウザ１７０のブックマークファイル「Ｃ：￥Ｄｏｃｕｍｅｎｔｓ  ａｎｄ  Ｓｅｔｔｉｎｇｓ￥ｕｓｅｒＡ￥Ｆａｖｏｒｉｔｅｓ￥」および表示履歴「Ｃ：￥Ｄｏｃｕｍｅｎｔｓ  ａｎｄ  Ｓｅｔｔｉｎｇｓ￥ｕｓｅｒＡ￥Ｌｏｃａｌ  Ｓｅｔｔｉｎｇｓ￥Ｈｉｓｔｏｒｙ」のテキストファイルを読み出す。変換部２６８は、読み出したデータのブックマーク情報と表示履歴情報とを統合し、文字コードをＳｈｉｆｔ＿ＪＩＳからＵＴＦ−８に変換し、さらにＳＱＬｉｔｅ３データベースの形式に変換する。
【００８１】
Ｉｎｔｅｒｎｅｔ  Ｅｘｐｌｏｒｅｒ  ６（登録商標）では、ブックマークおよび表示履歴をそれぞれ個別のテキストファイルで管理する。一方、Ｆｉｒｅｆｏｘ  ３（登録商標）では、ブックマークと表示履歴とを１つのデータベースで管理する。
【００８２】
Ｆｉｒｅｆｏｘ  ３（登録商標）でブックマークと表示履歴とを管理するデータベース「ｐｌａｃｅｓ．ｓｑｌｉｔｅ」は、ＵＲＬテーブル、ブックマークテーブル、注釈テーブル、お気に入りアイコンテーブル、および履歴テーブルから構成される。
【００８３】
通常は、新しいウェブページを表示すると、ＵＲＬテーブルと履歴テーブルとにエントリが追加される。また、ブックマークを追加すると、ブックマークテーブル、注釈テーブル、およびお気に入りアイコンテーブルにエントリが追加される。そのため、ｐｌａｃｅｓ．ｓｑｌｉｔｅへ書き込み要求が発生した場合は、書き込むデータの内容を見て、表示履歴情報であるかブックマーク情報であるかを判別できる。なお、お気に入りアイコンテーブルのエントリは追加されないこともある。
【００８４】
ｐｌａｃｅｓ．ｓｑｌｉｔｅへ読み出し要求が発生した場合は、ホストブラウザ１７０のブックマークファイルと表示履歴ファイルとを読み出して情報を統合するとしたが、ブックマークファイルだけ読み出してもよいし、表示履歴ファイルだけ読み出してもよい。
【００８５】
テキストファイルとＳＱＬｉｔｅ３データベースとの間の形式変換は、ＳＱＬｉｔｅ３コマンドを用いて行うことができる。
【００８６】
例えば、ｐｌａｃｅｓ．ｓｑｌｉｔｅというＳＱＬｉｔｅ３データベースからｐｌａｃｅｓ．ｄｕｍｐというテキストファイルへは、コマンド「＄  ｅｃｈｏ  ‘．ｄｕｍｐ’  ｜  ｓｑｌｉｔｅ３  ｐｌａｃｅｓ．ｓｑｌｉｔｅ  ＞  ｐｌａｃｅｓ．ｄｕｍｐ」により変換できる。
【００８７】
一方、ｐｌａｃｅｓ．ｄｕｍｐというテキストファイルからｐｌａｃｅｓ．ｓｑｌｉｔｅというＳＱＬｉｔｅ３データベースへは、コマンド「＄  ｃａｔ  ｐｌａｃｅｓ．ｄｕｍｐ  ｜  ｓｑｌｉｔｅ３  ｐｌａｃｅｓ．ｓｑｌｉｔｅ」により変換できる。
【００８８】
ブックマーク以外のプレファレンスも同様に、必要に応じて文字コードの変換やファイル形式の変換などを行う。
【００８９】
このように、第２の実施の形態にかかる情報処理装置では、特定のユーザによる特定のファイルへのアクセス要求を仮想化ソフトウェアでフックして、代わりに対応するホストＯＳ上のファイルへのアクセス要求を行う際に、読み出したデータおよび書き込むデータのフォーマットを必要に応じて変換することにより、仮想計算機環境の異なるブラウザ間で、最新のプレファレンスを安全に共有することができる。
【００９０】
次に、第１または第２の実施の形態にかかる情報処理装置のハードウェア構成について図１０を用いて説明する。図１０は、第１または第２の実施の形態にかかる情報処理装置のハードウェア構成を示す説明図である。
【００９１】
第１または第２の実施の形態にかかる情報処理装置は、プロセッサ５１などの制御装置と、ＲＯＭ（Read  Only  Memory）５２やＲＡＭ５３などの記憶装置と、ネットワークに接続して通信を行う通信Ｉ／Ｆ５４と、ＨＤＤ（Hard  Disk  Drive）、ＣＤ（Compact  Disc）ドライブ装置などの外部記憶装置と、ディスプレイ装置などの表示装置と、キーボードやマウスなどの入力装置と、各部を接続するバス６１を備えており、通常のコンピュータを利用したハードウェア構成となっている。
【００９２】
第１または第２の実施の形態にかかる情報処理装置で実行される情報処理プログラムは、インストール可能な形式又は実行可能な形式のファイルでＣＤ−ＲＯＭ（Compact  Disk  Read  Only  Memory）、フレキシブルディスク（ＦＤ）、ＣＤ−Ｒ（Compact  Disk  Recordable）、ＤＶＤ（Digital  Versatile  Disk）等のコンピュータで読み取り可能な記録媒体に記録されて提供される。
【００９３】
また、第１または第２の実施の形態にかかる情報処理装置で実行される情報処理プログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。また、第１または第２の実施の形態にかかる情報処理装置で実行される情報処理プログラムをインターネット等のネットワーク経由で提供または配布するように構成してもよい。
【００９４】
また、第１または第２の実施の形態の情報処理プログラムを、ＲＯＭ等に予め組み込んで提供するように構成してもよい。
【００９５】
第１または第２の実施の形態にかかる情報処理装置で実行される情報処理プログラムは、上述した各部（第１検出部、第２検出部、選択部、保存部、受付部、アクセス代行部、判定部）を含むモジュール構成となっており、実際のハードウェアとしてはプロセッサ５１が上記記憶媒体から情報処理プログラムを読み出して実行することにより上記各部が主記憶装置上にロードされ、上述した各部が主記憶装置上に生成されるようになっている。
【００９６】
なお、本発明は、上記実施の形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化することができる。また、上記実施の形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成することができる。例えば、実施の形態に示される全構成要素からいくつかの構成要素を削除してもよい。さらに、異なる実施の形態にわたる構成要素を適宜組み合わせても良い。
【符号の説明】
【００９７】
５１  プロセッサ
５２  ＲＯＭ
５３  ＲＡＭ
５４  通信Ｉ／Ｆ
６１  バス
１００、２００  情報処理装置
１１０、２１０  ハードウェア
１２０、２２０  ソフトウェア
１３０  設定記憶部
１３１  ブックマークファイル
１３２  Ｃｏｏｋｉｅファイル
１３３  キャッシュファイル
１４０、２４０  対応記憶部
１５０  ホストＯＳ
１６０、２６０  仮想化ソフトウェア
１６１  第１検出部
１６２  第２検出部
１６３  選択部
１６４  保存部
１６５  受付部
１６６、２６６  アクセス代行部
１６７  判定部
１７０  ホストブラウザ
１８０  仮想計算機
１８１  ゲストＯＳ
１８２  ゲストブラウザ
２６８  変換部
【図１】
2010198169.tif 000003
【図２】
2010198169.tif 000004
【図３】
2010198169.tif 000005
【図４】
2010198169.tif 000006
【図５】
2010198169.tif 000007
【図６】
2010198169.tif 000008
【図７】
2010198169.tif 000009
【図８】
2010198169.tif 000010
【図９】
2010198169.tif 000011
【図１０】
2010198169.tif 000012