(57)【要約】【課題】権限に係わらずにユーザが特定のフォルダのみにデータを保存すること。【解決手段】実施形態によれば、計算機は、起動手段と、割り当て手段と、削除手段とを具備する。起動手段は、仮想マシンを実行するため基本仮想ストレージファイルと、仮想マシン内で実行されるオペレーティングシステムおよび／またはアプリケーションを更新するための基本仮想ストレージファイル内のデータの変更箇所と変更データとを示す差分情報を含む更新差分仮想ストレージファイルと、基本仮想ストレージファイルおよび更新仮想ストレージファイル内のデータの変更箇所と変更データとを含む変更差分仮想ストレージファイルとから構成される第１仮想ストレージを用いて仮想マシンを起動する。割り当て手段は、第２仮想ストレージを仮想マシンに割り当てる。削除手段は、仮想マシンの終了時に差分情報によって示される変更箇所を全て変更無しにする。【選択図】    図４
2012069149.tif 000002
【特許請求の範囲】
【請求項１】
仮想マシンが動作するように設定された計算機であって、
仮想マシン内で動作するオペレーティングシステムおよび／またはアプリケーションを更新するための更新プログラムがある場合に、パッチ適用モードフラグを設定する設定手段と、
前記仮想マシンの終了時に前記パッチ適用モードフラグの有無を確認する確認手段と、
前記パッチ適用モードフラグが設定されていない場合に、前記仮想マシンに割り当てられているデータ保存用仮想ストレージファイルから構成される仮想ストレージ内のデータを削除する削除手段と、
前記パッチ適用モードフラグが設定されている場合に、前記仮想マシンを実行するための基本仮想ストレージファイルと、前記仮想マシン内で実行される前記オペレーティングシステムおよび／または前記アプリケーションを更新するための前記基本仮想ストレージファイル内のデータの変更箇所と変更データとを示す差分情報を含む更新差分仮想ストレージファイルとを用いて前記仮想マシンを起動する起動手段と、
前記仮想マシンの起動後に前記パッチ適用モードフラグが設定されている場合に、前記更新プログラムによって前記オペレーティングシステムおよび／または前記アプリケーションを更新した後に、前記仮想マシンを終了させる更新手段と
を具備する計算機。
【請求項２】
前記設定手段は、前記更新プログラムがあるかをサーバに問い合わせる請求項１に記載の計算機。
【請求項３】
前記設定手段は、前記更新プログラムがあるかを、所定のＷｅｂサイトに問い合わせる請求項１に記載の計算機。
【請求項４】
前記設定手段は、仮想ハードディスクファイルにより、前記更新プログラムがあるかを判定する請求項１に記載の計算機。
【請求項５】
前記設定手段は、前記仮想ハードディスクファイルに前記更新プログラムがある時、使用許諾が同意されているかを判定し、同意されている場合に、前記更新プログラムを示す情報を更新プログラムリストに追加する
請求項４に記載の計算機。
【請求項６】
仮想マシンが動作するように設定された計算機であって、
仮想マシン内で実行されるオペレーティングシステムおよび／またはアプリケーションを更新するための更新プログラムがある場合に、前記仮想マシンを実行するため基本仮想ストレージファイルと、前記オペレーティングシステムおよび／または前記アプリケーションを更新するための前記基本仮想ストレージファイル内のデータの変更箇所と変更データとを示す差分情報を含む更新差分仮想ストレージファイルとを用いて前記仮想マシンを起動し、
前記更新プログラムがない場合に、前記基本仮想ストレージファイルと、前記更新差分仮想ストレージファイルとを用いて前記仮想マシンを起動する起動手段と
を具備する計算機。
【請求項７】
仮想マシン内で動作するオペレーティングシステムおよび／またはアプリケーションを更新するための更新プログラムがある場合に、パッチ適用モードフラグを設定し、
前記仮想マシンの終了時に前記パッチ適用モードフラグの設定の有無を確認し、
前記パッチ適用モードフラグが設定されていない場合に、前記仮想マシンに割り当てられているデータ保存用仮想ストレージファイルから構成される仮想ストレージ内のデータを削除し、
前記パッチ適用モードフラグが設定されている場合に、前記仮想マシンを実行するための基本仮想ストレージファイルと、前記仮想マシン内で実行されるオペレーティングシステムおよび／またはアプリケーションを更新するための前記基本仮想ストレージファイル内のデータの変更箇所と変更データとを示す差分情報を含む更新差分仮想ストレージファイルとを用いて前記仮想マシンを起動し、
前記仮想マシンの起動後に前記パッチ適用モードフラグが設定されている場合に、前記更新プログラムによって前記オペレーティングシステムおよび／または前記アプリケーションを更新し、
前記オペレーティングシステムおよび／または前記アプリケーションが前記更新プログラムによって更新された場合に、前記仮想マシンを終了させる
計算機の制御方法。
【請求項８】
前記更新プログラムがあるかをサーバに問い合わせる請求項７に記載の計算機の制御方法。
【請求項９】
前記更新プログラムがあるかを、所定のＷｅｂサイトに問い合わせる請求項７に記載の計算機の制御方法。
【請求項１０】
仮想ハードディスクファイルにより、前記更新プログラムがあるかを判定する請求項７に記載の計算機の制御方法。
【請求項１１】
前記仮想ハードディスクファイルに前記更新プログラムがある時、使用許諾が同意されているかを判定し、同意されている場合に、更新プログラムリストに追加する
請求項１０に記載の計算機の制御方法。
【請求項１２】
仮想マシンを実行するため基本仮想ストレージファイルと、前記仮想マシン内で実行されるオペレーティングシステムおよび／またはアプリケーションを更新するための前記基本仮想ストレージファイル内のデータの変更箇所と変更データとを示す差分情報を含む更新差分仮想ストレージファイルと、前記基本仮想ストレージファイルおよび前記更新差分仮想ストレージファイル内のデータの変更箇所と変更データとを含む変更差分仮想ストレージファイルとから構成される第１仮想ストレージを用いて前記仮想マシンを起動する起動手段と、
データ保存用仮想ストレージファイルから構成される第２仮想ストレージを前記仮想マシンに割り当てる手段と、
前記仮想マシンの終了時に前記変更差分仮想ストレージファイル内に含まれる前記差分情報内の変更箇所を全て変更無しにすると共に、前記差分情報内の前記変更データを削除する削除手段と
を具備する計算機。
【請求項１３】
前記起動手段は、前記基本仮想ストレージファイルおよび前記更新差分仮想ストレージファイルとから構成される第３仮想ストレージを用いて前記仮想マシンを起動する
請求項１２に記載の計算機。
【請求項１４】
前記オペレーティングシステムおよび／またはアプリケーションを更新するための更新プログラムを取得し、前記更新プログラムを実行することによって前記オペレーティングシステムおよび／またはアプリケーションを更新し、更新される前のオペレーティングシステムおよび／またはアプリケーションに対する更新されたオペレーティングシステムおよび／またはアプリケーションのデータの変更箇所と変更データを前記更新差分仮想ストレージファイルに記録する記録手段を更に具備する
請求項１２に記載の計算機。
【請求項１５】
前記更新プログラムの適用に同意するかが問い合わせられ、前記更新プログラムの適用に同意した場合に、当該更新プログラムを適用する手段を更に具備する
請求項１４に記載の計算機。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、仮想化マシンが実行される計算機および計算機の制御方法に関する。
【背景技術】
【０００２】
従来は、ＡＣＬを設定することで、“Ｃ：＼”をユーザ権限では書き込み禁止にすることで、“Ｃ：＼Ｕｓｅｒｓ”以外にはファイルを保存できないようにしていた。
【０００３】
しかし、ユーザが管理者権限を持っている場合には、書き込みを禁止にできない。また、ユーザが管理者権限を持っていない場合でも、書き込めるフォルダが存在する。また、リバース・ポイント（ジャンクション・ポイント）等を使用している場合書き込みができてしまう。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００６−２２１６４９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特定のフォルダのみにデータを書き込みできるように設定しても、管理者権限を持っていると書き込みを禁止することができなかった。
【０００６】
本発明の目的は、権限に係わらずにユーザが特定のフォルダのみにデータを保存することが可能な計算機および計算機の制御方法を提供することにある。
【課題を解決するための手段】
【０００７】
実施形態に係わる計算機は、仮想マシンが動作するように設定された計算機であって、設定手段と、確認手段と、削除手段と、起動手段と、更新手段とを具備する。設定手段は、仮想マシン内で動作するオペレーティングシステムおよび／またはアプリケーションを更新するための更新プログラムがある場合に、パッチ適用モードフラグを設定する。確認手段は、前記仮想マシンの終了時に前記パッチ適用モードフラグの有無を確認する。削除手段は、前記パッチ適用モードフラグが設定されていない場合に、前記仮想マシンに割り当てられているデータ保存用仮想ストレージファイルから構成される仮想ストレージ内のデータを削除する。起動手段は、前記パッチ適用モードフラグが設定されている場合に、前記仮想マシンを実行するための基本仮想ストレージファイルと、前記仮想マシン内で実行される前記オペレーティングシステムおよび／または前記アプリケーションを更新するための前記基本仮想ストレージファイル内のデータの変更箇所と変更データとを示す差分情報を含む更新差分仮想ストレージファイルとを用いて前記仮想マシンを起動する。更新手段は、前記仮想マシンの起動後に前記パッチ適用モードフラグが設定されている場合に、前記更新プログラムによって前記オペレーティングシステムおよび／または前記アプリケーションを更新した後に、前記仮想マシンを終了させる。
【図面の簡単な説明】
【０００８】
【図１】第１の実施形態のコンピュータシステムの構成を示すブロック図。
【図２】第１の実施形態に係るコンピュータの構成を示すブロック図。
【図３】第１の実施形態に係る仮想マシン内で実行されるオペレーティングシステムによって管理されるディスクの構成を示す図。
【図４】第１の実施形態に係るディスクを構成する仮想ハードディスクファイルを示す図。
【図５】第１の実施形態に係る仮想ハードディスクを構成するファイルの配信後のＷｉｎｄｏｗｓ（登録商標）サービスの処理を示すフローチャート。
【図６】第１の実施形態に係る起動後の仮想マシン内で実行される処理を示すフローチャート。
【図７】第１の実施形態に係る仮想マシンの起動時および終了時の仮想化ソフトウェアによる処理の手順を示すフローチャート。
【図８】第２の実施形態に係わる、Ｍｉｃｒｏｓｏｆｔ  ＵｐｄａｔｅまたはＷｉｎｄｏｗｓ  Ｕｐｄａｔｅサイトから更新プログラムをインストールする環境でも対応可能とするためのＷｉｎｄｏｗｓサービスの動作処理の手順を示すフローチャート。
【図９】第３の実施形態に係るディスクを構成する仮想ハードディスクファイルを示す図。
【図１０】図９に示すディスクの構成の場合のＷｉｎｄｏｗｓサービスの処理の手順を示すフローチャート。
【発明を実施するための形態】
【０００９】
以下、実施の形態について図面を参照して説明する。
【００１０】
（第１の実施形態）
図１は、第１の実施形態に係わるコンピュータシステムの構成を示すブロック図である。  
オフィス内のオフィスネットワーク３０に、ＷＳＵＳサーバ１０、管理サーバ１１、および複数台のクライアントコンピュータ２０１〜２０ｎ等が接続されている。オフィスネットワーク３０は、ゲートウェイ４０を介して外部のネットワーク６０に接続されている。外部のネットワーク６０には更新プログラム・カタログファイル配布サーバ４１および更新プログラム配布サーバ４２が接続されている。
【００１１】
ＷＳＵＳサーバ１０は、定期的（例えば１日１回）に更新プログラム・カタログファイル配布サーバ４１にアクセスし、更新プログラム・カタログファイル配布サーバ４１から更新プログラム・カタログファイルを取得して、更新プログラム・カタログファイルを自機が有する記憶装置に格納する。更新プログラム・カタログファイルには、更新プログラムを取得するための情報が格納されている。
【００１２】
更新プログラム・カタログファイル配布サーバ４１および更新プログラム配布サーバ４２は、マイクロソフト社によって運営されている。ＷｉｎｄｏｗｓやＭｉｃｒｏｓｏｆｔ  Ｏｆｆｉｃｅといったマイクロソフト社の製品の更新プログラムがリリースされると、マイクロソフト社は、更新プログラム・カタログファイルを更新する。更新プログラム配布サーバ４２は更新プログラム・カタログファイルに登録されている更新プログラムを配布するために設置されている。
【００１３】
クライアントコンピュータ２０（２０１〜２０ｎ）は、ＷＳＵＳサーバ１０から更新プログラム・カタログファイルが更新されると、新たな更新プログラム・カタログファイルを取得する。そして、取得した更新プログラム・カタログファイルに登録されている更新プログラムを更新プログラム配布サーバ４２から取得し、更新プログラムを用いてオペレーティングシステムまたはアプリケーションプログラムのコードを修正する。
【００１４】
また、管理サーバ１１には、クライアントコンピュータ２０によって仮想マシンを実行するためのイメージファイルが格納されている。クライアントコンピュータ２０は、起動時に管理サーバからイメージファイルを管理サーバ１１から取得することによって、仮想マシンを実行する。仮想マシン内で実行されるオペレーティングシステムは、例えばマイクロソフト社製のＷｉｎｄｏｗｓが動作する。また、Ｗｉｎｄｏｗｓ上でオフィスアプリケーションプログラムとしてＭｉｃｒｏｓｏｆｔ  Ｏｆｆｉｃｅが動作する。
【００１５】
まず、図２を参照して、第１の実施形態に係るコンピュータの構成について説明する。コンピュータ２０（２０１、…、２０ｎ）には、例えば、ＸＥＮ，ＶＭＷＡＲＥなどで提供される仮想化技術（Virtual Monitor）を実行する環境が整えられている。
【００１６】
コンピュータ２０は、ハードウェア層（計算資源）１０１、仮想化ソフトウェア１０２、ユーザ用仮想マシン１１０等を有する。
【００１７】
ハードウェア層１０１は、ディスプレイ、ハードディスクドライブ（ＨＤＤ）、ネットワークインターフェスカード、キーボード、およびマウス等を有する。
【００１８】
仮想化ソフトウェア１０２は、ハードウェア層１０１を管理し、仮想マシン１１０に対してリソース割り当てを行う。また仮想化ソフトウェア１０２は、ハードウェア層（計算資源）１１を論理的に複数に分割して各仮想マシンを割り当て、各仮想マシンの実行スケジュールと仮想マシンからのＩ／Ｏ要求をハードウェア層１０１へ振り分ける。
【００１９】
ユーザ用仮想マシン１１０内では、オペレーティングシステム（ＯＳ）１１１、Ｗｉｎｄｏｗｓサービス１１２、アプリケーション（ＡＰＰ）１１３等が動作する。オペレーティングシステム１１１は、ユーザが一般的に使用する環境を提供するためのオペレーティングシステムである。一般的には、オペレーティングシステム１１１としては、ウインドウズ（登録商標）系のオペレーティングシステムが用いられる。
【００２０】
Ｗｉｎｄｏｗｓサービス１１２とは、ユーザが意識することなく特定の機能を実行する。Ｗｉｎｄｏｗｓサービス１１２はオペレーティングシステム１１１のブート時に自動適時に起動され、オペレーティングシステムの動作中はバックグラウンドで常時動作する。アプリケーション１１３は、オペレーティングシステム１１１上で動作するアプリケーションソフトウェアである。
【００２１】
コンピュータ２０内の仮想マシンは、イメージファイルとして仮想ハードディスク（ＶＨＤ（Virtual Hard Disk））を使用する。仮想ハードディスクの使用は、現在マイクロソフト社によって公開されている。
【００２２】
仮想化ソフトウェア１０２は、仮想ハードディスクファイルを管理しているが、仮想マシン１１０内で実行されるオペレーティングシステムでは図３に示すように管理される。図３に示すように、オペレーティングシステムは、システムファイルが格納されているディスク０およびユーザデータが格納されるディスク１を管理する。
【００２３】
なお、ディスク０は、図４に示すように、基本仮想ハードディスクファイル４０１、パッチ差分仮想ハードディスクファイル４０２、およびＰＣ変更差分仮想ハードディスクファイル４０３の三つの仮想ハードディスクファイルによって構成される仮想ハードディスクである。また、ディスク１は、ユーザデータ仮想ハードディスクファイル４１１によって構成される仮想ハードディスクである。
【００２４】
基本仮想ハードディスクファイル４０１は、管理サーバによって作成された仮想ハードディスクファイルであり、オペレーティングシステムやアプリケーションがインストールされている。
【００２５】
パッチ差分仮想ハードディスクファイル４０２は、基本仮想ハードディスクファイル４０１からの差分を保持したものであり、基本仮想ハードディスクファイル４０１から構成された仮想ハードディスクに更新プログラムを適用した時の差分情報を保持している。差分情報は、仮想ハードディスクファイルによって構成される仮想ハードディスクの各セクタについてデータが変更されているかを示す変更情報、データが変更されているセクタに格納されるデータとを含む。
【００２６】
ＰＣ変更差分仮想ハードディスクファイル４０３は、基本仮想ハードディスクファイル４０１およびパッチ差分仮想ハードディスクファイル４０２から構成される仮想ハードディスクに対する差分情報を保持している。なお、仮想マシンのシャットダウン時にＰＣ変更差分仮想ハードディスクファイル４０３内の変更情報を全て変更無しにし、変更データを削除する。
【００２７】
ユーザデータ仮想ハードディスクファイル４１１によって構成される仮想ハードディスク（ディスク１）は、ユーザデータ仮想ハードディスクファイル４１１によって構成される仮想ハードディスク（ディスク１）は、Diskpart.exeによって“Ｃ：＼Ｕｓｅｒｓ”へマウントされている。そのため、基本仮想ハードディスクファイル４０１を含む仮想ディスクファイルによって、仮想マシンが起動する度に“Ｃ：＼Ｕｓｅｒｓ”内のデータにアクセスすることができる。
【００２８】
なお、基本仮想ハードディスクファイル４０１、パッチ差分仮想ハードディスクファイル４０２、ＰＣ変更差分仮想ハードディスクファイル４０３、およびユーザデータ仮想ハードディスクファイル４１１は管理サーバ１１に格納されている。仮想マシン１１０を起動する場合に、なお、基本仮想ハードディスクファイル４０１、パッチ差分仮想ハードディスクファイル４０２、ＰＣ変更差分仮想ハードディスクファイル４０３、およびユーザデータ仮想ハードディスクファイル４１１は、管理サーバ１１からコンピュータ２０には配信される。
【００２９】
Ｗｉｎｄｏｗｓサービス１１２は、仮想ハードディスクを構成する仮想ハードディスクファイルの配信前にＰｒｏｆｉｌｅＬｉｓｔレジストリのうち、“Ｓ−１−５−２１”で始まるデータを“Ｃ：＼Ｕｓｅｒｓ”に保存しておく。ＰｒｏｆｉｌｅＬｉｓｔレジストリは以下のパスである。
【００３０】
HKLM＼Software＼Microsoft＼Windows NT＼CurrentVersion＼ProfileList
次に、配信後のＷｉｎｄｏｗｓサービス１１２の処理を図５のフローチャートを参照して説明する。
【００３１】
Ｗｉｎｄｏｗｓサービス１１２は、配信後の“Ｃ：＼Ｕｓｅｒｓ”を一旦空にした後（ステップ５０１）、ディスク１を“Ｃ：＼Ｕｓｅｒｓ”にマウントし（ステップ５０２）、ProfileListレジストリを復元する。その後、C:\Usersだけでなく、ProfileListレジストリを復元することで（ステップ５０３）、このコンピュータに過去にログオンしたことがあるユーザは、再度ログオン可能となる。
【００３２】
“Ｃ：＼Ｕｓｅｒｓ”つまり、ユーザデータ仮想ディスクファイルの内容は、仮想化ソフトウェアが仮想マシンのシャットダウン時に管理サーバに保存することで、ユーザがコンピュータを社外に持ち出し時にコンピュータを紛失しても、紛失したコンピュータに残されたデータを復元することができる。
【００３３】
次に、起動後の仮想マシン１１０内で実行される処理について図６のフローチャートを参照して説明する。
【００３４】
仮想マシン１１０内で実行されるＷｉｎｄｏｗｓサービス１１２は、パッチ適用モードフラグがあるかを判定する（ステップ６０１）。仮想マシン内で実行されるＷｉｎｄｏｗｓサービス１１２は、例えば“Ｃ：＼Ｕｐｄａｔｅ”ファイルが存在すると判定されと場合にパッチ適用フラグモードがあると判定する。
【００３５】
パッチ適用フラグモードがセットされていると判定した場合（ステップ６０１のＹｅｓ）、Ｗｉｎｄｏｗｓサービス１１２は、ＷＳＵＳサーバ１０から新規更新プログラムをダウンロードし、新規更新プログラムをインストールすることによってオペレーティングシステムおよび／またはアプリケーションプログラムにパッチを当てる（ステップ６０２）。その後、Ｗｉｎｄｏｗｓサービス１１２は仮想マシン内で動作するオペレーティングシステムをシャットダウンし、仮想マシン１１０が終了する（ステップ６０３）。
【００３６】
パッチ適用フラグモードがセットされていないと判定された場合（ステップ６０１のＮｏ）、Ｗｉｎｄｏｗｓサービス１１２は、ＷＵＡ（Windows Update Agent）  ＡＰＩを使用してＷＳＵＳサーバ１０に新規更新プログラムがあるかを問い合わせる。問い合わせ結果に応じて、Ｗｉｎｄｏｗｓサービス１１２は、新規更新プログラムがあるかを判定する（ステップ６０４）。新規更新プログラムがあると判定された場合（ステップ６０４のＹｅｓ）、Ｗｉｎｄｏｗｓサービス１１２は、パッチ適用モードフラグを設定する（ステップ６０５）。Ｗｉｎｄｏｗｓサービス１１２は、例えば“Ｃ：＼Ｕｐｄａｔｅ”ファイルを作成することによって、パッチ適用モードフラグをセットする。
【００３７】
次に、仮想マシン１１０の起動時および終了時の仮想化ソフトウェア１０２による処理の手順を図７のフローチャートを参照して説明する。  
通常、仮想化ソフトウェア１０２は、基本仮想ハードディスクファイル４０１、パッチ差分仮想ハードディスクファイル４０２、およびＰＣ変更差分仮想ハードディスクファイル４０３によって構成される仮想ハードディスク、並びにユーザデータ仮想ハードディスクファイル４１１によって構成される仮想ハードディスクによって仮想マシンを起動する（ステップ７０１）。
【００３８】
起動後、仮想マシン１１０が終了させる操作が行われた場合（ステップ７０２）、仮想化ソフトウェア１０２は、パッチ適用モードフラグがセットされているかを判定する（ステップ７０３）。仮想化ソフトウェア１０２は、例えば、ＰＣ変更差分仮想ハードディスクファイル４０３をマウントして、“Ｃ：＼Ｕｐｄａｔｅ”ファイルが存在するか確認することによって、パッチ適用モードフラグがセットされているかを判定する。
【００３９】
パッチ適用モードフラグがセットされていると判定した場合（ステップ７０３のＹｅｓ）、仮想化ソフトウェア１０２は、基本仮想ハードディスクファイル４０１、およびパッチ差分仮想ハードディスクファイル４０２によって構成される仮想ハードディスクによって仮想マシンを起動する（ステップ７０５）。この時、仮想化ソフトウェア１０２は、ユーザデータ仮想ハードディスクファイル４１１によって構成される仮想ハードディスクを仮想マシン１１０にアタッチしない。ユーザデータ仮想ハードディスクファイル４１１がアタッチされていないため、“Ｃ：＼Ｕｓｅｒｓ”内は空になっており、誤ってユーザがログオンすることがない。
【００４０】
パッチ適用フラグモードがセットされていないと判定した場合（ステップ７０３のＮｏ）、ＰＣ変更差分仮想ハードディスクファイル４０３内の各セクタに対する変更有無情報を全て変更無しにすると共に、ＰＣ変更差分仮想ハードディスクファイル４０３内の変更データを削除する（ステップ７０４）。
【００４１】
以上が仮想マシン１１０の起動時および終了時の仮想化ソフトウェア１０２による処理する動作である。
【００４２】
仮想マシン１１０の終了時に、基本仮想ハードディスクファイル４０１に対するパッチの適用による変更分をパッチ差分仮想ハードディスクファイル４０２に格納し、不要なＰＣ変更差分仮想ハードディスクファイル４０３を廃棄する。このため、決められた場所以外への変更分を削除できるようになる。また、更新プログラム適用モードを設けることで、基本仮想ハードディスクファイル４０１に対する更新プログラムの変更分は保存できるようになった。
【００４３】
（第２の実施形態）
第１の実施形態では、第１の実施形態ではＷＳＵＳサーバ１０が存在する場合を想定していた。更新プログラムには、使用許諾が必要なものがあり、ＷＳＵＳサーバ１０で管理者が使用許諾に同意した更新プログラムは、各コンピュータで使用許諾に同意する必要がない。
【００４４】
第１の実施形態では、各コンピュータにおいて無人で更新プログラムのインストールを行うため、各コンピュータで使用許諾に同意することができない。そこで、ＷＳＵＳサーバを使用している環境に限定した。
【００４５】
しかし、ＷＳＵＳサーバが導入されていない環境で、コンピュータ毎にＭｉｃｒｏｓｏｆｔ  ＵｐｄａｔｅまたはＷｉｎｄｏｗｓ  Ｕｐｄａｔｅサイトから更新プログラムをインストールする環境でも対応可能とするためのＷｉｎｄｏｗｓサービス１１２の動作処理を図８のフローチャートを参照して説明する。
【００４６】
仮想マシン内で実行されるＷｉｎｄｏｗｓサービス１１２は、パッチ適用モードフラグがあるかを判定する（ステップ８０１）。仮想マシン内で実行されるＷｉｎｄｏｗｓサービス１１２は、“Ｃ：＼Ｕｐｄａｔｅ”ファイルが存在すると判定された場合（ステップ６０１のＹｅｓ）、Ｍｉｃｒｏｓｏｆｔ  ＵｐｄａｔｅまたはＷｉｎｄｏｗｓ  Ｕｐｄａｔｅサイトから新規更新プログラムをインストールする（ステップ８０２）。その後、Ｗｉｎｄｏｗｓサービス１１２は仮想マシン内で動作するオペレーティングシステムをシャットダウンする（ステップ８０３）。
【００４７】
“Ｃ：＼Ｕｐｄａｔｅ”ファイルが存在しないと判定された場合（ステップ８０１のＮｏ）、Ｗｉｎｄｏｗｓサービス１１２は、Ｍｉｃｒｏｓｏｆｔ  ＵｐｄａｔｅまたはＷｉｎｄｏｗｓ  Ｕｐｄａｔｅサイトに新規更新プログラムがあるかを問い合わせる。問合せの結果に応じて、Ｗｉｎｄｏｗｓサービス１１２は、新規更新プログラムがあるかを判定する（ステップ８０４）。新規更新プログラムがあると判定された場合（ステップ８０４のＹｅｓ）、Ｗｉｎｄｏｗｓサービス１１２は、全ての更新プログラムに付属している使用許諾書をディスプレイに表示する（ステップ８０５）。Ｗｉｎｄｏｗｓサービス１１２は、全ての使用許諾書が同意されたかを判定する（ステップ８０６）。全て同意されたと判定された場合（ステップ８０６のＹｅｓ）、“Ｃ：＼Ｕｐｄａｔｅ”ファイルを作成することによって、パッチ適用モードフラグを設定する（ステップ８０５）。全て同意されていないと判定された場合（ステップ８０６のＮｏ）、Ｗｉｎｄｏｗｓサービス１１２は、パッチ適用モードフラグを設定しないで、処理を終了する。
【００４８】
ユーザがコンピュータを操作している時点で、更新プログラムの使用許諾の同意を得ることで、ＷＳＵＳサーバ１０が導入されていない環境であっても、更新プログラムの自動インストールが可能になる。
【００４９】
（第３の実施形態）
基本仮想ハードディスクファイル４０１を作成して、コンピュータに配信している。しかし、基本仮想ハードディスクファイル４０１は、親ハードディスクファイルと差分ハードディスクファイルとの組み合わせた複数の仮想ハードディスクファイルによって構成しても良い。
【００５０】
そして、仮想ハードディスクファイルの、親仮想ハードディスクファイルと差分仮想ハードディスクファイルへのアクセスを許可することで、すでに親仮想ハードディスクファイルを保持している端末では、差分仮想ハードディスクファイルだけを配信することで、ネットワークおよびコンピュータの負荷が軽減される。
【００５１】
ＷＳＵＳサーバ１０が使用されていない環境において、図９に示すように示すように、ディスク２に更新プログラムリスト仮想ハードディスクファイル４２１によって構成される仮想ハードディスクを追加するようにしても良い。そして、ディスク２を追加した場合のＷｉｎｄｏｗｓサービス１１２の処理を図１０のフローチャートを参照して説明する。
【００５２】
仮想マシン内で実行されるＷｉｎｄｏｗｓサービス１１２は、パッチ適用モードフラグがあるかを判定する（ステップ１００１）。仮想マシン内で実行されるＷｉｎｄｏｗｓサービス１１２は、“Ｃ：＼Ｕｐｄａｔｅ”ファイルが存在すると判定された場合（ステップ６０１のＹｅｓ）、更新プログラムリスト仮想ハードディスクファイル４２１から、新規更新プログラムをインストールする（ステップ１００２）。Ｗｉｎｄｏｗｓサービス１１２は、更新プログラムリストを削除し（ステップ１００３）、仮想マシン内で動作するオペレーティングシステムをシャットダウンする（ステップ１００４）。
【００５３】
“Ｃ：＼Ｕｐｄａｔｅ”ファイルが存在しないと判定された場合（ステップ１００１のＮｏ）、Ｗｉｎｄｏｗｓサービス１１２は、新規更新プログラムがあるかを問い合わせる。問合せ結果に応じて、Ｗｉｎｄｏｗｓサービス１１２は、更新プログラムリストに載っていないまたは許諾の確認を行っていない新規更新プログラムがあるかを判定する（ステップ１００５）。更新プログラムリストに載っていないまたは許諾の確認を行っていない新規更新プログラムがあると判定された場合（ステップ１００４のＹｅｓ）、Ｗｉｎｄｏｗｓサービス１１２は、インストールされておらず、且つ許諾の確認を行っていない新規更新プログラムから一つの新規更新プログラムを選択し、選択された新規更新プログラムに使用許諾書があるかを判定する（ステップ１００６）。
【００５４】
Ｗｉｎｄｏｗｓサービス１１２は、使用許諾書がないと判定された場合（ステップ１００６のＮｏ）、Ｗｉｎｄｏｗｓサービス１１２は、選択された新規更新プログラムを更新プログラムリストに追加する（ステップ１００９）。使用許諾書があると判定された場合（ステップ１００６のＹｅｓ）、Ｗｉｎｄｏｗｓサービス１１２は、選択された新規更新プログラムの使用許諾書をディスプレイに表示する（ステップ１００７）。ユーザが同意または非同意を選択した後、Ｗｉｎｄｏｗｓサービス１１２は、ユーザが同意を選択したかを判定する（ステップ１００８）。同意したと判定された場合（ステップ１００８のＹｅｓ）、Ｗｉｎｄｏｗｓサービス１１２は、選択された新規更新プログラムを更新プログラムリストに追加する（ステップ１００９）。
【００５５】
ステップ１００５において、更新プログラムリストに載っていないまたは許諾の確認を行っていない新規更新プログラムがないと判断された場合（ステップ１００５のＮｏ）、Ｗｉｎｄｏｗｓサービス１１２は、更新プログラムリスト内に適用更新プログラムがあるかを判定する（ステップ１０１０）。適用更新プログラムがルと判定された場合（ステップ１０１０のＹｅｓ）、Ｗｉｎｄｏｗｓサービス１１２は、パッチ適用モードフラグを設定する（ステップ１０１１）。
【００５６】
更新プログラムリストは、新たにディスク２にファイルとして書き込まれる。更新プログラムリスト内には、以下のようにＫＢ（ｋｎｏｗｌｅｄｇｅ  ｂａｓｅ）番号を一行づつ書き込む。
【００５７】
KBxxxxxx
KByyyyyy
…
パッチ適用モードでは、このファイルに記述されたＫＢ番号の更新プログラムファイルのみダウンロードおよびインストールを行う。
【００５８】
本実施形態の場合、更新プログラム毎に使用許諾の同意を得ることで、同意したものと同意不要なものだけをインストールすることができる。
【００５９】
なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態に亘る構成要素を適宜組み合せてもよい。
【符号の説明】
【００６０】
２０…コンピュータ，１０２…仮想化ソフトウェア，１１０…仮想マシン，１１１…オペレーティングシステム，１１２…サービス，１１３…アプリケーション，４０１…基本仮想ハードディスクファイル，４０２…パッチ差分仮想ハードディスクファイル，４０３…ＰＣ変更差分仮想ハードディスクファイル，４１１…ユーザデータ仮想ハードディスクファイル，４２１…更新プログラムリスト仮想ハードディスクファイル。
【図１】
2012069149.tif 000003
【図２】
2012069149.tif 000004
【図３】
2012069149.tif 000005
【図４】
2012069149.tif 000006
【図５】
2012069149.tif 000007
【図６】
2012069149.tif 000008
【図７】
2012069149.tif 000009
【図８】
2012069149.tif 000010
【図９】
2012069149.tif 000011
【図１０】
2012069149.tif 000012
【手続補正書】
【提出日】平成24年1月26日(2012.1.26)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
仮想マシンが動作するように設定された計算機であって、
仮想マシン内で動作するオペレーティングシステムおよび／またはアプリケーションを更新するための更新プログラムがある場合に、パッチ適用モードフラグを設定する設定手段と、
前記仮想マシンの終了時に前記パッチ適用モードフラグの有無を確認する確認手段と、
前記パッチ適用モードフラグが設定されていない場合に、前記仮想マシンに割り当てられているデータ保存用仮想ストレージファイルから構成される仮想ストレージ内のデータを削除する削除手段と、
前記パッチ適用モードフラグが設定されている場合に、前記仮想マシンを実行するための基本仮想ストレージファイルと、前記仮想マシン内で実行される前記オペレーティングシステムおよび／または前記アプリケーションを更新するための前記基本仮想ストレージファイル内のデータの変更箇所と変更データとを示す差分情報を含む更新差分仮想ストレージファイルとを用いて前記仮想マシンを起動する起動手段と、
前記仮想マシンの起動後に前記パッチ適用モードフラグが設定されている場合に、前記更新プログラムによって前記オペレーティングシステムおよび／または前記アプリケーションを更新した後に、前記仮想マシンを終了させる更新手段と
を具備する計算機。
【請求項２】
前記設定手段は、前記更新プログラムがあるかをサーバに問い合わせる請求項１に記載の計算機。
【請求項３】
前記設定手段は、仮想ハードディスクファイルにより、前記更新プログラムがあるかを判定する請求項１に記載の計算機。
【請求項４】
前記設定手段は、前記仮想ハードディスクファイルに前記更新プログラムがある時、使用許諾が同意されているかを判定し、同意されている場合に、前記更新プログラムを示す情報を更新プログラムリストに追加する
請求項３に記載の計算機。
【請求項５】
仮想マシンが動作するように設定された計算機であって、
仮想マシン内で実行されるオペレーティングシステムおよび／またはアプリケーションを更新するための更新プログラムがある場合に、前記仮想マシンを実行するため基本仮想ストレージファイルと、前記オペレーティングシステムおよび／または前記アプリケーションを更新するための前記基本仮想ストレージファイル内のデータの変更箇所と変更データとを示す差分情報を含む更新差分仮想ストレージファイルとを用いて前記仮想マシンを起動し、
前記更新プログラムがない場合に、前記基本仮想ストレージファイルと、前記更新差分仮想ストレージファイルとを用いて前記仮想マシンを起動する起動手段と
を具備する計算機。
【請求項６】
仮想マシン内で動作するオペレーティングシステムおよび／またはアプリケーションを更新するための更新プログラムがある場合に、パッチ適用モードフラグを設定し、
前記仮想マシンの終了時に前記パッチ適用モードフラグの設定の有無を確認し、
前記パッチ適用モードフラグが設定されていない場合に、前記仮想マシンに割り当てられているデータ保存用仮想ストレージファイルから構成される仮想ストレージ内のデータを削除し、
前記パッチ適用モードフラグが設定されている場合に、前記仮想マシンを実行するための基本仮想ストレージファイルと、前記仮想マシン内で実行されるオペレーティングシステムおよび／またはアプリケーションを更新するための前記基本仮想ストレージファイル内のデータの変更箇所と変更データとを示す差分情報を含む更新差分仮想ストレージファイルとを用いて前記仮想マシンを起動し、
前記仮想マシンの起動後に前記パッチ適用モードフラグが設定されている場合に、前記更新プログラムによって前記オペレーティングシステムおよび／または前記アプリケーションを更新し、
前記オペレーティングシステムおよび／または前記アプリケーションが前記更新プログラムによって更新された場合に、前記仮想マシンを終了させる
計算機の制御方法。
【請求項７】
前記更新プログラムがあるかをサーバに問い合わせる請求項６に記載の計算機の制御方法。
【請求項８】
仮想ハードディスクファイルにより、前記更新プログラムがあるかを判定する請求項６に記載の計算機の制御方法。
【請求項９】
前記仮想ハードディスクファイルに前記更新プログラムがある時、使用許諾が同意されているかを判定し、同意されている場合に、更新プログラムリストに追加する
請求項８に記載の計算機の制御方法。
【請求項１０】
仮想マシンを実行するため基本仮想ストレージファイルと、前記仮想マシン内で実行されるオペレーティングシステムおよび／またはアプリケーションを更新するための前記基本仮想ストレージファイル内のデータの変更箇所と変更データとを示す差分情報を含む更新差分仮想ストレージファイルと、前記基本仮想ストレージファイルおよび前記更新差分仮想ストレージファイル内のデータの変更箇所と変更データとを含む変更差分仮想ストレージファイルとから構成される第１仮想ストレージを用いて前記仮想マシンを起動する起動手段と、
データ保存用仮想ストレージファイルから構成される第２仮想ストレージを前記仮想マシンに割り当てる手段と、
前記仮想マシンの終了時に前記変更差分仮想ストレージファイル内に含まれる前記差分情報内の変更箇所を全て変更無しにすると共に、前記差分情報内の前記変更データを削除する削除手段と
を具備する計算機。
【請求項１１】
前記起動手段は、前記基本仮想ストレージファイルおよび前記更新差分仮想ストレージファイルとから構成される第３仮想ストレージを用いて前記仮想マシンを起動する
請求項１０に記載の計算機。
【請求項１２】
前記オペレーティングシステムおよび／またはアプリケーションを更新するための更新プログラムを取得し、前記更新プログラムを実行することによって前記オペレーティングシステムおよび／またはアプリケーションを更新し、更新される前のオペレーティングシステムおよび／またはアプリケーションに対する更新されたオペレーティングシステムおよび／またはアプリケーションのデータの変更箇所と変更データを前記更新差分仮想ストレージファイルに記録する記録手段を更に具備する
請求項１１に記載の計算機。
【請求項１３】
前記更新プログラムの適用に同意するかが問い合わせられ、前記更新プログラムの適用に同意した場合に、当該更新プログラムを適用する手段を更に具備する
請求項１２に記載の計算機。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００３８
【補正方法】変更
【補正の内容】
【００３８】
起動後、仮想マシン１１０の終了時に（ステップ７０２）、仮想化ソフトウェア１０２は、パッチ適用モードフラグがセットされているかを判定する（ステップ７０３）。仮想化ソフトウェア１０２は、例えば、ＰＣ変更差分仮想ハードディスクファイル４０３をマウントして、“Ｃ：＼Ｕｐｄａｔｅ”ファイルが存在するか確認することによって、パッチ適用モードフラグがセットされているかを判定する。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００４７
【補正方法】変更
【補正の内容】
【００４７】
“Ｃ：＼Ｕｐｄａｔｅ”ファイルが存在しないと判定された場合（ステップ８０１のＮｏ）、Ｗｉｎｄｏｗｓサービス１１２は、新規更新プログラムがあるかを問い合わせる。問合せの結果に応じて、Ｗｉｎｄｏｗｓサービス１１２は、新規更新プログラムがあるかを判定する（ステップ８０４）。新規更新プログラムがあると判定された場合（ステップ８０４のＹｅｓ）、Ｗｉｎｄｏｗｓサービス１１２は、全ての更新プログラムに付属している使用許諾書をディスプレイに表示する（ステップ８０５）。Ｗｉｎｄｏｗｓサービス１１２は、全ての使用許諾書が同意されたかを判定する（ステップ８０６）。全て同意されたと判定された場合（ステップ８０６のＹｅｓ）、“Ｃ：＼Ｕｐｄａｔｅ”ファイルを作成することによって、パッチ適用モードフラグを設定する（ステップ８０５）。全て同意されていないと判定された場合（ステップ８０６のＮｏ）、Ｗｉｎｄｏｗｓサービス１１２は、パッチ適用モードフラグを設定しないで、処理を終了する。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００５０
【補正方法】変更
【補正の内容】
【００５０】
仮想ハードディスクファイルの、親仮想ハードディスクファイルと差分仮想ハードディスクファイルを許可することで、すでに親仮想ハードディスクファイルを保持している端末では、差分仮想ハードディスクファイルだけを配信することで、ネットワークおよびコンピュータの負荷が軽減される。