JP2009122749A - Program, portable storage medium, and control method - Google Patents
Program, portable storage medium, and control method Download PDFInfo
- Publication number
- JP2009122749A JP2009122749A JP2007293236A JP2007293236A JP2009122749A JP 2009122749 A JP2009122749 A JP 2009122749A JP 2007293236 A JP2007293236 A JP 2007293236A JP 2007293236 A JP2007293236 A JP 2007293236A JP 2009122749 A JP2009122749 A JP 2009122749A
- Authority
- JP
- Japan
- Prior art keywords
- data
- update
- virtual machine
- program
- recording unit
- 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.)
- Pending
Links
Images
Landscapes
- Stored Programmes (AREA)
- Storage Device Security (AREA)
Abstract
Description
本発明は、可搬記憶媒体を用いる場合におけるセキュリティ保持技術に関する。 The present invention relates to a security maintenance technique when a portable storage medium is used.
USB(Universal Serial bus:ユニバーサル・シリアル・バス)メモリやポータブルHDD(Hard Disk Drive)のような可搬記憶媒体の記憶容量は年々増加し、USBメモリでも数十ギガバイトのフラッシュメモリを搭載している製品もある。価格も低下しており、このような可搬記憶媒体にアプリケーションや仮想マシン等を搭載して動作させるような利用が普及しつつある。 The storage capacity of portable storage media such as USB (Universal Serial Bus) memory and portable HDD (Hard Disk Drive) has been increasing year by year, and USB memory is also equipped with tens of gigabytes of flash memory. There are also products. The price is also decreasing, and the use of an application, a virtual machine or the like mounted on such a portable storage medium for operation is spreading.
このような状況において、USBメモリにOS(Operating System)イメージやアプリケーション(システム・プログラムとも呼ぶ。また、システム・プログラムのデータをシステム・データとも呼ぶ。)とユーザ・ドキュメント(ユーザ・データとも呼ぶ。例えば、ユーザが自分で作成したドキュメントやプログラム・ソース、ユーザが顧客から取得した顧客データ等。)を混在させて利用することも可能となってきており、システム・プログラムが組み込まれたUSBメモリも登場してきている。 In such a situation, an OS (Operating System) image or application (also referred to as a system program. Also, system program data is also referred to as system data) and a user document (also referred to as user data) are stored in the USB memory. For example, it is also possible to use a mixture of documents and program sources created by the user, customer data obtained by the user from the customer, etc., and USB memories with built-in system programs are also available. Has appeared.
USBメモリなどは、外部に持ち運ぶため盗難や紛失の可能性が高いが、その際の情報漏洩防止のため、USBメモリ内のデータを暗号化しておくものもある。このような製品では、ユーザ認証に成功した後にUSBメモリ内のデータを閲覧可能にする。さらに、USBメモリに搭載される生体認証と連携してメモリをホスト側に公開するなどセキュリティを考慮した製品も登場してきている。 A USB memory or the like is likely to be stolen or lost because it is carried outside, but in order to prevent information leakage at that time, some data in the USB memory is encrypted. In such a product, data in the USB memory can be browsed after successful user authentication. In addition, products that take security into account, such as publishing memory to the host side in cooperation with biometric authentication installed in USB memory, have appeared.
しかし、企業で利用するケースを考えると、暗号化した状態でもユーザ・データをUSBメモリに保存したくないという要望がある。 However, considering the case of use in a company, there is a demand for not storing user data in a USB memory even in an encrypted state.
そのため、USBメモリにはシステム・プログラムだけを搭載し、ユーザ・データを保存させないようなシステムも可能である。しかし、この場合、システム・プログラムを使って作成したユーザ・データをローカル・ホスト上に保存するか、ネットワークの先にあるファイル・サーバに保存する必要がある。ローカル・ホスト上に保存するとポータビリティが無くなり、ファイル・サーバに保存するとパフォーマンスが低下する。 For this reason, a system in which only a system program is installed in the USB memory and user data is not saved is possible. However, in this case, the user data created by using the system program must be saved on the local host or saved on a file server at the end of the network. Saving on the local host loses portability and saving on a file server degrades performance.
そこで、USBメモリをPC(Personal Computer)で利用しているときには、USBメモリにユーザ・データを保存することを許可し、USBメモリをPCから外してUSBメモリの利用を終了した時には、利用時に保存していたデータを消去する。そして、ユーザは作業が終わったときに、作成したユーザ・データをファイル・サーバにアップすることによって、データを保存することとする。これにより、作業中はパフォーマンスが低下することがなく、USBメモリにもユーザ・データが残らない。 Therefore, when the USB memory is used on a PC (Personal Computer), the user data is allowed to be saved in the USB memory. When the USB memory is removed from the PC and the use of the USB memory is terminated, the user data is saved at the time of use. Erase the data that was being saved. Then, when the work is completed, the user saves the data by uploading the created user data to the file server. As a result, the performance does not deteriorate during work, and no user data remains in the USB memory.
しかしながら、まだ完全に問題が解決したわけではない。通常、システム・プログラムは更新しなければならない。例えば、OSのアップデートなどである。しかし、このシステム・プログラム更新とユーザ・データ更新を区別できない。 However, the problem has not been completely solved yet. Normally, system programs must be updated. For example, OS update. However, this system program update and user data update cannot be distinguished.
具体的に、システム・プログラムを更新するモジュールであるアップデータがファイルA及びBを更新し、ユーザ・データを更新するプログラムとしてワープロ・アプリケーションがファイルC及びDを更新する場合を考える。ここで、OSは、アップデータがシステム・プログラムのファイルA及びBを更新していることと、ワープロ・アプリケーションがユーザ・データを更新していることを認識していない。また、アップデータは、システム・プログラムを更新していることを認識しているが、他のアプリケーション(ワープロ・アプリケーションを含む)が、ファイルC及びDを更新していることを認識できない。同様に、ワープロ・アプリケーションは、ユーザ・データを更新していることを認識しているが、アップデータがシステム・プログラムのファイルA及びBを更新していることを認識できない。 Specifically, consider a case where an updater, which is a module for updating a system program, updates files A and B, and a word processor application updates files C and D as a program for updating user data. Here, the OS does not recognize that the updater is updating the files A and B of the system program and that the word processor application is updating the user data. The updater recognizes that the system program is being updated, but cannot recognize that other applications (including the word processor application) are updating the files C and D. Similarly, the word processing application recognizes that it is updating user data, but cannot recognize that the updater is updating files A and B of the system program.
すなわち、OSとそのプロセスからなるシステムでは、どのファイルがシステム更新のためのファイルで、どのファイルがユーザによって更新されたファイルであるかが明確ではなく、システム・プログラム更新とユーザデータ更新を区別できない。従って、システム・プログラムの更新をUSBメモリ内に保存する一方、ユーザ・データが残らないようにすることは自動では困難である。 That is, in a system composed of an OS and its process, it is not clear which file is a file for system update and which file is updated by a user, and system program update and user data update cannot be distinguished. . Therefore, it is difficult to automatically save the update of the system program in the USB memory while keeping no user data.
なお、特開2003−345600号公報には、パソコン起動中のアプリケーションプログラムの使用状態を考慮することなくBIOSプログラムのようなシステムプログラムを更新可能なシステムプログラム更新方法が開示されている。具体的には、BIOS―ROMの書き換えが終了すると、パソコン上で起動されているアプリケーションプログラムのデータや、デバイスのデータをHDDに保存し、パソコンの電源を遮断する。所定時間後にパソコンに電源が投入され、パソコンの起動処理が行われる。この際に、HDDに保存されている電源遮断前のアプリケーションデータ、デバイスデータをメインメモリに移動する。しかし、上で述べたような問題を解決できるわけではない。
よって、本発明の目的は、システム・プログラムの更新をUSBメモリなどの可搬記憶媒体に保存する一方、ユーザ・データが残らないように保証するための技術を提供することである。 Therefore, an object of the present invention is to provide a technique for guaranteeing that no user data remains while a system program update is saved in a portable storage medium such as a USB memory.
本発明の第1の態様に係るプログラムは、アプリケーション・データを含むシステム・データが最新であるか判断するステップと、システム・データが最新ではないと判断された場合には、ユーザ入力の受け付けを遮断させるステップと、システム・データの更新データを、アップデート・サーバからネットワーク経由で取得させ、システム・データの更新を実施させるステップと、システム・データの更新完了を検出すると、システム・データが記録されており且つユーザ・データが格納され得るデータ記録部をシステム・データの更新完了時における状態へ復元させるためのスナップショット・データをデータ記録部内に確保させるステップと、スナップショット・データがデータ記録部に確保された後に、ユーザ入力の受け付け遮断を停止させるステップとをコンピュータに実行させるものである。 The program according to the first aspect of the present invention includes a step of determining whether the system data including application data is the latest, and accepting a user input when it is determined that the system data is not the latest. The step of blocking, the step of acquiring the update data of the system data from the update server via the network, the step of performing the update of the system data, and the detection of the completion of the update of the system data are recorded. And storing the snapshot data in the data recording unit for restoring the data recording unit in which the user data can be stored to the state when the update of the system data is completed, and the snapshot data is the data recording unit After being secured by the user, Sealed to one in which to perform the steps on a computer.
このようにシステム・データの更新時間と、ユーザ・データの更新時間とを区別することによって、システム・データの更新結果をスナップショット・データとして確保して、システム終了時には、更新完了時における状態へ復元させることができるようになる。すなわち、システム・プログラムの更新をデータ記憶部に保持する一方、ユーザ・データが残らないように保証することができるようになる。 By distinguishing the update time of system data and the update time of user data in this way, the update result of the system data is secured as snapshot data, and when the system is terminated, the state at the completion of the update is obtained. It can be restored. In other words, it is possible to guarantee that no user data remains while the update of the system program is held in the data storage unit.
また、システム・データに基づくシステムの終了を検出すると、スナップショット・データによりシステム・データの更新完了時における状態にデータ記録部を復元するステップをさらにコンピュータに実行させるようにしてもよい。データ記録部におけるデータ管理は、(1)更新完了時における状態保存用のシステム・データと、ユーザ・データを含む差分データとを管理する方法と、(2)更新完了時における状態保存用のシステム・データと、ユーザ・データ及び作業用の全システム・データとを管理する方法とがあるが、いずれであってもよい。 Further, when the end of the system based on the system data is detected, the computer may be caused to further execute a step of restoring the data recording unit to the state when the update of the system data is completed by the snapshot data. Data management in the data recording unit includes (1) a method for managing state data when updating is completed and differential data including user data, and (2) a system for saving state when update is completed. There is a method for managing data, user data, and all system data for work.
さらに、データ記録部は、コンピュータにユニバーサル・シリアル・バスで接続される可搬記憶媒体である場合もある。USBメモリでもUSB−HDDであってもよい。 Further, the data recording unit may be a portable storage medium connected to the computer via a universal serial bus. It may be a USB memory or a USB-HDD.
また、システム・データに基づくシステムの起動時に、データ記録部が、システム・データの更新完了時における状態に復元されているか判断するステップと、データ記録部が、システム・データの更新完了時における状態に復元されていない場合には、スナップショット・データによりシステム・データの更新時における状態に復元するステップとをさらにコンピュータに実行させるようにしてもよい。例えば、スナップショット・データを用いた復元処理をシステム終了時に実行せずに、例えばUSBメモリをPCから引き抜くなど異常終了させた場合には、データ記録部にユーザ・データが残ってしまう場合がある。従って、システムの起動時に上で述べたような処理を自動的に実施することによって、異常終了に対処して、ユーザ・データが不正に読み出されることがないようにすることができる。 In addition, when the system is started based on the system data, the step of determining whether the data recording unit is restored to the state at the completion of the update of the system data, and the state of the data recording unit at the completion of the update of the system data If not restored, the computer may further execute a step of restoring to the state at the time of updating the system data with the snapshot data. For example, if the restoration process using snapshot data is not executed at the time of system termination, but is abnormally terminated, for example, by removing the USB memory from the PC, user data may remain in the data recording unit. . Therefore, by automatically executing the processing described above at the time of starting the system, it is possible to cope with the abnormal end and prevent the user data from being read illegally.
さらに、システム・データに基づくシステムの起動時に、ネットワークを介して管理サーバにデータ記録部の利用開始を登録させるステップと、システム・データに基づくシステムの終了を検出すると、ネットワークを介して管理サーバにデータ記録部の利用終了を登録させるステップとをさらにコンピュータに実行させるようにしてもよい。このように管理サーバで、データ記録部の利用状況を管理することができるようになる。例えば、利用終了を登録せずに、再度利用開始を登録するようにした場合には、不正な終了を行っているので、利用開始できないように設定するなどの処置を実施するようにしても良い。 In addition, when the system based on the system data is started, a step of registering the start of use of the data recording unit in the management server via the network, and when the end of the system based on the system data is detected, the management server is notified via the network. The step of registering the end of use of the data recording unit may be further executed by the computer. In this way, the use status of the data recording unit can be managed by the management server. For example, when the use start is registered again without registering the end of use, since the end is incorrect, a measure such as setting so that the use cannot be started may be performed. .
本発明の第2の態様に係るプログラムは、第1の仮想マシン制御プログラムと、仮想マシンと、仮想マシン上で動作するシステム・プログラムと、システム・プログラム上で動作する第2の仮想マシン制御プログラムとを含む。そして、第1の仮想マシン制御プログラムが、システム・プログラムが最新であるか判断するステップと、システム・プログラムが最新ではないと判断された場合には、ユーザ入力の受け付けを仮想マシンに遮断させるステップとをコンピュータに実行させる。また、第2の仮想マシン制御プログラムが、システム・プログラムの更新データを、アップデート・サーバからネットワーク経由で取得させ、システム・プログラムの更新を実施させるステップをコンピュータに実行させる。また、第1の仮想マシン制御プログラムが、さらに、システム・プログラムの更新完了を検出すると、システム・プログラムが記録されており且つユーザ・データが格納され得るデータ記録部をシステム・プログラムの更新完了時における状態へ復元させるためのスナップショット・データを、仮想マシンにデータ記録部内に確保させるステップと、スナップショット・データがデータ記録部に確保された後に、ユーザ入力の受け付け遮断を仮想マシンに停止させるステップとをさらにコンピュータに実行させる。 The program according to the second aspect of the present invention includes a first virtual machine control program, a virtual machine, a system program that operates on the virtual machine, and a second virtual machine control program that operates on the system program. Including. A step of determining whether the first virtual machine control program is the latest system program; and a step of causing the virtual machine to block acceptance of user input when it is determined that the system program is not the latest And let the computer run. Further, the second virtual machine control program causes the computer to execute the step of causing the update data of the system program to be acquired from the update server via the network and updating the system program. When the first virtual machine control program further detects completion of the update of the system program, a data recording unit in which the system program is recorded and user data can be stored is displayed when the update of the system program is completed. The virtual machine secures snapshot data for restoring to the state in the virtual machine in the data recording unit, and after the snapshot data is secured in the data recording unit, the virtual machine stops receiving and blocking user input And further causing the computer to execute the steps.
なお、上記プログラムは、基本的にはUSBメモリなどの可搬記憶媒体に格納されて流通するものであるが、例えばフレキシブルディスク、CD−ROM、光磁気ディスク、半導体メモリ、ハードディスク等の記憶媒体又は記憶装置に格納されて流通する場合もある。また、ネットワークなどを介してデジタル信号として配信される場合もある。尚、中間的な処理結果はメインメモリ等の記憶装置に一時保管される。 The program is basically stored and distributed in a portable storage medium such as a USB memory. For example, the program is a storage medium such as a flexible disk, a CD-ROM, a magneto-optical disk, a semiconductor memory, a hard disk, or the like. In some cases, the data is stored in a storage device and distributed. Moreover, it may be distributed as a digital signal via a network or the like. The intermediate processing result is temporarily stored in a storage device such as a main memory.
本発明によれば、システム・プログラムの更新をUSBメモリなどの可搬記憶媒体に保存する一方、ユーザ・データが残らないように保証することができるようになる。 According to the present invention, the update of the system program can be saved in a portable storage medium such as a USB memory, while ensuring that no user data remains.
図1に本発明の一実施の形態に係るシステムの概要を示す。PC300は、例えばインターネットなどのネットワーク1を介してファイルサーバ400及びOSやアプリケーション等のシステム・プログラムの更新データ等を保持するアップデートサーバ500と接続されている。PC300は、外部端子としてUSB端子を有しており、例えばUSBメモリやUSB接続のポータブルHDDである可搬記憶媒体100と接続可能となっている。可搬記憶媒体100は、PC300に対してメモリが接続されたことを認識させるためのUSBターゲット・コントローラ102と、記憶領域200とを有する。USBターゲット・コントローラ102は、周知であるからこれ以上述べない。初期状態における記憶領域200には、第1仮想マシン制御アプリケーション203と、仮想マシン204と、OS上で動作するアプリケーションなどを含む仮想マシン用OSイメージ205とが格納されている。なお、仮想マシン用OSイメージ205には、第1仮想マシン制御アプリケーション203と連携し、仮想マシン上で動作する第2仮想マシン制御アプリケーション206が含まれる。
FIG. 1 shows an outline of a system according to an embodiment of the present invention. The
次に、図2乃至図19を用いて、可搬記憶媒体100をPC300に接続させた場合の処理を説明する。まず、ユーザは、可搬記憶媒体100をPC300のUSB端子に挿入する。PC300は、可搬記憶媒体100の挿入を受け付け(ステップS1)、第1仮想マシン制御アプリケーション203をPC300のOS上で起動させる(ステップS3)。第1仮想マシン制御アプリケーション203は、PC300のOS上のプロセスである第1仮想マシン制御アプリケーション303として起動される(ステップS5)。なお、記憶領域200にアクセスする前に、ユーザ認証を実施するようにしても良い。また、第1仮想マシン制御アプリケーション203の起動については、図2のように自動起動であってもよいし、ユーザの指示により起動するようにしても良い。図3にステップS5完了時の状態を模式的に示す。PC300に可搬記憶媒体100が接続され、PC300のOS上にプロセスとして第1仮想マシン制御アプリケーション303が起動されている様子が示されている。
Next, processing when the
また、第1仮想マシン制御アプリケーション303は、仮想マシン204を起動させる(ステップS7)。仮想マシン204は、PC300のOS上のプロセスである仮想マシン304として起動される(ステップS9)。さらに、仮想マシン304は、仮想マシン用OSイメージ205をロードして起動させる(ステップS11)。仮想マシン用OSイメージ305は、仮想マシン304上にロードされ起動された仮想マシン用OSイメージ205であり、仮想マシン用OS305’として動作する(ステップS13)。仮想マシン用OS305’は、第2仮想マシン制御アプリケーション206を、仮想マシン用OS305’上で起動させる(ステップS15)。第2仮想マシン制御アプリケーション306は、仮想マシン用OS305’上のプロセスとして起動される(ステップS17)。
In addition, the first virtual
この段階で、第1仮想マシン制御アプリケーション303と第2仮想マシン制御アプリケーション306とは、通信セッション310を生成する。通信セッションの生成方法としては、ソケットを用いる方法やプロセス間共有メモリを利用することによって実現できる。この段階まで処理が進んだ後の状態を図4に模式的に示す。図4に示すように、第1仮想マシン制御アプリケーション303と仮想マシン304とは、PC300のOS上のプロセスとして動作し、仮想マシン用OSイメージ305は、仮想マシン304上に起動されている。さらに、第2仮想マシン制御アプリケーション306は、仮想マシン用OS305’上のプロセスとして動作する。第1仮想マシン制御アプリケーション303と第2仮想マシン制御アプリケーション306とは通信セッション310を有しており、互いに通信することができるようになっている。
At this stage, the first virtual
次に、第1仮想マシン制御アプリケーション303は、仮想マシン用OSイメージ305が最新か否かを確認する確認要求を、通信セッション310を介して第2仮想マシン制御アプリケーション306に出力する(ステップS19)。第2仮想マシン制御アプリケーション306は、第1仮想マシン制御アプリケーション303から確認要求を受信し(ステップS21)、図5の処理に移行する。
Next, the first virtual
図5の処理の説明に移行して、第2仮想マシン制御アプリケーション306は、OS等の最新状態情報をアップデートサーバ500に要求する(ステップS23)。アップデートサーバ500は、PC300からOS等の最新状態情報の要求を受信すると(ステップS25)、送信元のPC300に対してOS等の最新状態情報を送信する(ステップS27)。第2仮想マシン制御アプリケーション306は、アップデートサーバ500からOS等の最新状態情報を受信する(ステップS29)。また、第2仮想マシン制御アプリケーション306は、仮想マシン用OSイメージ305から現在のOS状態情報(システムのバージョンやアップデート状況情報)を取得する(ステップS31)。例えばレジストリや特定のファイルから読み出す。
Shifting to the description of the processing in FIG. 5, the second virtual
そして、第2仮想マシン制御アプリケーション306は、OS等の最新状態情報と現在のOS状態情報とを比較する(ステップS33)。そして、比較結果を、通信セッション310を介して第1仮想マシン制御アプリケーション303に出力する(ステップS35)。第1仮想マシン制御アプリケーション303は、OS等の最新状態情報と現在のOS状態情報との比較結果を、第2仮想マシン制御アプリケーション306から受信し(ステップS37)、入力抑制要求を仮想マシン304に出力する(ステップS41)。仮想マシン304は、入力抑制要求を受け付け、入力抑制を実施する(ステップS42)。また、第1仮想マシン制御アプリケーション303は、第2仮想マシン制御アプリケーション306から受信した比較結果が最新であることを示しているか確認する(ステップS43)。最新である場合には端子Bを介して図8の処理に移行する。一方、最新ではない場合には、第1仮想マシン処理は端子Cを介して図7の処理に移行する。
Then, the second virtual
入力抑制については例えば図6を用いて説明する。通常であれば、PC300に接続されているキーボード320からキーボード入力がキーボード入力コントローラ331及びドライバ332を介してPC300のOSのプロセスである仮想マシン304に出力される((1)乃至(3))。そして、キーボード入力データは仮想マシン304から仮想マシン用OSイメージ305に転送される((4))。第1仮想マシン制御アプリケーション303は、ステップS42で、仮想マシン304に対して仮想マシン用OSイメージ305への転送を抑制させる。キーボードだけではなく、同様にマウス入力も抑制するようにしてもよい。
The input suppression will be described with reference to FIG. Normally, keyboard input from the
このようにすることによって、仮想マシン用OSイメージ305及び205が更新されている間、PC300からの入力を抑制しているので、仮想マシン204上でアプリケーションが実行されることはない。すなわち、ユーザがドキュメントを新規に作成したり、ネットワーク1を介してファイルサーバ400からドキュメントをダウンロードしたりすることができなくなる。
By doing so, input from the
端子C以降の処理を図7を用いて説明する。第1仮想マシン制御アプリケーション303は、通信セッション310を介して第2仮想マシン制御アプリケーション306に、仮想マシン用OSイメージ305の更新依頼を出力する(ステップS45)。第2仮想マシン制御アプリケーション306は、第1仮想マシン制御アプリケーション303から仮想マシン用OSイメージ305の更新依頼を受信し(ステップS47)、仮想マシン用OSイメージ305におけるアップデート用モジュールに対してOS等の更新依頼を出力する(ステップS49)。仮想マシン用OSイメージ305におけるアップデートモジュールは、第2仮想マシン制御アプリケーション306からOS等の更新依頼を受信すると(ステップS51)、OS等の状態更新情報要求をアップデートサーバ500に送信する(ステップS53)。アップデートサーバ500は、PC300からOS等の状態更新情報要求を受信すると(ステップS55)、OS等の状態更新情報を送信元のPC300に送信する(ステップS57)。この際、必要な認証処理を実施する場合もある。また、どのような情報を抽出して送信するかは、周知であるからここでは説明は省略する。仮想マシン用OSイメージ305におけるアップデートモジュールは、アップデートサーバ500からOS等の状態更新情報を受信し、更新処理を実施する(ステップS59)。アップデートサーバ500は、状態更新情報を送信し終わると、更新終了通知を要求元のPC300に送信する(ステップS61)。これに対して、仮想マシン用OSイメージ305におけるアップデートモジュールは、更新終了通知を受信し(ステップS63)、更新を終了する。処理は端子Dを介して図8の処理に移行する。
Processing after the terminal C will be described with reference to FIG. The first virtual
端子D以降の処理を図8を用いて説明する。仮想マシン用OSイメージ305におけるアップデートモジュールは、更新終了通知を第2仮想マシン制御アプリケーション306に出力する(ステップS65)。第2仮想マシン制御アプリケーション306は、仮想マシン用OSイメージ305におけるアップデートモジュールから更新終了通知を受信すると(ステップS67)、通信セッション310を介して第1仮想マシン制御アプリケーション303に更新終了通知を出力する(ステップS69)。第1仮想マシン制御アプリケーション303は、第2仮想マシン制御アプリケーション306から更新終了通知を受信すると(ステップS71)、スナップショット生成要求を仮想マシン304に出力する(ステップS73)。仮想マシン304は、第1仮想マシン制御アプリケーション303からスナップショット生成要求を受信し、スナップショット・イメージを生成して、可搬記憶媒体100の記憶領域200に格納する(ステップS75)。
The processing after the terminal D will be described with reference to FIG. The update module in the virtual
スナップショット・データは、例えば図9に示すようなデータである。図9に示すように、スナップショット・イメージは、OS、ワープロアプリケーション、その他アプリケーションのイメージであり、ステップS75の時点における仮想マシン用OSイメージ205そのものである。仮想マシン用OSイメージが最新ではなく更新が必要な場合には、ステップS59で更新を行った後の仮想マシン用OSイメージ205と同じスナップショット・データが生成される。仮想マシン用OSイメージが最新であって更新が必要ない場合には、更新無しでスナップショット・イメージが生成される。
The snapshot data is data as shown in FIG. 9, for example. As shown in FIG. 9, the snapshot image is an image of an OS, a word processor application, and other applications, and is the virtual
図10に、記憶領域200に格納される仮想マシン用OSイメージ205及びスナップショット・データの推移を概念的に示す図を示す。ステップS75より前には、図10(a)に示すように、仮想マシン用OSイメージ205である「A」が記憶領域200に格納されている。図9にも示したように、ステップS75でスナップショット・イメージが生成されると、仮想マシン用OSイメージ205である「A」と同じスナップショット・イメージである「A」が生成され、「A」が2つ保持されるようになる。なお、A(保存用)がスナップショット・イメージであり、A(Current)はこれから変更が加えられる可能性のある仮想マシン用OSイメージ205である。以下については、以下で説明する処理にて説明する。
FIG. 10 is a diagram conceptually showing the transition of the virtual
図8の説明に戻って、仮想マシン304は、スナップショット管理テーブルを更新する(ステップS77)。スナップショット管理テーブルは、記憶領域200に格納されている仮想マシン用OSイメージ205及びスナップショット・イメージの管理を行うものである。仮想マシン用OSイメージ205については、以下で述べるように様々なアプリケーションプログラムによってデータ書込が行われて更新される。このような更新については可搬記憶媒体100をPC300から取り外した際には保存してはいけない更新であるから、別途スナップショット・イメージを保持しておき、当該スナップショット・イメージで記憶領域200を元の状態に戻す。従って、図11に示すように、スナップショット管理テーブル350は、いずれが復元用のスナップショット・イメージ(スナップショット・データとも呼ぶ)207であり、いずれが現在使用している仮想マシン用OSイメージ205(Current)であるかを特定するレコードを保持する。例えば、ステップS77では、図11に示すように、図10の記法に従えば「A(保存用)」−>「A(Current)」というようなレコードを保持する。「A(Current)」が仮想マシン用OSイメージ205を指しており、「A(保存用)」がスナップショット・イメージ207を指している。なお、スナップショット管理テーブル350は、記憶領域200にも格納される。
Returning to the description of FIG. 8, the
さらに、第1仮想マシン制御アプリケーション303は、入力抑制の停止指示を仮想マシン304に出力する(ステップS79)。仮想マシン304は、入力抑制の停止指示を受信し、入力抑制を停止する(ステップS81)。そして、図12の処理に移行する。なお、端子Aの後の処理も図12の処理である。
Further, the first virtual
図12の処理の説明に移行して、ここでは、ユーザが、例えばワープロアプリケーションを選択して起動の指示をPC300に入力するものとする。このような場合、起動の指示は、仮想マシン304を介して仮想マシン用OS305’に伝えられ、ワープロアプリケーションは起動される(ステップS81)。また、ここでは、ユーザが、ファイルサーバ400に格納されている特定のドキュメント・ファイルを編集する場合を考える。すなわち、ユーザは、ファイルサーバ400から特定のドキュメント・ファイルをダウンロードするように指示を入力する。そうすると、ワープロアプリケーションは、指示に応じて、特定のドキュメント・ファイルのダウンロードを、ファイルサーバ400に要求する(ステップS83)。ファイルサーバ400は、特定のドキュメント・ファイルのダウンロード要求を受信し(ステップS85)、要求されたドキュメント・ファイルを、要求元のPC300に送信する(ステップS87)。ワープロアプリケーションは、ファイルサーバ400からドキュメント・ファイルを受信して、表示装置に当該ドキュメントの内容を表示する(ステップS89)。
Shifting to the description of the processing in FIG. 12, here, it is assumed that the user selects, for example, a word processor application and inputs an activation instruction to the
さらに、ユーザは、作業用に可搬記憶媒体100の記憶領域200に、受信したドキュメント・ファイルを一旦保存することを指示するものとする。そうすると、指示に応じて、ワープロアプリケーションは、ドキュメント・ファイルの保存を仮想マシン用OS305’に要求する(ステップS91)。仮想マシン用OS305’は、ワープロアプリケーションからの要求に応じて、可搬記憶媒体100の記憶領域200へドキュメント・ファイルを保存する(ステップS93)。この段階で、図10(c)に示すように、可搬記憶媒体100の記憶領域200における仮想マシン用OSイメージ205(すなわち右側の「A(Current)」)に変更が加えられて、「A+(変更後)」と記されるように変更が生ずる。
Further, it is assumed that the user instructs to temporarily store the received document file in the
その後、ユーザは、ドキュメント・ファイルに対して編集を行って、ワープロアプリケーションは、編集指示に応じてドキュメント・ファイルの編集処理を実施する(ステップS95)。そして、ユーザが保存を指示すると、ワープロアプリケーションは、当該指示に応じて編集結果の保存を仮想マシン用OS305’に要求する(ステップS97)。仮想マシン用OS305’は、ワープロアプリケーションからの要求に応じて、可搬記憶媒体100の記憶領域200へ編集結果を保存する(ステップS99)。ドキュメント・ファイルを可搬記憶媒体100には保持しておけないことになっているので、編集が終了すると、ユーザは、ファイルサーバ400へのアップロードをワープロアプリケーションに指示する。ワープロアプリケーションは、ユーザからの指示に従って、編集後のドキュメント・ファイルをファイルサーバ400にアップロードする(ステップS101)。ファイルサーバ400は、PC300から編集後のドキュメント・ファイルを受信し、ファイルサーバ400の記憶装置に格納する(ステップS103)。処理は、端子Eを介して図13の処理に移行する。
Thereafter, the user edits the document file, and the word processor application executes the document file editing process in accordance with the editing instruction (step S95). When the user instructs saving, the word processor application requests the virtual machine OS 305 'to save the editing result in accordance with the instruction (step S97). The virtual machine OS 305 'saves the edited result in the
図13の処理の説明に移行して、可搬記憶媒体100の使用が終了した場合には、ユーザは、まずワープロアプリケーションの終了を指示する。そうすると、ワープロアプリケーションは、当該指示に応じて終了される(ステップS105)。また、ユーザは、仮想マシン用OS305’の終了を指示し、仮想マシン用OS305’は、当該指示に応じて終了される(ステップS107)。また、仮想マシン304は、仮想マシン用OS305’の終了を検知すると(ステップS109)、可搬記憶媒体100の記憶領域200における仮想マシン用OSイメージ205を削除して、保存用のスナップショット・イメージ207のみを残すことによって、スナップショットを1つ前に戻すための処理を実施する(ステップS111)。また、スナップショット管理テーブル350において、これまで変更してきた仮想マシン用OSイメージ205に対応するレコードを削除するように更新する(ステップS113)。スナップショット管理テーブル350については、PC300のメモリ上のテーブルだけではなく、可搬記憶媒体100の記憶領域200中のテーブルについても更新する。
Shifting to the description of the processing in FIG. 13, when the use of the
この段階におけるシステムの状態を図14に模式的に示す。図14に示したように、スナップショット管理テーブル350において、仮想マシン用OSイメージ205に対応するレコードである「A(Current)」は削除され、スナップショット・イメージ207に対応するレコードである「A(保存用)」のみが残されている。これと同様の内容のスナップショット管理テーブル250が、可搬記憶媒体100の記憶領域200に保持されている。また、記憶領域200において、仮想マシン用OSイメージ205も、ユーザによって保存されたドキュメント・ファイルその他のデータを削除するために削除される。このようにして、図10(c)の状態から、仮想マシン用OSイメージ205の更新を行った後の状態と同じ「A」(図10(d))に戻る。
The state of the system at this stage is schematically shown in FIG. As shown in FIG. 14, in the snapshot management table 350, “A (Current)” that is a record corresponding to the virtual
その後、仮想マシン304は、終了される(ステップS115)。また、第1仮想マシン制御アプリケーション303は、仮想マシン304の終了を検知して、終了される(ステップS117)。このような処理の後に、ユーザは、可搬記憶媒体100をPC300から取り外して、持ち運ぶことができる。
Thereafter, the
以上のような処理を実施することによって、可搬記憶媒体100の記憶領域200に、ユーザ・データを残すことなく、仮想マシン用OSイメージ205の更新については反映した後の状態を保持することができるようになる。従って、再度可搬記憶媒体100をPC300に挿入した場合には、スナップショット・イメージ207を用いて起動させることができる。
By performing the processing as described above, the updated state of the virtual
但し、最後まで正常に上で述べた処理を終了させていればスナップショット・イメージ207が残って、スナップショット管理テーブル350のレコードがスナップショット・イメージ207を保持することを示すようになるが、ユーザその他の人間が、正常な終了処理を実施せずに強引に可搬記憶媒体100をPC300から取り外すような場合もある。
However, if the processing described above is normally completed until the end, the
このような場合には、ユーザ・データを含む仮想マシン用OSイメージ205が残ったままで、スナップショット管理テーブル350にも、仮想マシン用OSイメージ205に対応するレコードが残ってしまう。そうすると、後からユーザ・データが抽出されて、情報漏洩に繋がる場合がある。
In such a case, the virtual
そこで、例えば図2のステップS3の後に、図15に示すような処理を実施する。すなわち、第1仮想マシン制御アプリケーション303は、スナップショット管理テーブル350をチェックして(ステップS201)、複数レコード存在しているか判断する(ステップS203)。なお、仮想マシン用OSイメージが記憶領域200に複数記憶されているか判断するようにしても良い。
Therefore, for example, after step S3 in FIG. 2, processing as shown in FIG. 15 is performed. That is, the first virtual
ここで1つのレコードしかないと判断された場合には、特別な処理は不要で、次の処理を実施すればよい。一方、不正終了した場合には、図16(b)に示すように、ユーザ・データによる変更が含まれている可能性のある仮想マシン用OSイメージ205に対応する「A+(Current)」というレコードと、OSの更新後のスナップショット・イメージ207に対応する「A(保存用)」というレコードといったように複数のレコードが存在する場合がある。このような場合には、図16(a)に示すように、記憶領域200に、2つの仮想マシン用OSイメージが残されている可能性がある。従って、複数のレコードが存在する場合には、第1仮想マシン制御アプリケーション303は、記憶領域200において最新のスナップショット・イメージを削除する(ステップS205)。最新というのは、ユーザ・データによる変更が含まれるスナップショット・イメージということであり、仮想マシン用OSイメージ205である。そして、スナップショット管理テーブル250において、削除したスナップショット・イメージに対応するレコードを削除するように更新する(ステップS207)。そして、次の処理に移行する。
If it is determined here that there is only one record, no special processing is required, and the next processing may be performed. On the other hand, as shown in FIG. 16B, in the case of illegal termination, a record “A + (Current)” corresponding to the virtual
このような処理を実施することによって、必ず仮想マシン用OSイメージを読み出すまでに、可搬記憶媒体100の記憶領域200には、ユーザ・データを含まない仮想マシン用OSイメージのみが格納される状態に復元することができ、不正にユーザ・データを読み出すことを防止することができるようになる。
By executing such a process, only the virtual machine OS image that does not include user data is stored in the
また、企業の従業員がユーザである場合には、企業側が可搬記憶媒体100の利用状況を把握して、情報漏洩の防止に利用する場合もある。このような場合には、図17に示すように、ネットワーク1に、新たに管理サーバ600を設け、また可搬記憶媒体100の記憶領域200に、以下で説明するような処理を実施する第1仮想マシン制御アプリケーション203bを設ける。
In addition, when a company employee is a user, the company may grasp the usage status of the
このような場合には、図2のステップS3の後に図18で示すステップS301乃至S311が実行され、図13のステップS117の前に、図18で示すステップS313乃至S317が実行される。 In such a case, steps S301 to S311 shown in FIG. 18 are executed after step S3 in FIG. 2, and steps S313 to S317 shown in FIG. 18 are executed before step S117 in FIG.
第1仮想マシン制御アプリケーション203bから、プロセスとして第1仮想マシン制御アプリケーション303bがPC300上で起動されると、当該第1仮想マシン制御アプリケーション303bは、起動日時及び可搬記憶媒体100の識別情報(例えば製造番号など)を含む利用開始通知を生成して、管理サーバ600に送信する(ステップS301)。管理サーバ600は、PC300から利用開始通知を受信し、例えばメインメモリなどの記憶装置に格納する(ステップS303)。そして、乱数を発生させ(ステップS305)、利用開始通知に含まれる起動日時及び可搬記憶媒体100の識別情報と乱数とを、例えば管理テーブルに格納する(ステップS307)。そして、管理サーバ600は、乱数を利用開始通知の送信元であるPC300に送信する(ステップS309)。
When the first virtual machine control application 303b is activated on the
PC300の第1仮想マシン制御アプリケーション303bは、管理サーバ600から乱数を受信し、メインメモリ又は可搬記憶媒体100の記憶領域200に格納する(ステップS311)。
The first virtual machine control application 303b of the
一方、第1仮想マシン制御アプリケーション303bを終了させる前に、第1仮想マシン制御アプリケーション303bは、仮想マシン304の終了を検知すると、ステップS311で受信した乱数と可搬記憶媒体100の識別情報と利用終了日時とを含む利用終了通知を生成し、管理サーバ600に送信する(ステップS313)。管理サーバ600は、PC300から乱数と可搬記憶媒体100の識別情報と利用終了日時とを含む利用終了通知を受信すると(ステップS315)、例えば可搬記憶媒体100の識別情報で管理テーブルを検索して、乱数が正しいことを確認できれば、利用終了日時を管理テーブルの該当レコードに登録する(ステップS317)。
On the other hand, before the first virtual machine control application 303b is terminated, when the first virtual machine control application 303b detects the termination of the
以上のような処理を実施すれば、管理サーバ600に蓄積されるデータによって、可搬記憶媒体100が適切に利用されているか判断することができる。具体的には、起動日時及び利用終了日時の対が登録されていない場合には、実際に使用中か、利用途中で正常終了していない場合であり、通常の利用時間を超えて利用終了日時が登録されない場合には、正常終了していないということが分かる。
If the process as described above is performed, it is possible to determine whether the
さらに、利用終了日時が登録されていないレコードが存在するのに、同じ可搬記憶媒体100について再度利用開始通知を受信したような場合には、途中で盗難などに遭った可能性もあるので、管理サーバ600から第1仮想マシン制御アプリケーション203bにロック指示を送信して、仮想マシン204や仮想マシン用OSイメージ205のロードを禁止したり、可搬記憶媒体100へのアクセスを禁止するようにして、情報漏洩を防止するようにしても良い。さらに、管理サーバ600とファイルサーバ400とを連携させて、利用終了日時が登録されずに起動日時から通常の利用時間を超えた場合には、ファイルサーバ400の該当ユーザの領域をロックするようにしても良い。
Furthermore, when there is a record in which the use end date / time is not registered, but the use start notification is received again for the same
以上の例では、スナップショット生成において、仮想マシン用OSイメージ205と同じデータを生成してスナップショット・イメージ207を生成する例を示したが、これでは可搬記憶媒体100の記憶領域200に仮想マシン用OSイメージ205のほぼ2倍の記憶容量を必要とする。これでは、可搬記憶媒体100が高価になってしまう。そこで、「A」という仮想マシン用OSイメージ205(図19(a))について、スナップショットを生成すると、「A」をリードオンリーの保存用として保持する(図19(b))。そして、ワープロアプリケーションなどによってユーザ・データの生成等によって変更が発生した場合には、変更部分のみを「a+」として、仮想マシン用OSイメージ205「A」とは別に保持する(図19(c))。終了時には、変更部分の「a+」を削除することによって、元の仮想マシン用OSイメージ205「A」を復元する(図19(d))。このようにすれば、必要となる記憶容量が「a+」の分増加するだけになるので、使用する可搬記憶媒体100の価格を下げることができる。
In the above example, in the snapshot generation, the same data as the virtual
以上本発明の実施の形態を説明したが、本発明はこれに限定されるものではない。例えば、同じ結果を得られるのであれば、上で述べた処理ステップの順番を入れ替えたり、同時実行するようにしても良い。また、例えば、第1仮想マシン制御アプリケーション303と仮想マシン304の機能分担を変更するようにしても良い。
Although the embodiment of the present invention has been described above, the present invention is not limited to this. For example, as long as the same result can be obtained, the order of the processing steps described above may be changed or may be executed simultaneously. Further, for example, the function sharing between the first virtual
なお、上で述べたPC300、ファイルサーバ400、アップデートサーバ500、管理サーバ600においては、図20に示すように、メモリ2501(記憶部)とCPU2503(処理部)とハードディスク・ドライブ(HDD)2505と表示装置2509に接続される表示制御部2507とリムーバブル・ディスク2511用のドライブ装置2513と入力装置2515とネットワークに接続するための通信制御部2517とがバス2519で接続されている。OS及びWebブラウザを含むアプリケーション・プログラムは、HDD2505に格納されており、CPU2503により実行される際にはHDD2505からメモリ2501に読み出される。必要に応じてCPU2503は、表示制御部2507、通信制御部2517、ドライブ装置2513を制御して、必要な動作を行わせる。また、処理途中のデータについては、メモリ2501に格納され、必要があればHDD2505に格納される。このようなコンピュータは、上で述べたCPU2503、メモリ2501などのハードウエアとOS及び必要なアプリケーション・プログラムとが有機的に協働することにより、上で述べたような各種機能を実現する。
In the above-described
(付記1)
アプリケーション・データを含むシステム・データが最新であるか判断するステップと、
前記システム・データが最新ではないと判断された場合には、ユーザ入力の受け付けを遮断させるステップと、
前記システム・データの更新データを、アップデート・サーバからネットワーク経由で取得させ、前記システム・データの更新を実施させるステップと、
前記システム・データの更新完了を検出すると、前記システム・データが記録されており且つユーザ・データが格納され得るデータ記録部を前記システム・データの更新完了時における状態へ復元させるためのスナップショット・データを前記データ記録部内に確保させるステップと、
前記スナップショット・データが前記データ記録部に確保された後に、前記ユーザ入力の受け付け遮断を停止させるステップと、
をコンピュータに実行させるためのプログラム。
(Appendix 1)
Determining whether system data, including application data, is current;
If it is determined that the system data is not up-to-date, blocking acceptance of user input;
Obtaining update data of the system data from an update server via a network, and performing the update of the system data;
When detecting the completion of the update of the system data, a snapshot for restoring the data recording unit in which the system data is recorded and the user data can be stored to the state at the completion of the update of the system data. Securing data in the data recording unit;
After the snapshot data is secured in the data recording unit, stopping the acceptance and blocking of the user input;
A program that causes a computer to execute.
(付記2)
前記システム・データに基づくシステムの終了を検出すると、前記スナップショット・データにより前記システム・データの更新完了時における状態に前記データ記録部を復元するステップ
をさらにコンピュータに実行させるための請求項1記載のプログラム。
(Appendix 2)
The system for causing the computer to further execute a step of restoring the data recording unit to a state at the time when the update of the system data is completed by the snapshot data when detecting the end of the system based on the system data. Program.
(付記3)
前記データ記録部が、前記コンピュータにユニバーサル・シリアル・バスで接続される可搬記憶媒体である
請求項1記載のプログラム。
(Appendix 3)
The program according to
(付記4)
前記システム・データに基づくシステムの起動時に、前記データ記録部が、前記システム・データの更新完了時における状態に復元されているか判断するステップと、
前記データ記録部が、前記システム・データの更新完了時における状態に復元されていない場合には、前記スナップショット・データにより前記システム・データの更新時における状態に復元するステップと、
をさらにコンピュータに実行させるための請求項2記載のプログラム。
(Appendix 4)
Determining whether the data recording unit has been restored to the state when the update of the system data is completed at the time of starting the system based on the system data;
When the data recording unit is not restored to the state at the time of completion of the update of the system data, the step of restoring to the state at the time of update of the system data by the snapshot data;
The program according to
(付記5)
前記システム・データに基づくシステムの起動時に、ネットワークを介して管理サーバに前記データ記録部の利用開始を登録させるステップと、
前記システム・データに基づくシステムの終了を検出すると、前記ネットワークを介して前記管理サーバに前記データ記録部の利用終了を登録させるステップと、
をさらにコンピュータに実行させるための請求項1記載のプログラム。
(Appendix 5)
Registering the start of use of the data recording unit in a management server via a network when starting the system based on the system data;
Detecting the end of the system based on the system data, causing the management server to register the end of use of the data recording unit via the network;
The program according to
(付記6)
第1の仮想マシン制御プログラムと、
仮想マシンと、
仮想マシン上で動作するシステム・プログラムと、
前記システム・プログラム上で動作する第2の仮想マシン制御プログラムと、
を含むプログラムであって、
前記第1の仮想マシン制御プログラムが、
前記システム・プログラムが最新であるか判断するステップと、
前記システム・プログラムが最新ではないと判断された場合には、ユーザ入力の受け付けを前記仮想マシンに遮断させるステップと、
をコンピュータに実行させ、
前記第2の仮想マシン制御プログラムが、
前記システム・プログラムの更新データを、アップデート・サーバからネットワーク経由で取得させ、前記システム・プログラムの更新を実施させるステップ
を前記コンピュータに実行させ、
前記第1の仮想マシン制御プログラムが、さらに、
前記システム・プログラムの更新完了を検出すると、前記システム・プログラムが記録されており且つユーザ・データが格納され得るデータ記録部を前記システム・プログラムの更新完了時における状態へ復元させるためのスナップショット・データを、前記仮想マシンに前記データ記録部内に確保させるステップと、
前記スナップショット・データが前記データ記録部に確保された後に、前記ユーザ入力の受け付け遮断を前記仮想マシンに停止させるステップと、
をさらに前記コンピュータに実行させるプログラム。
(Appendix 6)
A first virtual machine control program;
A virtual machine,
A system program running on the virtual machine;
A second virtual machine control program operating on the system program;
A program including
The first virtual machine control program is
Determining whether the system program is up-to-date;
If it is determined that the system program is not up-to-date, causing the virtual machine to block acceptance of user input;
To the computer,
The second virtual machine control program is
Causing the computer to execute the step of acquiring update data of the system program from an update server via a network and executing the update of the system program;
The first virtual machine control program further includes:
When detecting the completion of the update of the system program, a snapshot for restoring the data recording unit in which the system program is recorded and in which user data can be stored to the state when the update of the system program is completed Causing the virtual machine to secure data in the data recording unit;
Stopping the virtual machine from accepting and blocking the user input after the snapshot data is secured in the data recording unit;
A program for causing the computer to further execute.
(付記7)
アプリケーション・データを含むシステム・データが最新であるか判断するステップと、
前記システム・データが最新ではないと判断された場合には、ユーザ入力の受け付けを遮断させるステップと、
前記システム・データの更新データを、アップデート・サーバからネットワーク経由で取得させ、前記システム・データの更新を実施させるステップと、
前記システム・データの更新完了を検出すると、前記システム・データが記録されており且つユーザ・データが格納され得るデータ記録部を前記システム・データの更新完了時における状態へ復元させるためのスナップショット・データを前記データ記録部内に確保させるステップと、
前記スナップショット・データが前記データ記録部に確保された後に、前記ユーザ入力の受け付け遮断を停止させるステップと、
をコンピュータに実行させるためのプログラムを前記データ記憶部に格納し、前記コンピュータとユニバーサル・シリアル・バスで接続され得る可搬記憶媒体。
(Appendix 7)
Determining whether system data, including application data, is current;
If it is determined that the system data is not up-to-date, blocking acceptance of user input;
Obtaining update data of the system data from an update server via a network, and performing the update of the system data;
When detecting the completion of the update of the system data, a snapshot for restoring the data recording unit in which the system data is recorded and the user data can be stored to the state at the completion of the update of the system data. Securing data in the data recording unit;
After the snapshot data is secured in the data recording unit, stopping the acceptance and blocking of the user input;
A portable storage medium that stores a program for causing a computer to execute the program in the data storage unit and can be connected to the computer via a universal serial bus.
(付記8)
アプリケーション・データを含むシステム・データが最新であるか判断するステップと、
前記システム・データが最新ではないと判断された場合には、ユーザ入力の受け付けを遮断させるステップと、
前記システム・データの更新データを、アップデート・サーバからネットワーク経由で取得させ、前記システム・データの更新を実施させるステップと、
前記システム・データの更新完了を検出すると、前記システム・データが記録されており且つユーザ・データが格納され得るデータ記録部を前記システム・データの更新完了時における状態へ復元させるためのスナップショット・データを前記データ記録部内に確保させるステップと、
前記スナップショット・データが前記データ記録部に確保された後に、前記ユーザ入力の受け付け遮断を停止させるステップと、
を含み、コンピュータにより実行される制御方法。
(Appendix 8)
Determining whether system data, including application data, is current;
If it is determined that the system data is not up-to-date, blocking acceptance of user input;
Obtaining update data of the system data from an update server via a network, and performing the update of the system data;
When detecting the completion of the update of the system data, a snapshot for restoring the data recording unit in which the system data is recorded and the user data can be stored to the state at the completion of the update of the system data. Securing data in the data recording unit;
After the snapshot data is secured in the data recording unit, stopping the acceptance and blocking of the user input;
A control method executed by a computer.
100 可搬記憶媒体
200 記憶領域
300 PC
400 ファイルサーバ
500 アップデートサーバ
600 管理サーバ
102 USBターゲット・コントローラ
203,303 第1仮想マシン制御アプリケーション
204,304 仮想マシン
205,305 仮想マシン用OSイメージ
206,306 第2仮想マシン制御アプリケーション
207 スナップショット・イメージ
250,350 スナップショット管理テーブル
310 通信セッション
320 キーボード
331 キーボード入力コントローラ
332 ドライバ
100
400
Claims (8)
前記システム・データが最新ではないと判断された場合には、ユーザ入力の受け付けを遮断させるステップと、
前記システム・データの更新データを、アップデート・サーバからネットワーク経由で取得させ、前記システム・データの更新を実施させるステップと、
前記システム・データの更新完了を検出すると、前記システム・データが記録されており且つユーザ・データが格納され得るデータ記録部を前記システム・データの更新完了時における状態へ復元させるためのスナップショット・データを前記データ記録部内に確保させるステップと、
前記スナップショット・データが前記データ記録部に確保された後に、前記ユーザ入力の受け付け遮断を停止させるステップと、
をコンピュータに実行させるためのプログラム。 Determining whether system data, including application data, is current;
If it is determined that the system data is not up-to-date, blocking acceptance of user input;
Obtaining update data of the system data from an update server via a network, and performing the update of the system data;
When detecting the completion of the update of the system data, a snapshot for restoring the data recording unit in which the system data is recorded and the user data can be stored to the state at the completion of the update of the system data. Securing data in the data recording unit;
After the snapshot data is secured in the data recording unit, stopping the acceptance and blocking of the user input;
A program that causes a computer to execute.
をさらにコンピュータに実行させるための請求項1記載のプログラム。 The system for causing the computer to further execute a step of restoring the data recording unit to a state at the time when the update of the system data is completed by the snapshot data when detecting the end of the system based on the system data. Program.
請求項1記載のプログラム。 The program according to claim 1, wherein the data recording unit is a portable storage medium connected to the computer via a universal serial bus.
前記データ記録部が、前記システム・データの更新完了時における状態に復元されていない場合には、前記スナップショット・データにより前記システム・データの更新時における状態に復元するステップと、
をさらにコンピュータに実行させるための請求項2記載のプログラム。 Determining whether the data recording unit has been restored to the state when the update of the system data is completed at the time of starting the system based on the system data;
When the data recording unit is not restored to the state at the time of completion of the update of the system data, the step of restoring to the state at the time of update of the system data by the snapshot data;
The program according to claim 2, further causing a computer to execute.
前記システム・データに基づくシステムの終了を検出すると、前記ネットワークを介して前記管理サーバに前記データ記録部の利用終了を登録させるステップと、
をさらにコンピュータに実行させるための請求項1記載のプログラム。 Registering the start of use of the data recording unit in a management server via a network when starting the system based on the system data;
Detecting the end of the system based on the system data, causing the management server to register the end of use of the data recording unit via the network;
The program according to claim 1, further causing a computer to execute.
仮想マシンと、
仮想マシン上で動作するシステム・プログラムと、
前記システム・プログラム上で動作する第2の仮想マシン制御プログラムと、
を含むプログラムであって、
前記第1の仮想マシン制御プログラムが、
前記システム・プログラムが最新であるか判断するステップと、
前記システム・プログラムが最新ではないと判断された場合には、ユーザ入力の受け付けを前記仮想マシンに遮断させるステップと、
をコンピュータに実行させ、
前記第2の仮想マシン制御プログラムが、
前記システム・プログラムの更新データを、アップデート・サーバからネットワーク経由で取得させ、前記システム・プログラムの更新を実施させるステップ
を前記コンピュータに実行させ、
前記第1の仮想マシン制御プログラムが、さらに、
前記システム・プログラムの更新完了を検出すると、前記システム・プログラムが記録されており且つユーザ・データが格納され得るデータ記録部を前記システム・プログラムの更新完了時における状態へ復元させるためのスナップショット・データを、前記仮想マシンに前記データ記録部内に確保させるステップと、
前記スナップショット・データが前記データ記録部に確保された後に、前記ユーザ入力の受け付け遮断を前記仮想マシンに停止させるステップと、
をさらに前記コンピュータに実行させるプログラム。 A first virtual machine control program;
A virtual machine,
A system program running on the virtual machine;
A second virtual machine control program operating on the system program;
A program including
The first virtual machine control program is
Determining whether the system program is up-to-date;
If it is determined that the system program is not up-to-date, causing the virtual machine to block acceptance of user input;
To the computer,
The second virtual machine control program is
Causing the computer to execute the step of acquiring update data of the system program from an update server via a network and executing the update of the system program;
The first virtual machine control program further includes:
When detecting the completion of the update of the system program, a snapshot for restoring the data recording unit in which the system program is recorded and in which user data can be stored to the state when the update of the system program is completed Causing the virtual machine to secure data in the data recording unit;
Stopping the virtual machine from accepting and blocking the user input after the snapshot data is secured in the data recording unit;
A program for causing the computer to further execute.
前記システム・データが最新ではないと判断された場合には、ユーザ入力の受け付けを遮断させるステップと、
前記システム・データの更新データを、アップデート・サーバからネットワーク経由で取得させ、前記システム・データの更新を実施させるステップと、
前記システム・データの更新完了を検出すると、前記システム・データが記録されており且つユーザ・データが格納され得るデータ記録部を前記システム・データの更新完了時における状態へ復元させるためのスナップショット・データを前記データ記録部内に確保させるステップと、
前記スナップショット・データが前記データ記録部に確保された後に、前記ユーザ入力の受け付け遮断を停止させるステップと、
をコンピュータに実行させるためのプログラムを前記データ記憶部に格納し、前記コンピュータとユニバーサル・シリアル・バスで接続され得る可搬記憶媒体。 Determining whether system data, including application data, is current;
If it is determined that the system data is not up-to-date, blocking acceptance of user input;
Obtaining update data of the system data from an update server via a network, and performing the update of the system data;
When detecting the completion of the update of the system data, a snapshot for restoring the data recording unit in which the system data is recorded and the user data can be stored to the state at the completion of the update of the system data. Securing data in the data recording unit;
After the snapshot data is secured in the data recording unit, stopping the acceptance and blocking of the user input;
A portable storage medium that stores a program for causing a computer to execute the program in the data storage unit and can be connected to the computer via a universal serial bus.
前記システム・データが最新ではないと判断された場合には、ユーザ入力の受け付けを遮断させるステップと、
前記システム・データの更新データを、アップデート・サーバからネットワーク経由で取得させ、前記システム・データの更新を実施させるステップと、
前記システム・データの更新完了を検出すると、前記システム・データが記録されており且つユーザ・データが格納され得るデータ記録部を前記システム・データの更新完了時における状態へ復元させるためのスナップショット・データを前記データ記録部内に確保させるステップと、
前記スナップショット・データが前記データ記録部に確保された後に、前記ユーザ入力の受け付け遮断を停止させるステップと、
を含み、コンピュータにより実行される制御方法。 Determining whether system data, including application data, is current;
If it is determined that the system data is not up-to-date, blocking acceptance of user input;
Obtaining update data of the system data from an update server via a network, and performing the update of the system data;
When detecting the completion of the update of the system data, a snapshot for restoring the data recording unit in which the system data is recorded and the user data can be stored to the state at the completion of the update of the system data. Securing data in the data recording unit;
After the snapshot data is secured in the data recording unit, stopping the acceptance and blocking of the user input;
A control method executed by a computer.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007293236A JP2009122749A (en) | 2007-11-12 | 2007-11-12 | Program, portable storage medium, and control method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007293236A JP2009122749A (en) | 2007-11-12 | 2007-11-12 | Program, portable storage medium, and control method |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009122749A true JP2009122749A (en) | 2009-06-04 |
Family
ID=40814868
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007293236A Pending JP2009122749A (en) | 2007-11-12 | 2007-11-12 | Program, portable storage medium, and control method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2009122749A (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011019130A (en) * | 2009-07-09 | 2011-01-27 | Ricoh Co Ltd | Image processing apparatus, display control method, and display control program |
JP2013522794A (en) * | 2010-03-23 | 2013-06-13 | 富士通株式会社 | System and method for remote maintenance of multiple clients in an electronic network using virtualization and authentication |
US10083022B2 (en) | 2014-10-28 | 2018-09-25 | International Business Machines Corporation | Applying update to snapshots of virtual machine |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006031576A (en) * | 2004-07-21 | 2006-02-02 | Hitachi Ltd | Rental server system |
JP2006172074A (en) * | 2004-12-15 | 2006-06-29 | Chugoku Electric Power Co Inc:The | Program, history management server, and history management method |
JP2006172449A (en) * | 2004-12-15 | 2006-06-29 | Microsoft Corp | Portable applications |
JP2007080055A (en) * | 2005-09-15 | 2007-03-29 | Seiko Epson Corp | Update of control software for network device |
JP2007199992A (en) * | 2006-01-26 | 2007-08-09 | Masato Fujino | Computer system |
JP2007249340A (en) * | 2006-03-14 | 2007-09-27 | Fujitsu Ltd | Software update method, update management program and information processor |
-
2007
- 2007-11-12 JP JP2007293236A patent/JP2009122749A/en active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006031576A (en) * | 2004-07-21 | 2006-02-02 | Hitachi Ltd | Rental server system |
JP2006172074A (en) * | 2004-12-15 | 2006-06-29 | Chugoku Electric Power Co Inc:The | Program, history management server, and history management method |
JP2006172449A (en) * | 2004-12-15 | 2006-06-29 | Microsoft Corp | Portable applications |
JP2007080055A (en) * | 2005-09-15 | 2007-03-29 | Seiko Epson Corp | Update of control software for network device |
JP2007199992A (en) * | 2006-01-26 | 2007-08-09 | Masato Fujino | Computer system |
JP2007249340A (en) * | 2006-03-14 | 2007-09-27 | Fujitsu Ltd | Software update method, update management program and information processor |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011019130A (en) * | 2009-07-09 | 2011-01-27 | Ricoh Co Ltd | Image processing apparatus, display control method, and display control program |
JP2013522794A (en) * | 2010-03-23 | 2013-06-13 | 富士通株式会社 | System and method for remote maintenance of multiple clients in an electronic network using virtualization and authentication |
US10083022B2 (en) | 2014-10-28 | 2018-09-25 | International Business Machines Corporation | Applying update to snapshots of virtual machine |
US10140115B2 (en) | 2014-10-28 | 2018-11-27 | International Business Machines Corporation | Applying update to snapshots of virtual machine |
US10394547B2 (en) | 2014-10-28 | 2019-08-27 | International Business Machines Corporation | Applying update to snapshots of virtual machine |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8955150B2 (en) | Apparatus and method for managing digital rights using virtualization technique | |
JP4576336B2 (en) | Electronic data management apparatus, control program therefor, and electronic data management method | |
EP1197873A1 (en) | Information processor, method of controlling information processor, and recording medium | |
JP2006119901A (en) | Portable electronic apparatus and application updating method for the portable electronic apparatus | |
JP4869183B2 (en) | Portable recording medium management system, portable recording medium management method, and program | |
US9582649B2 (en) | Processing data stored in external storage device | |
JP4992511B2 (en) | Web service identification information utilization system, and apparatus, method, and program used therefor | |
JP4793949B2 (en) | Computer information processing apparatus and information management program | |
JP2006343887A (en) | Storage medium, server device, and information security system | |
JP2009122749A (en) | Program, portable storage medium, and control method | |
JP2003108385A (en) | Computer system utilizing detachable external storage device and method for utilizing computer thereof | |
JP5062687B2 (en) | Information processing device | |
JP4936834B2 (en) | Data protection method for semiconductor memory card and semiconductor memory card | |
JP2006146358A (en) | Usb peripheral equipment control system and usb peripheral equipment control method | |
EP3910485B1 (en) | Electronic data management device, electronic data management system, program therefor, and recording medium | |
JP2005309494A (en) | Data use system and method, storage device, and computer program | |
JP2010067043A (en) | Electronic document management system, browsing terminal equipment, and electronic document management program | |
US20100114820A1 (en) | Electronic library book | |
KR101161686B1 (en) | Memory device with security function and security method thereof | |
US8533820B2 (en) | Reserved write positions on install media | |
JP2006344104A (en) | File management program and file management device | |
JP5397617B2 (en) | Management system, information processing apparatus, management apparatus, management method, and program | |
JP2023013353A (en) | Recording system, storage device, image receiving device, and program | |
JP2005025419A (en) | Access system to internet resource | |
JP2004280463A (en) | Data recovery method, recovery program, recording medium, and information processor |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100715 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120528 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120605 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120802 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120828 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20121218 |