JP6447307B2 - Management program, management apparatus, and management method - Google Patents
Management program, management apparatus, and management method Download PDFInfo
- Publication number
- JP6447307B2 JP6447307B2 JP2015069646A JP2015069646A JP6447307B2 JP 6447307 B2 JP6447307 B2 JP 6447307B2 JP 2015069646 A JP2015069646 A JP 2015069646A JP 2015069646 A JP2015069646 A JP 2015069646A JP 6447307 B2 JP6447307 B2 JP 6447307B2
- Authority
- JP
- Japan
- Prior art keywords
- software
- information
- registry
- management
- folder
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Stored Programmes (AREA)
Description
本発明は管理プログラム、管理装置および管理方法に関する。 The present invention relates to a management program, a management apparatus, and a management method.
情報処理装置には、オペレーティングソフト(OS:Operating System)やアプリケーションソフトウェアなどの様々なソフトウェアがインストールされる。システムの運用管理では、複数の情報処理装置が有するソフトウェアを管理装置により集中的に管理することがある。管理装置は、管理対象の情報処理装置からインベントリ情報を収集する。インベントリ情報は、OSが管理するソフトウェア名の情報や該当の情報処理装置が有するファイル名などの情報を含む。管理装置は、インベントリ情報に基づいて、各情報処理装置に存在するソフトウェアを管理し得る。 Various software such as operating software (OS) and application software is installed in the information processing apparatus. In system operation management, software included in a plurality of information processing apparatuses may be centrally managed by a management apparatus. The management device collects inventory information from the information processing device to be managed. The inventory information includes information such as software name information managed by the OS and a file name included in the corresponding information processing apparatus. The management device can manage software existing in each information processing device based on the inventory information.
利用しないソフトウェアを情報処理装置からアンインストールすることもある。例えば、OSのインストール直後の状態(初期設定)からソフトウェアがインストールされたことによる変更内容を逐次保持し、変更内容と初期設定とを用いて、ソフトウェアのインストール順序に依存することなくアンインストールを行う方法が提案されている。 Unused software may be uninstalled from the information processing apparatus. For example, the contents of changes due to the installation of software from the state immediately after the OS installation (initial settings) are sequentially retained, and the changes are performed and the initial settings are used to perform the uninstallation without depending on the software installation order. A method has been proposed.
OSには、一般にレジストリと呼ばれる管理情報によりOSやアプリケーションソフトウェアの設定情報を管理するものがある。例えば、ソフトウェアは、動作のために当該ソフトウェアの情報をレジストリに追加する。しかし、ソフトウェアのアンインストール後に、ソフトウェアの情報がレジストリに残されることがある。余計なレジストリが残ると、他のソフトウェアの動作に支障を来たすおそれがある。このため、レジストリに登録された情報を定期的に整理することが考えられる。 Some OSs manage setting information of OSs and application software by management information generally called a registry. For example, the software adds the software information to the registry for operation. However, software information may remain in the registry after software is uninstalled. If there is an extra registry, other software operations may be hindered. For this reason, it is conceivable to regularly organize information registered in the registry.
例えば、OSが管理するソフトウェア一覧を情報処理装置から取得し、当該ソフトウェア一覧に含まれるソフトウェアとレジストリとの対応付けを行うことが考えられる。何れのソフトウェアにも対応付けられていないレジストリは使用されていないと考えられ、削除候補と決定できる。 For example, it is conceivable to acquire a software list managed by the OS from the information processing apparatus and associate the software included in the software list with a registry. A registry that is not associated with any software is considered not to be used, and can be determined as a deletion candidate.
ところが、レジストリの追加を行うが、ソフトウェア一覧には含まれないソフトウェアも存在し得る。ソフトウェア一覧に含まれないソフトウェアのレジストリを削除してしまうと、当該ソフトウェアの動作に影響が及ぶ。そこで、レジストリのうち、OSのソフトウェア一覧に含まれないソフトウェアに対応する部分を特定する方法が問題となる。 However, there may be software that adds a registry but is not included in the software list. If a software registry that is not included in the software list is deleted, the operation of the software is affected. Therefore, there is a problem with a method for identifying a portion of the registry corresponding to software not included in the OS software list.
1つの側面では、本発明は、未登録のソフトウェアに対応するOS管理情報の項目群を特定する管理プログラム、管理装置および管理方法を提供することを目的とする。 In one aspect, an object of the present invention is to provide a management program, a management apparatus, and a management method for specifying an item group of OS management information corresponding to unregistered software.
1つの態様では、管理プログラムが提供される。この管理プログラムは、コンピュータに、管理対象の複数のマシンより、OSが管理するOS管理情報、ファイル情報、および、登録ソフト情報をそれぞれ取得し、登録ソフト情報、および、OS管理情報に基づき、複数のマシンそれぞれにインストールされたソフトウェア、および、当該ソフトウェアが使用するOS管理情報の項目群に関する第1の管理情報を生成し、第1の管理情報、および、複数のマシンのファイル情報に基づき、使用するソフトウェアが特定されておらず、かつ、対応するファイルが存在するOS管理情報の項目群を、登録ソフト情報に含まれない第1のソフトウェアが使用するOS管理情報の項目群である第1の項目群として特定する、処理を実行させる。 In one aspect, a management program is provided. The management program obtains OS management information, file information, and registered software information managed by the OS from a plurality of managed machines, respectively, and a plurality of management programs based on the registered software information and the OS management information. The first management information related to the software installed in each of the machines and the OS management information items used by the software is generated and used based on the first management information and the file information of a plurality of machines. The OS management information item group in which the software to be used is not specified and the corresponding file exists is the first group of OS management information items used by the first software not included in the registered software information. The process specified as the item group is executed.
また、1つの態様では、管理装置が提供される。この管理装置は、記憶部と演算部とを有する。記憶部は、管理対象の複数のマシンより取得された、OSが管理するOS管理情報、ファイル情報、および、登録ソフト情報を記憶する。演算部は、登録ソフト情報、および、OS管理情報に基づき、複数のマシンそれぞれにインストールされたソフトウェア、および、当該ソフトウェアが使用するOS管理情報の項目群に関する第1の管理情報を生成し、第1の管理情報、および、複数のマシンのファイル情報に基づき、使用するソフトウェアが特定されておらず、かつ、対応するファイルが存在するOS管理情報の項目群を、登録ソフト情報に含まれない第1のソフトウェアが使用するOS管理情報の項目群である第1の項目群として特定する。 In one aspect, a management device is provided. This management apparatus includes a storage unit and a calculation unit. The storage unit stores OS management information, file information, and registered software information managed by the OS, acquired from a plurality of managed machines. Based on the registered software information and the OS management information, the arithmetic unit generates first management information related to the software installed in each of the plurality of machines and the item group of the OS management information used by the software. Based on the management information of 1 and the file information of a plurality of machines, the software to be used is not specified, and the OS management information item group in which the corresponding file exists is not included in the registered software information. It is specified as a first item group which is an item group of OS management information used by one software.
また、1つの態様では、管理方法が提供される。この管理方法では、コンピュータが、管理対象の複数のマシンより、OSが管理するOS管理情報、ファイル情報、および、登録ソフト情報をそれぞれ取得し、登録ソフト情報、および、OS管理情報に基づき、複数のマシンそれぞれにインストールされたソフトウェア、および、当該ソフトウェアが使用するOS管理情報の項目群に関する第1の管理情報を生成し、第1の管理情報、および、複数のマシンのファイル情報に基づき、使用するソフトウェアが特定されておらず、かつ、対応するファイルが存在するOS管理情報の項目群を、登録ソフト情報に含まれない第1のソフトウェアが使用するOS管理情報の項目群である第1の項目群として特定する。 In one aspect, a management method is provided. In this management method, the computer acquires OS management information, file information, and registered software information managed by the OS from a plurality of managed machines, and a plurality of computers are based on the registered software information and the OS management information. The first management information related to the software installed in each of the machines and the OS management information items used by the software is generated and used based on the first management information and the file information of a plurality of machines. The OS management information item group in which the software to be used is not specified and the corresponding file exists is the first group of OS management information items used by the first software not included in the registered software information. Specify as an item group.
1つの側面では、未登録のソフトウェアに対応するOS管理情報の項目群を特定できる。 In one aspect, an OS management information item group corresponding to unregistered software can be specified.
以下、本実施の形態を図面を参照して説明する。
[第1の実施の形態]
図1は、第1の実施の形態の管理装置を示す図である。管理装置1は、システムに含まれるソフトウェアの管理を行う。システムはマシン2,3,4を含む。管理装置1は、ネットワークを介してマシン2,3,4と通信する。マシン2,3,4は、サーバやクライアントなどの物理マシンでもよいし、物理マシン上で動作する仮想マシンでもよい。管理装置1は、マシン2,3,4からインベントリ情報を収集し、マシン2,3,4が有するソフトウェアを管理する。
Hereinafter, the present embodiment will be described with reference to the drawings.
[First Embodiment]
FIG. 1 is a diagram illustrating a management apparatus according to the first embodiment. The
管理装置1は、記憶部1aおよび演算部1bを有する。記憶部1aは、RAM(Random Access Memory)などの揮発性記憶装置でもよいし、HDD(Hard Disk Drive)やフラッシュメモリなどの不揮発性記憶装置でもよい。演算部1bは、CPU(Central Processing Unit)、DSP(Digital Signal Processor)、ASIC(Application Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)などを含み得る。「プロセッサ」には、複数のプロセッサの集合(マルチプロセッサ)も含まれ得る。
The
記憶部1aは、マシン2,3,4から収集したインベントリ情報を記憶する。インベントリ情報は、登録ソフト情報、OSが管理するOS管理情報およびファイル情報を含む。記憶部1aは、登録ソフト情報(ソフトウェアをソフトと略記することがある)、OS管理情報およびファイル情報を、マシン2,3,4それぞれの識別情報に対応付けて記憶する。
The
ここで、登録ソフト情報は、マシン2,3,4それぞれに対応するソフトウェア一覧の情報である。ソフトウェア一覧は、マシン2,3,4で実行されるOSにより管理されるソフトウェア名の一覧である。当該OSによる管理対象外のソフトウェアがマシン2,3,4にインストールされていても、登録ソフト情報には含まれないことになる。
Here, the registered software information is software list information corresponding to each of the
例えば、ソフトウェアのインストール時に、当該ソフトウェアが、OSにより管理されるソフトウェア一覧の情報に自ソフトウェアの情報を登録していれば、ソフトウェア一覧に当該ソフトウェアが登録される。一方、ソフトウェアのインストール時に、当該ソフトウェアが、OSにより管理されるソフトウェア一覧の情報に自ソフトウェアの情報を登録しなければ、ソフトウェア一覧に当該ソフトウェアは登録されない。 For example, when software is installed, if the software registers its own software information in the software list information managed by the OS, the software is registered in the software list. On the other hand, when software is installed, the software is not registered in the software list unless the software registers the software information in the software list information managed by the OS.
OS管理情報は、マシン2,3,4それぞれのOSが管理する情報を含む。例えば、OS管理情報はレジストリ情報と呼ばれるものでもよい。レジストリは、マシン2,3,4それぞれが実行するOSに関する基本情報やアプリケーションソフトウェアの設定情報などである。レジストリは、例えばキーと値とを含む。レジストリ情報はレジストリの集合である。キーは値の格納場所を示す情報であり、ツリー構造をもつ。値はキーに対する具体的な設定値である。レジストリ情報の全体に対する部分をレジストリ範囲と称することがある。OS管理情報は、レジストリのような設定情報の複数の項目の集合である。例えば、以下に示すOS管理情報の項目群の指定は、OS管理情報の範囲(例えば、レジストリ範囲)を特定することで行われてもよい。例えば、項目が特定のツリーの配下すべてに該当する場合は、項目すべてをそれぞれ指定するのではなく、ツリーの上位項目を範囲指定することにより、項目群を特定してもよい。
The OS management information includes information managed by the OS of each of the
ファイル情報は、マシン2,3,4それぞれが有するファイルのファイル名およびファイルが格納されているフォルダ(ディレクトリと呼ばれるものでもよい)を示すパスの情報を含む。ファイル情報は、ファイル名を含む。
The file information includes the file name of each of the
演算部1bは、管理対象のマシン2,3,4より、OS管理情報、ファイル情報、および、登録ソフト情報をそれぞれ取得し、記憶部1aに格納する。例えば、演算部1bは、あるタイミングにおいて、OS管理情報、ファイル情報および登録ソフト情報をマシン2,3,4から取得する。
The
演算部1bは、記憶部1aに記憶された登録ソフト情報、および、OS管理情報に基づき、複数のマシンそれぞれにインストールされたソフトウェア、および、当該ソフトウェアが使用する項目群を特定する。
Based on the registered software information and the OS management information stored in the
例えば、演算部1bは、あるタイミングにおいて、マシン2,3,4から収集した登録ソフト情報に基づいて、マシン2,3に対してソフトウェアAが新たにインストールされたことを検出する。ただし、前述のように登録ソフト情報から検出できるのはOSのソフトウェア一覧の情報に含まれるソフトウェアであり、OSのソフトウェア一覧の情報に含まれないソフトウェアは検出されない。例えば、演算部1bは、マシン4に対して新たにインストールされたソフトウェアを検出しない。
For example, the
演算部1bは、OS管理情報に基づいて、マシン2,3,4それぞれに項目が追加されたことを検出する。演算部1bは、マシン2,3に追加された項目同士を比較し、重複する部分(項目群R1)をソフトウェアAに対応付ける。項目群R1は、マシン2,3に追加された項目のうち、同一の情報(例えば、レジストリのキーおよび値)をもつ項目の集合である。例えば、通常、ソフトウェアは、自ソフトウェアに関する情報(例えば、動作用の設定情報など)をインストール時にOS管理情報へ追加する。よって、あるタイミングでの情報収集により、複数のマシンへのソフトウェアAの追加が検出され、同じ複数のマシンでOS管理情報の追加が検出されたとき、同複数のマシンでの当該OS管理情報の重複部分はソフトウェアAに対応するものである可能性が高い。このため、項目群R1をソフトウェアAに対応付けることができる。
The
演算部1bは、ソフトウェアAが使用するOS管理情報の項目群R1に関する第1の管理情報を生成する。
すると、演算部1bは、マシン2に対して追加されたOS管理情報のうち、使用するソフトウェアが特定されていない項目群R2を検出する。また、演算部1bは、マシン4に対しても、使用するソフトウェアが特定されていないOS管理情報の項目群を検出する。演算部1bは、マシン3に対しては、使用するソフトウェアが特定されていないOS管理情報を検出しない。
The
Then, the
演算部1bは、第1の管理情報、および、複数のマシンのファイル情報に基づき、使用するソフトウェアが特定されておらず、かつ、対応するファイルが存在するOS管理情報の項目群を、登録ソフト情報に含まれない第1のソフトウェアが使用するOS管理情報の項目群である第1の項目群として特定する。
Based on the first management information and the file information of a plurality of machines, the
例えば、演算部1bは、マシン2における項目群R2とマシン4において追加されたOS管理情報との重複部分を取得する。一例として、演算部1bは、項目群R2を重複部分として取得する。
For example, the
マシン2,4において同じ項目群R2が追加されたということは、登録ソフト情報には含まれない何らかのソフトウェアが、マシン2,4に対して新たにインストールされたことを示唆する。そこで、演算部1bは、マシン2,3,4のファイル情報を参照し、追加されたフォルダ群のうち、マシン2,4でのみ共通するフォルダ群を取得する。
The addition of the same item group R2 in the
例えば、演算部1bは、マシン2について、互いに重複しないフォルダ群F1,F2を特定する。フォルダ群F1,F2が重複しないとは、両フォルダ群が同じパスで指定されるフォルダを含まないことを示す。演算部1bは、マシン3について、フォルダ群F11を特定する。フォルダ群F11は、フォルダ群F1の一部分である。演算部1bは、マシン4について、互いに重複しないフォルダ群F12,F2,F3を特定する。フォルダ群F12は、フォルダ群F11の一部分である。また、フォルダ群F3はフォルダ群F1とも重複しない。よって、演算部1bは、マシン2,4でのみ共通するフォルダ群として、フォルダ群F2を取得する。この場合、項目群R2に対応するファイル(フォルダ群F2に格納されたファイル)が存在することになる。
For example, the
演算部1bは、フォルダ群F2を第1のソフトウェア(すなわち、登録ソフト情報に未登録のソフトウェア)に対応するフォルダ群であると特定する。そして、演算部1bは、フォルダ群F2を項目群R2に対応付ける。これにより、第1のソフトウェアと項目群R2とが対応付けられる。すなわち、演算部1bは、項目群R2を、第1のソフトウェア(未登録のソフトウェア)が使用するレジストリ範囲として特定する。
The
なお、例えば、演算部1bは、マシン4に対して、追加されたOS管理情報のうち項目群R2を除いた部分である項目群R3を取得することもある。この場合、演算部1bは、項目群R3について、次回以降の情報収集で取得された情報、あるいは、マシン2,3,4以外の他のマシンから収集された情報を用いて何れかのソフトウェアとの対応付けを行ってもよい。
For example, the
これにより、未登録のソフトウェアに対応するOS管理情報の項目群を特定できる。また、当該項目群をOS管理情報の整理対象から除外することができる。例えば、上記の例において、項目群R2を整理対象とし、項目群R2を削除してしまうと、登録ソフト情報には含まれないが項目群R2を使用する未登録のソフトウェアの動作に支障を来たすおそれがある。そこで、演算部1bは、登録ソフト情報に含まれるソフトウェアに対応付けられなかった項目群についても、マシン2,3,4から収集したファイル情報によって、未登録のソフトウェアに対応付ける。これにより、未登録のソフトウェアが使用する項目群R2を整理対象から除外できる。
As a result, it is possible to specify an OS management information item group corresponding to unregistered software. Also, the item group can be excluded from the OS management information organizing target. For example, in the above example, if the item group R2 is targeted for arrangement and the item group R2 is deleted, the operation of unregistered software that is not included in the registered software information but uses the item group R2 is hindered. There is a fear. Therefore, the
また、演算部1bは、未登録のソフトウェアとOS管理情報の項目群とを対応付けた情報から、不要になった項目群を特定することもできる。例えば、項目群R2とフォルダ群F2とを対応付けた後に、マシン2においてフォルダ群F2が削除され、項目群R2が削除されずに残ったとする。この場合、項目群R2を使用するソフトウェア(未登録のソフトウェア)はマシン2からアンインストールされたと判断できる。よって、演算部1bは、項目群R2を削除対象と決定する。演算部1bは、項目群R2を削除することで、OS管理情報の不要な項目群がマシン2に残ることを防げる。その結果、不要な項目群による他のソフトウェアの動作への影響を抑えられる。
The
例えば、不要な項目群を削除できるため、アンインストールしたソフトウェアの再インストール時や関連する別のソフトウェアのインストール時に、OS管理情報に不要な項目群が残っていることに起因する不具合の発生を抑えられる。 For example, since unnecessary items can be deleted, it is possible to suppress the occurrence of problems caused by unnecessary items remaining in the OS management information when reinstalling uninstalled software or installing other related software. It is done.
[第2の実施の形態]
図2は、第2の実施の形態の情報処理システムを示す図である。第2の実施の形態の情報処理システムは、管理サーバ100およびPC(Personal Computer)200,200a,200b,200c,200dを含む。管理サーバ100は、ネットワーク10を介して、PC200,200a,200b,200c,200dと接続されている。ネットワーク10は、例えばLAN(Local Area Network)である。
[Second Embodiment]
FIG. 2 illustrates an information processing system according to the second embodiment. The information processing system according to the second embodiment includes a
管理サーバ100は、PC200,200a,200b,200c,200dを管理するサーバコンピュータである。管理サーバ100は、PC200,200a,200b,200c,200dからインベントリ情報を定期的に収集し、PC200,200a,200b,200c,200dにインストールされたソフトウェアを管理する。
The
PC200,200a,200b,200c,200dは、ユーザが操作するクライアントコンピュータである。PC200,200a,200b,200c,200dは、管理サーバ100からインベントリ情報の収集要求を受信すると、要求に応じてインベントリ情報を管理サーバ100に送信する。
The
PC200,200a,200b,200c,200dには、様々なソフトウェアがインストールされ得る。また、PC200,200a,200b,200c,200dには、様々なレジストリやファイルなどの情報が追加され得る。管理サーバ100は、PC200,200a,200b,200c,200dからインベントリ情報を収集することで、PC200,200a,200b,200c,200dのOSが管理するソフトウェアの一覧や追加されたレジストリおよびファイルの情報を管理する。
Various software can be installed in the
図3は、管理サーバのハードウェア例を示す図である。管理サーバ100は、プロセッサ101、RAM102、HDD103、画像信号処理部104、入力信号処理部105、媒体リーダ106および通信インタフェース107を有する。各ユニットが管理サーバ100のバスに接続されている。
FIG. 3 is a diagram illustrating a hardware example of the management server. The
プロセッサ101は、管理サーバ100全体を制御する。プロセッサ101は、複数のプロセッシング要素を含むマルチプロセッサであってもよい。プロセッサ101は、例えばCPU、DSP、ASICまたはFPGAなどである。また、プロセッサ101は、CPU、DSP、ASIC、FPGAなどのうちの2以上の要素の組み合わせであってもよい。
The
RAM102は、管理サーバ100の主記憶装置である。RAM102は、プロセッサ101に実行させるOSのプログラムやアプリケーションプログラムの少なくとも一部を一時的に記憶する。また、RAM102は、プロセッサ101による処理に用いる各種データを記憶する。
The
HDD103は、管理サーバ100の補助記憶装置である。HDD103は、内蔵した磁気ディスクに対して、磁気的にデータの書き込みおよび読み出しを行う。HDD103には、OSのプログラム、アプリケーションプログラム、および各種データが格納される。管理サーバ100は、フラッシュメモリやSSD(Solid State Drive)などの他の種類の補助記憶装置を備えてもよく、複数の補助記憶装置を備えてもよい。
The
画像信号処理部104は、プロセッサ101からの命令に従って、管理サーバ100に接続されたディスプレイ11に画像を出力する。ディスプレイ11としては、CRT(Cathode Ray Tube)ディスプレイ、液晶ディスプレイ(LCD:Liquid Crystal Display)、有機EL(Electro-Luminescence)ディスプレイなど各種のディスプレイを用いることができる。管理サーバ100は、ディスプレイ11を一体に備えてもよい。
The image
入力信号処理部105は、管理サーバ100に接続された入力デバイス12から入力信号を取得し、プロセッサ101に出力する。入力デバイス12としては、マウスやタッチパネルなどのポインティングデバイスやキーボードなどの各種の入力デバイスを用いることができる。管理サーバ100には、複数の種類の入力デバイスが接続されてもよい。管理サーバ100は、入力デバイス12を一体に備えてもよい。
The input
媒体リーダ106は、記録媒体13に記録されたプログラムやデータを読み取る装置である。記録媒体13として、例えば、フレキシブルディスク(FD:Flexible Disk)やHDDなどの磁気ディスク、CD(Compact Disc)やDVD(Digital Versatile Disc)などの光ディスク、光磁気ディスク(MO:Magneto-Optical disk)を使用できる。また、記録媒体13として、例えば、フラッシュメモリカードなどの不揮発性の半導体メモリを使用することもできる。媒体リーダ106は、例えば、プロセッサ101からの命令に従って、記録媒体13から読み取ったプログラムやデータをRAM102またはHDD103に格納する。
The
通信インタフェース107は、ネットワーク10を介して、PC200,200a,200b,200c,200dと通信を行う。通信インタフェース107は、有線通信インタフェースでもよいし、無線通信インタフェースでもよい。
The
なお、PC200,200a,200b,200c,200dも管理サーバ100と同様のハードウェアにより実現できる。
図4は、管理サーバの機能例を示す図である。管理サーバ100は、記憶部110、収集部120、差分抽出部130、分析部140および不要レジストリ判定部150を有する。記憶部110は、例えば、RAM102またはHDD103に確保した記憶領域として実現できる。収集部120、差分抽出部130、分析部140および不要レジストリ判定部150は、例えば、プロセッサ101が実行するプログラムのモジュールとして実現できる。
The
FIG. 4 is a diagram illustrating an example of functions of the management server. The
記憶部110は、レジストリ管理テーブル、ソフトウェア管理テーブル、フォルダ管理テーブル、対応管理テーブルおよび収集時刻テーブルを記憶する。レジストリ管理テーブルは、各PCから収集したレジストリ情報の管理に用いられるテーブルである。ソフトウェア管理テーブルは、各PCから収集したソフトウェア一覧の管理に用いられるテーブルである。フォルダ管理テーブルは、各PCから収集したフォルダ情報の管理に用いられるテーブルである。フォルダ情報は、各PCから収集されるファイル情報(ファイルのパスを含む)から取得することもできる(すなわち、フォルダ情報はファイル情報の一例と考えることができる)。対応管理テーブルは、PCが有するソフトウェアまたはフォルダとレジストリとの対応関係の管理に用いられるテーブルである。収集時刻テーブルは、各PCからレジストリ情報、ソフトウェア一覧、フォルダ情報を収集した時刻の管理に用いられるテーブルである。
The
ここで、レジストリ情報は、各PCで動作するOSに関する基本情報やアプリケーションソフトウェアの設定情報などを含む。ソフトウェア一覧は、各PCのOSによって管理される登録済みのソフトウェア(以下の説明において、登録ソフトウェアと称することがある)の一覧である。ソフトウェア一覧は、OSによって管理されない未登録のソフトウェア(以下の説明において、未登録ソフトウェアと称することがある)を含まない。 Here, the registry information includes basic information related to the OS running on each PC, application software setting information, and the like. The software list is a list of registered software (sometimes referred to as registered software in the following description) managed by the OS of each PC. The software list does not include unregistered software (sometimes referred to as unregistered software in the following description) that is not managed by the OS.
あるソフトウェアがOSのソフトウェア一覧に登録されるか否かは、当該ソフトウェアのインストール時の動作によって決まる。例えば、ソフトウェアのインストーラが、OSにより管理されるソフトウェア一覧の情報に自ソフトウェアのソフトウェア名を登録すれば、当該ソフトウェア名がOSのソフトウェア一覧に登録される。一方、ソフトウェアのインストーラが、OSにより管理されるソフトウェア一覧の情報に自ソフトウェアのソフトウェア名を登録しなければ、当該ソフトウェア名はOSのソフトウェア一覧には登録されない。 Whether or not certain software is registered in the software list of the OS depends on the operation at the time of installation of the software. For example, if the software installer registers the software name of its own software in the software list information managed by the OS, the software name is registered in the OS software list. On the other hand, if the software installer does not register the software name of its own software in the software list information managed by the OS, the software name is not registered in the OS software list.
また、記憶部110は、収集部120が各PCからレジストリ情報、ソフトウェア一覧およびフォルダ情報を収集するスケジュールの情報を記憶する。例えば、収集のスケジュールは、1日1回(例えば、1日のうちのある時刻)など、スケジュールの情報によって予め定められる。
The
収集部120は、各PCからレジストリ情報、ソフトウェア一覧およびフォルダ情報を定期的に収集する。収集処理をポーリングと称することがある。収集部120は、収集した各情報をレジストリ管理テーブル、ソフトウェア管理テーブル、フォルダ管理テーブルに登録する。また、収集部120は、各PCから各情報を収集した時刻を収集時刻テーブルに登録する。
The
差分抽出部130は、今回収集したレジストリ情報、ソフトウェア一覧およびフォルダ情報と前回収集したレジストリ情報、ソフトウェア一覧およびフォルダ情報との差分を抽出する。具体的には、差分抽出部130は、前回収集した情報の中には含まれないが、今回収集した情報の中には含まれるレジストリ、登録ソフトウェアおよびフォルダを、レジストリ、登録ソフトウェアおよびフォルダの増加分として抽出する。
The
分析部140は、レジストリと登録ソフトウェアとの対応付けを行い、記憶部110に記憶された対応管理テーブルを更新する。具体的には、分析部140は、レジストリ情報の増加分とソフトウェア一覧の増加分に基づいて、登録ソフトウェアに対応するレジストリを特定する。分析部140は、登録ソフトウェアとレジストリとの対応関係を対応管理テーブルに登録する。
The
分析部140は、何れの登録ソフトウェアにも対応付けられなかったレジストリ情報のうち、PC間で共通するレジストリ群(未対応のレジストリ群)を特定する。ここで、レジストリ群は、第1の実施の形態のOS管理情報の項目群の一例である。そして、分析部140は、特定された当該レジストリを、未登録ソフトウェアに対応付ける。まず、分析部140は、各PCのフォルダ情報の増加分に基づいて、未登録ソフトウェアに対応するフォルダ群を特定する。
The
具体的には、分析部140は、あるタイミングで収集したフォルダ情報の増分のうち、何れの登録ソフトウェアにも対応付けられなかったレジストリ情報をもつPCのみで共通するフォルダを未登録ソフトウェアに対応するフォルダ群と特定する。なお、何れの登録ソフトウェアにも対応付けられなかったレジストリ情報をもつPCを、未登録ソフトウェアをもつPCと考えることができる。分析部140は、特定したフォルダ群と未対応のレジストリ群との対応関係を、対応管理テーブルに登録する。特定したフォルダ群は未登録ソフトウェアに対応するものなので、未登録ソフトウェアと未対応のレジストリ群とが、対応管理テーブル上で関連付けられることになる。
Specifically, the
不要レジストリ判定部150は、記憶部110に記憶された対応管理テーブルに基づいて、不要レジストリの判定を行う。具体的には、不要レジストリ判定部150は、対応管理テーブルに登録された情報から、あるPCにおいて、ソフトウェア一覧になく、かつ、対応するフォルダも存在しないが、レジストリのみが残っているソフトウェア(未検出ソフトウェアと称することがある)を特定する。未検出ソフトウェアは、既にアンインストールされたソフトウェアであるが、削除漏れなどにより、対応するレジストリのみが残っているソフトウェアである。当該レジストリが残っていると、他のソフトウェアの動作に影響を与える可能性があるため、不要レジストリ判定部150は、当該レジストリが残っているPCに不要レジストリの削除指示を行う。削除指示を受けたPCは、指示された不要レジストリを削除する。
The unnecessary
図5は、レジストリの例を示す図である。レジストリ20は、キーおよび値を含む。値は、データ名およびデータを含む。キーは、ツリー構造により値の格納場所を指定する情報である。値に含まれるデータ名は、レジストリに登録されたデータの名称(例えば、“DM Group”など)である。値に含まれるデータは、データの設定値(例えば、“5”など)である。データの設定値として、データ名“DM FullPath Name”のようにファイル名“C:\Sw\mpw.dm”が設定されることもある。なお、当該ファイル名はフルパスで指定されており、“C:\Sw\”の部分(パス部分)は、当該ファイルを格納しているフォルダを示している。
FIG. 5 is a diagram illustrating an example of a registry.
図6は、ポーリングの例を示す図である。図6では、収集部120が定期的にPC200からレジストリ情報31およびソフトウェア一覧32を収集する例を示している。例えば、収集部120は、スケジュールされた時刻T1,T2,T3にPC200からレジストリ情報31およびソフトウェア一覧32を収集する(ポーリング)。なお、図示を省略しているが、収集部120は、時刻T1,T2,T3においてPC200からフォルダ情報も収集する。ポーリングの時刻によって、収集される情報は異なる。時間の経過とともに、PC200に対してソフトウェアがインストールされたりアンインストールされたりするからである。
FIG. 6 is a diagram illustrating an example of polling. FIG. 6 shows an example in which the
例えば、時刻T2に収集されたレジストリ情報31には、ソフトウェアA,B,C,Dに関するレジストリが含まれる。時刻T2に収集されたソフトウェア一覧32には、ソフトウェアA,Bが含まれる。なお、ソフトウェアDは未登録ソフトウェアである。このため、時刻T2に収集されたソフトウェア一覧32にはソフトウェアDが含まれない。また、時刻T2に収集されたソフトウェア一覧32にはソフトウェアCが含まれない。時刻T2の時点でアンインストールされているためである。また、時刻T2に収集されたレジストリ情報31にソフトウェアCのレジストリが含まれるのは、ソフトウェアCのアンインストール時に、ソフトウェアCのレジストリが削除されずに残ったためである。
For example, the
なお、図6では、説明を分かりやすくするため、便宜的に“ソフトウェアAに関するレジストリ”などとレジストリをソフトウェア名でラベルしている。しかし、収集部120がレジストリ情報31およびソフトウェア一覧32を収集した時点では、管理サーバ100は、ソフトウェアとレジストリとの対応関係を把握していない。
In FIG. 6, for convenience of explanation, the registry is labeled with a software name such as “registry for software A” for convenience. However, when the
図7は、レジストリ管理テーブルの例を示す図である。レジストリ管理テーブル111,111aは、記憶部110に格納される。レジストリ管理テーブル111は、今回(今回のポーリング時に)収集されたレジストリ情報である。レジストリ管理テーブル111aは、前回(前回のポーリング時に)収集されたレジストリ情報である。記憶部110は、レジストリ管理テーブル111,111aにより、少なくとも最新の2回分のレジストリ情報を記憶する。以下では、レジストリ管理テーブル111に登録される情報を例示するが、レジストリ管理テーブル111aにも同様の情報が登録される。
FIG. 7 is a diagram illustrating an example of a registry management table. The registry management tables 111 and 111a are stored in the
レジストリ管理テーブル111は、マシンID(IDentifier)およびレジストリの項目を含む。マシンIDの項目には、PCの識別情報(マシンID)が登録される。レジストリの項目には、レジストリのキーおよび値を示す情報が登録される。 The registry management table 111 includes machine ID (IDentifier) and registry items. PC identification information (machine ID) is registered in the machine ID item. In the registry item, information indicating a registry key and value is registered.
例えば、レジストリ管理テーブル111には、マシンIDが“PC1”およびレジストリが“RG11”という情報が登録される。これは、PC200(マシンID“PC1”)から今回収集されたレジストリ情報に、レジストリ“RG11”が含まれていることを示す。レジストリ管理テーブル111には、PC200のレジストリ情報に含まれる複数のレジストリが登録される。
For example, information that the machine ID is “PC1” and the registry is “RG11” is registered in the registry management table 111. This indicates that the registry “RG11” is included in the registry information collected this time from the PC 200 (machine ID “PC1”). A plurality of registries included in the registry information of the
また、レジストリ管理テーブル111には、PC200a,200b,200c,200dから収集されたレジストリ情報も同様に登録される。マシンID“PC2”は、PC200aのマシンIDである。マシンID“PC3”は、PC200bのマシンIDである。マシンID“PC4”は、PC200cのマシンIDである。マシンID“PC5”は、PC200dのマシンIDである。
Also, registry information collected from the
図8は、ソフトウェア管理テーブルの例を示す図である。ソフトウェア管理テーブル112,112aは、記憶部110に格納される。ソフトウェア管理テーブル112は、今回収集されたソフトウェア一覧である。ソフトウェア管理テーブル112aは、前回収集されたソフトウェア一覧である。記憶部110は、ソフトウェア管理テーブル112,112aにより、少なくとも最新の2回分のソフトウェア一覧を記憶する。以下では、ソフトウェア管理テーブル112に登録される情報を例示するが、ソフトウェア管理テーブル112aにも同様の情報が登録される。
FIG. 8 is a diagram illustrating an example of a software management table. The software management tables 112 and 112a are stored in the
ソフトウェア管理テーブル112は、マシンIDおよびソフトウェア名の項目を含む。マシンIDの項目には、マシンIDが登録される。ソフトウェア名の項目には、ソフトウェア名が登録される。 The software management table 112 includes items of machine ID and software name. The machine ID is registered in the machine ID item. The software name is registered in the software name item.
例えば、ソフトウェア管理テーブル112には、マシンIDが“PC1”およびソフトウェア名が“SW11”という情報が登録される。これは、PC200(マシンID“PC1”)から今回収集されたソフトウェア一覧には、ソフトウェア名“SW11”のソフトウェアが含まれていることを示す。ソフトウェア管理テーブル112には、PC200のソフトウェア一覧に含まれる複数のソフトウェアが登録される。ソフトウェア管理テーブル112には、PC200a,200b,200c,200dから収集されたソフトウェア一覧も同様に登録される。
For example, information that the machine ID is “PC1” and the software name is “SW11” is registered in the software management table 112. This indicates that the software list collected this time from the PC 200 (machine ID “PC1”) includes software with the software name “SW11”. A plurality of software included in the software list of the
図9は、フォルダ管理テーブルの例を示す図である。フォルダ管理テーブル113,113aは、記憶部110に格納される。フォルダ管理テーブル113は、今回収集されたフォルダ情報である。フォルダ管理テーブル113aは、前回収集されたフォルダ情報である。記憶部110は、フォルダ管理テーブル113,113aにより少なくとも最新の2回分のフォルダ情報を記憶する。以下では、フォルダ管理テーブル113に登録される情報を例示するが、フォルダ管理テーブル113aにも同様の情報が登録される。
FIG. 9 is a diagram illustrating an example of a folder management table. The folder management tables 113 and 113a are stored in the
フォルダ管理テーブル113は、マシンID、フォルダ名および作成時刻の項目を含む。マシンIDの項目には、マシンIDが登録される。フォルダ名の項目には、フォルダ名が登録される。フォルダ名は、フルパスの情報を含む。作成時刻の項目には、フォルダが作成された時刻が登録される。 The folder management table 113 includes items of machine ID, folder name, and creation time. The machine ID is registered in the machine ID item. The folder name is registered in the folder name item. The folder name includes full path information. The time when the folder was created is registered in the creation time item.
例えば、フォルダ管理テーブル113には、マシンIDが“PC1”、フォルダ名が“FD11”および作成時刻が“Tc11”という情報が登録される。これは、PC200(マシンID“PC1”)から今回収集されたフォルダ情報には、フォルダ名“FD11”のフォルダが含まれていることを示す。また、フォルダ名“FD11”のフォルダがPC200において作成された時刻が“Tc11”であることを示す。フォルダ管理テーブル113には、PC200のフォルダ情報に含まれる複数のフォルダが登録される。フォルダ管理テーブル113には、PC200a,200b,200c,200dから収集されたフォルダ情報も同様に登録される。
For example, information that the machine ID is “PC1”, the folder name is “FD11”, and the creation time is “Tc11” is registered in the folder management table 113. This indicates that the folder information collected this time from the PC 200 (machine ID “PC1”) includes a folder with the folder name “FD11”. In addition, the time when the folder with the folder name “FD11” is created in the
図10は、対応管理テーブルの例を示す図である。対応管理テーブル114は、記憶部110に格納される。対応管理テーブル114は、レジストリ、ソフトウェア名およびフォルダ名の項目を含む。
FIG. 10 is a diagram illustrating an example of the correspondence management table. The correspondence management table 114 is stored in the
レジストリの項目には、レジストリのキーおよび値を示す情報が登録される。レジストリの項目には複数のレジストリ(レジストリ群)が登録され得る。ソフトウェア名の項目には、ソフトウェア名が登録される。フォルダ名の項目には、フォルダ名が登録される。フォルダ名の項目には複数のフォルダ群が登録され得る。ただし、ソフトウェア名およびフォルダ名の項目には、何れか一方に情報が登録される。例えば、ソフトウェア名が登録される場合、フォルダ名は設定なし“−”(ハイフン)となる。また、フォルダ名が登録される場合、ソフトウェア名は設定なし“−”となる。 In the registry item, information indicating a registry key and value is registered. A plurality of registries (registries) can be registered in the registry item. The software name is registered in the software name item. The folder name is registered in the folder name item. A plurality of folder groups can be registered in the folder name item. However, information is registered in either of the software name and folder name items. For example, when the software name is registered, the folder name is “−” (hyphen) without setting. When the folder name is registered, the software name is “−” without setting.
例えば、対応管理テーブル114には、レジストリが“RG11,・・・”、ソフトウェア名が“SW11”、フォルダ名が“−”という情報が登録される。これは、レジストリ群“RG11,・・・”がソフトウェア名“SW11”の登録ソフトウェアに対応することを示す。 For example, information corresponding to the registry “RG11,...”, The software name “SW11”, and the folder name “−” is registered in the correspondence management table 114. This indicates that the registry group “RG11,...” Corresponds to the registered software having the software name “SW11”.
また、対応管理テーブル114には、レジストリが“RG12,・・・”、ソフトウェア名が“−”、フォルダ名が“FD11,・・・”という情報が登録される。これは、レジストリ群“RG12,・・・”がフォルダ名“FD11,・・・”のフォルダ群に対応することを示す。 In the correspondence management table 114, information that the registry is “RG12,...”, The software name is “−”, and the folder name is “FD11,. This indicates that the registry group “RG12,...” Corresponds to the folder group with the folder name “FD11,.
図11は、収集時刻テーブルの例を示す図である。収集時刻テーブル115は、記憶部110に格納される。収集時刻テーブル115は、マシンIDおよび収集時刻の項目を含む。マシンIDの項目には、マシンIDが登録される。収集時刻の項目には、各PCに対してポーリングを行った時刻が登録される。
FIG. 11 is a diagram illustrating an example of a collection time table. The collection time table 115 is stored in the
例えば、収集時刻テーブル115には、マシンIDが“PC1”、収集時刻が“Tp1”という情報が登録される。これは、PC200に対して時刻“Tp1”にポーリングを行ったことを示す。
For example, information that the machine ID is “PC1” and the collection time is “Tp1” is registered in the collection time table 115. This indicates that the
次に、管理サーバ100により実行される処理手順を説明する。
図12は、管理サーバのデータ収集例を示すフローチャートである。以下、図12に示す処理をステップ番号に沿って説明する。
Next, a processing procedure executed by the
FIG. 12 is a flowchart illustrating an example of data collection by the management server. In the following, the process illustrated in FIG. 12 will be described in order of step number.
(S11)収集部120は、スケジュールされた時刻に達すると、PC200,200a,200b,200c,200dからデータ収集を行う(ポーリング)。収集されるデータには、レジストリ情報、ソフトウェア一覧およびフォルダ情報が含まれる。
(S11) When the scheduled time reaches the scheduled time, the
(S12)収集部120は、収集したレジストリ情報を、収集元PCのマシンIDに対応付けてレジストリ管理テーブル111に登録する。収集部120は、収集したソフトウェア一覧を、収集元PCのマシンIDに対応付けてソフトウェア管理テーブル112に登録する。収集部120は、収集したフォルダ情報を、収集元PCのマシンIDに対応付けてフォルダ管理テーブル113に登録する。収集部120は、ポーリングを行った時刻を、ポーリング対象としたPCのマシンIDに対応付けて収集時刻テーブル115に登録する。
(S12) The
(S13)差分抽出部130は、レジストリ情報、ソフトウェア一覧およびフォルダ情報について、今回のポーリング時と前回のポーリング時との差分をマシンID毎に抽出する。例えば、差分抽出部130は、レジストリ管理テーブル111,111aを比較して、レジストリ情報の差分をマシンID毎に抽出する。差分抽出部130は、ソフトウェア管理テーブル112,112aを比較して、ソフトウェア名の差分をマシンID毎に抽出する。差分抽出部130は、フォルダ管理テーブル113,113aを比較してフォルダ情報の差分をマシンID毎に抽出する。これにより、差分抽出部130は、前回ポーリング時からのレジストリ情報、ソフトウェア一覧およびフォルダ情報の増加分を取得する。
(S13) The
(S14)分析部140は、ステップS13で抽出した各情報の増加分に基づいて、登録ソフトウェアとレジストリとの対応関係を決定する。また、分析部140は、登録ソフトウェアに対応付けられなかったレジストリと未登録ソフトウェアとの対応関係を決定する。分析部140は、決定結果により対応管理テーブル114を更新する。詳細は後述される。
(S14) The
(S15)収集部120は、次回ポーリング時刻まで待機する。例えば、ポーリングの周期は、1日1回程度(24時間周期)である。ただし、12時間周期や48時間周期など、他の周期でもよい。そして、処理をステップS11に進める。
(S15) The
図13は、対応管理テーブルの更新例を示すフローチャートである。以下、図13に示す処理をステップ番号に沿って説明する。以下の手順はステップS14に相当する。
(S21)分析部140は、レジストリとソフトウェアまたはフォルダとの対応関係の情報を対応管理テーブル114から読み出す。
FIG. 13 is a flowchart illustrating an example of updating the correspondence management table. In the following, the process illustrated in FIG. 13 will be described in order of step number. The following procedure corresponds to step S14.
(S21) The
(S22)分析部140は、ステップS13で抽出したソフトウェア一覧の増加分の中から複数のPCで共通するソフトウェアを特定する。分析部140は、複数のPCのソフトウェア一覧の増加分に含まれるソフトウェア名を特定することで、複数のPCで共通するソフトウェアを特定できる。
(S22) The
(S23)分析部140は、ステップS22で特定した共通のソフトウェアを有する複数のPCについて、ステップS13で抽出したレジストリ情報の増加分の中からレジストリの共通部分(キーおよび値がPC間で共通するレジストリ群)を検出する。レジストリの共通部分の検出は、共通のソフトウェアを有する各PCのレジストリ情報(レジストリの集合)に対するAND演算を行う処理ということもできる。このとき、例えば、共通するキーおよび値をもつレジストリが特定のツリーの配下すべてに該当する場合は、これらレジストリのすべてをそれぞれ指定するのではなく、それらのレジストリが属するツリーの上位キーを特定することにより、共通するレジストリ群を特定してもよい。この場合、該当の上位キーを指定することで、上位キーの配下の複数のレジストリを範囲指定できる。例えば、キーAの配下に、キーA1,A2,A3が存在する場合、キーAを指定することで、キーA1,A2,A3を範囲指定できる。
(S23) The
(S24)分析部140は、登録ソフトウェアとレジストリとの対応関係を決定する。すなわち、分析部140は、ステップS22で特定した登録ソフトウェアとステップS23で検出したレジストリ群とを対応付ける。また、分析部140は、対応関係の決定結果に基づいて、対応管理テーブル114に既登録の関係を見直す。例えば、既にある登録ソフトウェアに対応付けられているレジストリ群の一部が、別の登録ソフトウェアに対応付けられるものであることが新たな対応付けの結果によって判明することもある。その場合、分析部140は、既登録のレジストリ群の当該一部を、別の登録ソフトウェアへ対応付け、当該一部と既存の登録ソフトウェアとの対応付けを解除する。
(S24) The
(S25)分析部140は、ステップS13で抽出したレジストリ情報の増加分のうち、何れのソフトウェアとも対応付いていないレジストリについて、PC間でレジストリの共通部分(共通の未対応レジストリ)を検出する。ここで検出された未対応レジストリは、各PCのソフトウェア一覧に登録されていない未登録ソフトウェアに対応するレジストリと考えることができる。
(S25) The
(S26)分析部140は、収集時刻テーブル115のマシンIDおよび収集時刻と、フォルダ管理テーブル113のマシンID、フォルダ名および作成時刻を参照し、各PCのインストール途中のフォルダを特定する。あるソフトウェアがインストール途中であり未完全なフォルダ群(あるソフトウェアに対して未だ一部しか作成されていないフォルダ群)を、対応関係の決定処理から除外するためである。具体的には、分析部140は、今回のポーリング時刻以前の一定期間内に作成されたフォルダをインストール途中のソフトウェアのフォルダと特定する。例えば、一定期間は、ポーリング時刻から30分前の時刻からポーリング時刻までの期間とするなど、ソフトウェアのインストールに要する時間に応じて予め定められる。
(S26) The
(S27)分析部140は、ステップS13で抽出したフォルダ情報の増加分のうち、共通の未対応レジストリを有するPC間のみで共通するフォルダ群を検出する。共通するフォルダ群の検出は、共通の未対応レジストリを有する各PCのフォルダ情報(フォルダの集合)に対するAND演算を行う処理ということもできる。ただし、ステップS26での特定結果に応じて、何れかのPCにおいて着目するフォルダの作成時刻がポーリング時刻に近い場合(例えば、前述のようにポーリング時刻以前の30分以内)は、当該PCを除外したPC間において、共通するフォルダ群を検出する。分析部140は、ステップS26の結果により、ある共通するフォルダ群の検出に用いるPCを選択しているということもできる。
(S27) The
(S28)分析部140は、ステップS27で検出したフォルダ群と未対応レジストリとの対応関係を決定する。すなわち、分析部140は、ステップS27で検出したフォルダ群とステップS25で検出した共通の未対応レジストリとを対応付ける。また、分析部140は、対応関係の決定結果に基づいて、対応管理テーブル114に既登録の関係を見直す。例えば、既にあるフォルダ群に対応付けられているレジストリ群の一部が、別のフォルダ群に対応付けられるものであることが新たな対応付けの結果によって判明することもある。その場合、分析部140は、既登録のレジストリ群の当該一部を、別のフォルダ群へ対応付け、当該一部と既存のフォルダ群との対応付けを解除する。
(S28) The
(S29)分析部140は、ステップS24,S28で決定した対応関係を対応管理テーブル114に登録する。
なお、複数のPCに対し、あるソフトウェアの異なるバージョンのものがインストールされることもある。そこで、ステップS22で複数のPCで共通するソフトウェアを特定する際、分析部140は、バージョン番号のみが異なるものを同じソフトウェアとみなしてよい。また、ソフトウェア名をテキストマッチングする際に、マッチングの類似度が比較的高ければ同一とみなしてよい。
(S29) The
Different versions of certain software may be installed on a plurality of PCs. Therefore, when identifying software that is common to a plurality of PCs in step S22, the
また、レジストリに関しても、インストール時の設定などにより、同じソフトウェアであってもPCによってはキー名が異なることもある。このため、ステップS23,S25におけるレジストリの共通部分の取得でも、レジストリのツリー構造のマッチングにより、キー名が異なっても下位のデータ名が類似していれば同じとみなしてよい。 As for the registry, the key name may differ depending on the PC even if the software is the same due to the setting at the time of installation. For this reason, even if the common part of the registry is acquired in steps S23 and S25, it can be considered that the key names are different and the lower data names are similar by matching the tree structure of the registry.
更に、ステップS27において、共通するフォルダ群を検出する際、絶対パスが完全一致していなくてもよい(通常、インストール先として指定されるパスは可変であるため)。例えば、フォルダ内部の構造(フォルダのツリー構造やファイル内容)の類似度が高ければ同じソフトウェアに対応するフォルダとみなしてよい。このように、分析部140は、ソフトウェア名、レジストリ、フォルダのマッチングを行う際に、これらが完全一致するとは限らないことを考慮して揺らぎを許容する。第2の実施の形態の例では、フォルダについてPC間で共通部分を取得するものとしたが、分析部140は、ファイルについてPC間で共通部分を取得して未登録ソフトウェアとの対応付けを行ってもよい。その場合も、分析部140は、フォルダと同様に(ステップS26と同様に)作成時刻によって対応付け対象のファイルを絞り込んでもよい。
Furthermore, in step S27, when detecting a common folder group, the absolute paths do not have to completely match (usually, the path specified as the installation destination is variable). For example, if the similarity of the folder internal structure (folder tree structure and file contents) is high, the folders may be regarded as folders corresponding to the same software. As described above, the
ここで、ステップS24において、分析部140は、登録ソフトウェアとレジストリとの既登録の対応関係に対し、更に見直しを図ることもできる。例えば、分析部140は、ある登録ソフトウェアについて、対応管理テーブル114に既登録の対応関係と今回の対応関係の決定結果とを比較し、両者が異なるとき、今回の対応関係の決定結果により既存の対応関係を更新してもよい。より具体的には、分析部140は、今回の対応関係に含まれるレジストリ群と既存の対応関係に含まれるレジストリ群との重複部分を当該登録ソフトウェアに対応付けてもよい。登録ソフトウェアに対応付けられるレジストリ群を絞り込むことで、対応付けの精度を向上できるからである。
Here, in step S24, the
同様に、ステップS28において、分析部140は、フォルダ群とレジストリとの既登録の対応関係に対し、更に見直しを図ることもできる。例えば、分析部140は、あるフォルダ群について、対応管理テーブル114に既登録の対応関係と今回の対応関係の決定結果とを比較し、両者が異なるとき、今回の対応関係の決定結果により既存の対応関係を更新してもよい。より具体的には、分析部140は、今回の対応関係に含まれるレジストリ群と既存の対応関係に含まれるレジストリ群との重複部分を当該フォルダ群に対応付けてもよい。当該フォルダ群に対応付けられるレジストリ群を絞り込むことで、対応付けの精度を向上できるからである。
Similarly, in step S28, the
図14は、ポーリングにより収集される情報の具体例を示す図である。図14では、PC200に対する時刻T11,T12における2回のポーリングを例示している。なお、図6と同様に、説明の便宜上、レジストリに対して“ソフトウェアAに関するレジストリ”などとソフトウェア名“ソフトウェアA”をラベリングしている。レジストリ情報の収集時点において、管理サーバ100は各レジストリが何れのソフトウェアに対応するものかを把握しているわけではない。
FIG. 14 is a diagram illustrating a specific example of information collected by polling. FIG. 14 illustrates two polls for the
収集部120は、ポーリングにより、レジストリ情報33およびソフトウェア一覧34をPC200から取得する。収集部120は、ポーリングにより、フォルダ情報もPC200から取得する。差分抽出部130は、時刻T11と時刻T12においてポーリングにより収集された情報の差分を抽出することで、時刻T11から時刻T12の間にPC200に追加された登録ソフトウェア、レジストリおよびフォルダを得る。
The
分析部140は、時刻T11,T12それぞれで取得したレジストリのキーおよび値をマッチングする。図13で説明したように、マッチングにはキー構造の類似度や下位のデータの類似度が考慮される。時刻T11で取得したレジストリ情報33には含まれないが、時刻T12で取得したレジストリ情報33に含まれるレジストリが時刻T11から時刻T12の間にPC200に追加されたレジストリである。図14の例では、時刻T11の時点ではPC200のレジストリ情報33に、ソフトウェアA,B,C,D,Eのレジストリは存在していない。一方、時刻T12の時点では、PC200のレジストリ情報33に、ソフトウェアA,B,C,D,Eのレジストリは存在している。よって、時刻T12の時点のレジストリ情報の増加分は、ソフトウェアA,B,C,D,Eのレジストリ情報である(ただし、分析部140は、この時点ではソフトウェアA,B,C,D,Eとの対応関係を把握しているわけではない)。
The
分析部140は、時刻T11,T12それぞれで取得したソフトウェア一覧34のソフトウェア名をテキストマッチングする。図13で説明したように、マッチングにはバージョンの相違やテキストの類似度を考慮する。図14の例では、時刻T11の時点では、PC200のソフトウェア一覧34に、ソフトウェアA,B,Cのソフトウェア名は存在していない。一方、時刻T12の時点では、PC200のソフトウェア一覧34に、ソフトウェアA,Bのソフトウェア名が存在している。よって、時刻T12の時点のソフトウェア一覧の増加分はソフトウェアA,Bのソフトウェア名である。
The
ソフトウェアCは、時刻T11の後、PC200にインストールされたが、時刻T12の前に、PC200からアンインストールされたため、時刻T12で収集されたPC200のソフトウェア一覧34には含まれない。また、ソフトウェアD,Eは、時刻T12で収集されたPC200のソフトウェア一覧34には含まれない未登録ソフトウェアである。
The software C was installed on the
分析部140は、同様にして、時刻T11から時刻T12の間にPC200に追加されたフォルダ情報も取得する。
図15は、登録ソフトウェアとレジストリとの対応付けの具体例を示す図である。図15は、時刻T12に収集部120がPC200,200a,200b,200c,200dから収集したソフトウェア一覧およびレジストリ情報について、時刻T11での収集結果からの増加分の例を示している。“検出ソフト(増加分)”で示される行は、PC200,200a,200b,200c,200dから収集したソフトウェア一覧の増加分を示す。“レジストリ情報(増加分)”で示される行は、PC200,200a,200b,200c,200dから収集したレジストリ情報の増加分を示す。
Similarly, the
FIG. 15 is a diagram illustrating a specific example of association between registered software and a registry. FIG. 15 shows an example of an increase from the collection result at time T11 for the software list and registry information collected by the
例えば、差分抽出部130は、PC200に対してソフトウェアA,Bのソフトウェア名の増加を検出する。差分抽出部130は、PC200aに対してソフトウェアA,Xのソフトウェア名の増加を検出する。差分抽出部130は、PC200bに対してソフトウェアC,Xのソフトウェア名の増加を検出する。差分抽出部130は、PC200cに対してソフトウェアCのソフトウェア名の増加を検出する。差分抽出部130は、PC200dに対してソフトウェアBのソフトウェア名の増加を検出する。ソフトウェアA,B,C,D,Xは、何れもソフトウェア一覧に登録されている登録ソフトウェアである。
For example, the
分析部140は、各PCのソフトウェア一覧の増加分の中からソフトウェアAのみが共通するPC200,200aを特定する。分析部140は、PC200,200aから収集したレジストリ情報の増加分の中から共通のレジストリ群R11を検出する。分析部140は、ソフトウェアAとレジストリ群R11とを対応付ける。
The
分析部140は、各PCのソフトウェア一覧の増加分の中からソフトウェアBのみが共通するPC200,200dを特定する。分析部140は、PC200,200dから収集したレジストリ情報の増加分の中から共通のレジストリ群R12,R14を検出する。分析部140は、ソフトウェアBとレジストリ群R12,R14とを対応付ける(ただし、後述するようにレジストリ群R14は、実際はソフトウェアCに対応付けられるべきである)。
The
分析部140は、検出ソフトウェアの増加分の中からソフトウェアCのみが共通するPC200b,200cを特定する。分析部140は、PC200b,200cから収集したレジストリ情報の増加分の中から共通のレジストリ群R14を検出する。分析部140は、ソフトウェアCとレジストリ群R14とを対応付ける。
The
分析部140は、検出ソフトウェアの増加分の中からソフトウェアXのみが共通するPC200a,200bを特定する。分析部140は、PC200a,200bから収集したレジストリ情報の増加分の中から共通のレジストリR13を検出する。分析部140は、ソフトウェアXとレジストリ群R13とを対応付ける。
The
分析部140は、ここまでで対応付けたソフトウェアとレジストリとの対応関係を見直す。例えば、あるソフトウェアとレジストリ群との対応関係に対し、当該レジストリ群が他のソフトウェアに対応付けられた他のレジストリ群を含む場合は、対応付けを修正する。より具体的には、レジストリ群R14は、PC200b,200cに対する分析によって、ソフトウェアCに対応付けられている。更に、レジストリ群R12,R14は、PC200,200dに対する分析によって、ソフトウェアBに対応付けられている。すなわち、ソフトウェアBに対応付けられたレジストリ群R12,R14は、ソフトウェアCに対応付けられたレジストリ群R14を含む。よって、分析部140は、ソフトウェアBとレジストリ群R12,R14との対応関係を修正し、ソフトウェアBをレジストリ群R12に対応付けしなおす(ソフトウェアCとレジストリ群R14との対応関係を維持する)。
The
こうして、各PCにおけるレジストリ情報の増加分のうちの一部が、ソフトウェアA,B,C,Xに対応付けられる。このとき、PC200には、レジストリ情報の増加分のうち、何れのソフトウェアとも対応付けられていない未対応のレジストリ群RAが存在する。PC200cには、レジストリ情報の増加分のうち、何れのソフトウェアとも対応付けられていない未対応のレジストリ群RBが存在する。PC200dには、レジストリ情報の増加分のうち、何れのソフトウェアとも対応付けられていない未対応のレジストリ群RCが存在する。PC200a,200bには、未対応のレジストリ群は存在していない。
In this way, a part of the increase in registry information in each PC is associated with software A, B, C, and X. At this time, the
図16は、フォルダ群とレジストリ群との対応付けの具体例を示す図である。ここで、分析部140は、レジストリ情報と同様に、各PCにおけるフォルダ情報の増加分のうち、ソフトウェアA,B,C,Xに対応するフォルダ群を検出できる。具体的には、PC200,200aで共通する部分は、ソフトウェアAに対応するフォルダ群である。また、PC200,200dで共通する部分は、ソフトウェアBに対応するフォルダ群である。PC200b,200cで共通する部分は、ソフトウェアCに対応するフォルダ群である。PC200a,200bで共通する部分は、ソフトウェアXに対応するフォルダ群である。
FIG. 16 is a diagram illustrating a specific example of association between a folder group and a registry group. Here, the
図16では、“フォルダ情報(増加分)”の行に、各PCにおけるフォルダ情報の増加分を例示しているが、ソフトウェアA,B,C,Xに対応するフォルダ群については、対応付けの対象外とする(図16のフォルダ情報の増加分には含まれていない)。これらのフォルダ群は、登録ソフトウェアのフォルダ群であり、登録ソフトウェアは、図15の処理によって、既にレジストリ群との対応付けが済んでいるからである。なお、収集部120が各PCから収集する登録ソフト情報に、登録ソフトウェアと登録ソフトウェアのインストールフォルダとの情報が含まれることも考えられる。その場合、分析部140は、登録ソフト情報から、例えばソフトウェアA,B,C,Xに対応するフォルダ群を検出してもよい。
In FIG. 16, the “folder information (increase)” line illustrates the increase in the folder information in each PC, but the folder groups corresponding to the software A, B, C, and X are associated with each other. It is excluded (not included in the increase in folder information in FIG. 16). This is because these folder groups are registered software folder groups, and the registered software has already been associated with the registry groups by the processing of FIG. Note that the registered software information collected from each PC by the
更に、分析部140は、フォルダ管理テーブル113の作成時刻と収集時刻テーブル115の収集時刻とを参照し、各PCにおいて作成時刻から収集時刻までが所定期間内のフォルダ群も対応付けの対象外とする(図16のフォルダ情報の増加分には含まれていない)。
Furthermore, the
したがって、図16で示す“フォルダ情報(増加分)”に含まれるフォルダは、未登録ソフトウェアのインストールフォルダ、または、登録/未登録ソフトウェアとは無関係なフォルダである。登録/未登録ソフトウェアとは無関係なフォルダとして、例えば、ユーザが任意に作成したフォルダや、あるソフトウェアが自ソフトウェアのインストールフォルダとは異なるパスに作成したフォルダである。 Accordingly, the folder included in the “folder information (increase)” shown in FIG. 16 is an installation folder of unregistered software or a folder unrelated to registered / unregistered software. As a folder unrelated to registered / unregistered software, for example, a folder arbitrarily created by the user or a folder created by a certain software in a path different from the installation folder of the own software.
具体的には、分析部140は、上記の処理対象外のフォルダを除いて、PC200のフォルダ増加分としてフォルダ群F21を特定する。分析部140は、上記の処理対象外のフォルダを除くと、PC200aにはフォルダ増加分なしと特定する。分析部140は、同様にPC200bのフォルダ増加分としてフォルダ群F22を特定する。分析部140は、同様にPC200cのフォルダ増加分としてフォルダ群F23を特定する。分析部140は、同様にPC200dのフォルダ増加分としてフォルダ群F24を特定する。
Specifically, the
分析部140は、PC200,200b,200c,200dそれぞれのフォルダ群F21,F22,F23,F24について、未対応のレジストリ群の存在しないPC200bのフォルダ群F22と共通する部分P11を検出する。部分P11は、登録/未登録ソフトウェアとは無関係なフォルダと考えることができる。なぜなら、フォルダ群F22は登録ソフトウェアに対応するものではなく、かつ、PC200bには、未対応のレジストリ群が存在していない(未登録ソフトウェアが存在していない)からである。
The
分析部140は、フォルダ群F21,F23,F24(部分P11を除く)のうち、共通する部分P12を検出する。部分P12は、PC200,200c,200dで共通するフォルダ群である。また、前述の未対応のレジストリ群RA,RB,RCの共通部分P1も、PC200,200c,200dで共通するレジストリ群である。したがって、フォルダ群F21,F23,F24の共通部分P12は、未対応のレジストリ群RA,RB,RCの共通部分P1に対応するフォルダ群であると考えることができる。よって、分析部140は、フォルダ群F21,F23,F24の共通部分P12に相当するフォルダ群と、レジストリ群RA,RB,RCの共通部分P1に相当するレジストリ群とを対応付ける。通常、ソフトウェアは、インストール時に、自ソフトウェアを動作させるための情報をレジストリへ追加する。したがって、この場合、共通部分P12に相当するフォルダ群は、未登録ソフトウェア(例えば、図14のソフトウェアD)のインストール時に当該未登録ソフトウェアの情報を格納するために作成されたフォルダ(インストールフォルダ)であると考えることができる。例えば、このタイミングで、フォルダ群F24に含まれる全てのフォルダの、未登録ソフトウェアへの対応付けが完了する。
The
分析部140は、フォルダ群F21,F23(部分P11,P12を除く)のうち、共通する部分P13を検出する。部分P13は、PC200,200cで共通するフォルダ群である。また、前述の未対応のレジストリ群RA,RBの共通部分P2も、PC200,200cで共通するレジストリ群である。したがって、フォルダ群F21,F23の共通部分P13は、未対応のレジストリ群RA,RBの共通部分P2に対応するフォルダ群であると考えることができる。よって、分析部140は、フォルダ群F21,F23の共通部分P13に相当するフォルダ群と、レジストリ群RA,RBの共通部分P2に相当するレジストリ群とを対応付ける。部分P12の場合と同様に、共通部分P13に相当するフォルダ群は、未登録ソフトウェア(部分P12に対応する未登録ソフトウェアとは異なる未登録ソフトウェアであり、例えば図14のソフトウェアE)のインストールフォルダであると考えることができる。例えば、このタイミングで、フォルダ群F21に含まれる全てのフォルダの、未登録ソフトウェアへの対応付けが完了する。
The
PC200cでは、未対応のレジストリ群RBのうち、何れのフォルダ群とも対応付けられていない部分P3が存在する。PC200cでは、フォルダ群F23のうち、何れのレジストリ群とも対応付けられていない部分P14が存在する。分析部140は、部分P3に相当するレジストリ群と、部分P14に相当するフォルダ群とを対応付けてもよい。あるいは、分析部140は、次回以降のポーリングにより収集した情報に基づいて、レジストリ群RBのうち部分P3に対応付けるフォルダ群およびフォルダ群F23のうち部分P14に対応付けるレジストリ群を決定してもよい。
In the
分析部140は、こうして決定した登録ソフトウェア名とレジストリ群との対応関係を対応管理テーブル114に登録する。また、分析部140は、フォルダ群とレジストリ群との対応関係を対応管理テーブル114に登録する。ここでレジストリ群に対応付けられたフォルダ群は、未登録ソフトウェアのインストールフォルダであると考えられる。このため、フォルダ群とレジストリ群との対応関係は、未登録ソフトウェアとレジストリ群との対応関係といえる。
The
更に、分析部140は、次の方法によって、対応付けの対象外とするレジストリ群を決定してもよい。
図17は、対応付けの対象外とするPCの決定方法の例を示す図である。分析部140による登録ソフトウェアとレジストリ群との対応付けは、インストール処理が完了している登録ソフトウェアに対して行われることが好ましい。ポーリング時にインストール中である登録ソフトウェアが存在する場合、ソフトウェア一覧には登録ソフトウェアのソフトウェア名が存在するが、当該登録ソフトウェアに対応するレジストリ群は作成途中であるという状況があり得る。この場合に対応付けを行ってしまうと、登録ソフトウェアと作成途中の未完全なレジストリ群とが対応付けられてしまい、適切な対応関係を管理できなくなる。具体的には次の通りである。
Further, the
FIG. 17 is a diagram illustrating an example of a method for determining a PC to be excluded from association. The association between the registered software and the registry group by the
仮に、管理サーバ100が、あるタイミングのポーリングにより、PC200,200aに対しソフトウェア一覧にソフトウェアAが追加されたことを検出したとする。このとき、PC200ではソフトウェアAがインストール済であるが、PC200aではソフトウェアAがインストール途中である状況が起こり得る。この場合、PC200のレジストリ情報ではソフトウェアAの完全なレジストリ群R11が含まれる。一方、PC200aのレジストリ情報ではソフトウェアAのレジストリ群R11が全部含まれるわけではなく、レジストリ群R11の一部R11aが含まれるのみである。すなわち、PC200のレジストリ群R11に含まれるレジストリ部分RXが、PC200aのレジストリ情報には欠落している。このような状況で、PC200,200aでレジストリ情報の共通部分を特定してソフトウェアAに対応付けるとすると、レジストリ群R11のうち、レジストリ部分RXを欠いた一部R11aがソフトウェアAに対応付けられてしまう。
Assume that the
そこで、分析部140は、該当の登録ソフトウェアに対応するフォルダの作成時刻を調べ、ポーリング時刻とほぼ一致(例えば、前述のように、作成時刻からポーリング時刻までが所定期間内である)場合、当該登録ソフトウェアをインストール中であると判断し、レジストリ群の共通部分の抽出対象とするPCから除外してもよい。例えば、図16で説明したように、分析部140は、フォルダ情報のうちソフトウェアAに対応するフォルダ群を特定し得る。
Therefore, the
分析部140は、PC200a以外に、ソフトウェアAが追加されてインストールが完了しているPCがあれば、当該PCとPC200とのレジストリの共通部分を用いてソフトウェアAに対応するレジストリ群の特定を行える。ただし、PC200a以外にソフトウェアAが追加されてインストールが完了しているPCがなければ、今回はソフトウェアAとレジストリとの対応付けを行えないことになる。すなわち、分析部140は、図13のステップS22において、ソフトウェアAを複数のPC間で共通するソフトウェアとして特定しても、ステップS23,S24の処理の対象外とする。これにより作成中のレジストリ群と登録ソフトウェアとが対応付けられることを抑えられる。
In addition to the
ソフトウェアAを対応付けの対象外とした場合、分析部140は、次回のポーリング結果に応じて、ソフトウェアAとレジストリ群との対応付けを行ってもよい。次回のポーリング時に、PC200aでレジストリ群R11の作成が完了していれば、分析部140は、ソフトウェアAとレジストリ群R11とを適切に対応付けることができる。ただし、次回のポーリングの結果から、ソフトウェアAに対応するレジストリ群を特定する場合、分析部140は、PC200,200aから次回ポーリングで取得したレジストリ情報を、前回との差分をとらずに比較し、共通のレジストリ群R11を特定することになる。そして、分析部140は、当該共通のレジストリ群R11をソフトウェアAに対応付ける。
When the software A is excluded from the association target, the
こうして、管理サーバ100は、登録ソフトウェアおよび未登録ソフトウェアとレジストリとの対応付けを適切に行える。管理サーバ100によれば、登録ソフトウェアだけでなく、未登録ソフトウェアによって使用されるレジストリも、未登録ソフトウェアに対応付けて適切に管理できる。なお、対応管理テーブル114の例では、未登録ソフトウェアのインストールフォルダと、レジストリとを対応付けるものとした。これに対し、分析部140は、インストールフォルダの情報から未登録ソフトウェアの識別名を決定し、当該識別名とレジストリとの対応付けを行ってもよい。例えば、分析部140は、インストールフォルダのパス内において、OSがアプリケーションソフトウェアの格納用に用意した所定のフォルダの直下の文字列を未登録ソフトウェアの識別名としてもよい。あるいは、インストールフォルダに含まれる実行形式のファイル(例えば、exe形式のファイルなど)のファイル名(例えば、appZ.exe)から未登録ソフトウェアの識別名(例えば、appZなど)を決定してもよい。すると、分析部140は、未登録ソフトウェアの識別名とレジストリとを対応付けることができる。この場合にも、分析部140は、未登録ソフトウェアの識別名とインストールフォルダとを対応付けた情報を更に記憶部110に格納して保持することで、対応管理テーブル114と同等の情報を管理できる。
In this way, the
そして、不要レジストリ判定部150は、分析部140により作成された対応管理テーブル114に基づいて、PC200,200a,200b,200c,200dにおける不要レジストリを判定する。
Then, the unnecessary
図18は、不要レジストリの判定処理を示す図である。以下、図18に示す処理をステップ番号に沿って説明する。管理サーバ100は、例えば、ポーリング後の分析部140の処理後に以下の手順を開始する。
FIG. 18 is a diagram illustrating a process for determining an unnecessary registry. In the following, the process illustrated in FIG. 18 will be described in order of step number. For example, the
(S31)不要レジストリ判定部150は、レジストリとソフトウェアまたはフォルダとの対応関係の情報を対応管理テーブル114から読み出す。
(S32)差分抽出部130は、前回のポーリングで取得したソフトウェア一覧およびフォルダ情報と今回のポーリングで取得したソフトウェア一覧およびフォルダ情報の差分を抽出し、削除されたソフトウェアまたはフォルダを検出する。具体的には、あるPCについて、前回のポーリングで取得したソフトウェア一覧には含まれるが、今回のポーリングで取得したソフトウェア一覧には含まれないソフトウェアが、当該PCから削除されたソフトウェア(未検出ソフトウェア)である。また、あるPCについて、前回のポーリングで取得したフォルダ情報には含まれるが、今回のポーリングで取得したフォルダ情報には含まれないフォルダが、当該PCから削除されたフォルダである。差分抽出部130は抽出結果を不要レジストリ判定部150に通知する。
(S31) The unnecessary
(S32) The
(S33)不要レジストリ判定部150は、対応管理テーブル114から読み出した情報に基づいて、何れかのPCから削除されたソフトウェアまたはフォルダに対応するレジストリが当該PCに残存するか否かを判定する。残存する場合、処理をステップS34に進める。残存しない場合、処理を終了する。例えば、PC200から削除されたソフトウェアまたはフォルダに対応するレジストリが、PC200のマシンIDに対応付けてレジストリ管理テーブル111に存在している場合、当該レジストリはPC200に残存していることになる。
(S33) Based on the information read from the correspondence management table 114, the unnecessary
(S34)不要レジストリ判定部150は、該当のPCに対し、残存するレジストリを不要レジストリと判定する。不要レジストリ判定部150は、当該PCに対して、不要レジストリの削除を指示する。これにより、当該PCから不要レジストリが削除される。
(S34) The unnecessary
このようにして、管理サーバ100はPC200,200a,200b,200c,200dにおける不要レジストリの判定を行える。管理サーバ100は、PC200,200a,200b,200c,200dにより不要レジストリを削除させることで、PC200,200a,200b,200c,200d上の他のソフトウェアの動作に対し不要レジストリによる悪影響が及ぶことを防げる。
In this way, the
また、登録ソフトウェアに対応付けられていなくても、未登録ソフトウェアに対応付けられたレジストリは、不要レジストリとは判断されないことになる。このため、未登録ソフトウェアによって使用されるレジストリが、不要レジストリと誤判断されて削除されてしまうことを防げる。 Further, even if the registry is not associated with the registered software, the registry associated with the unregistered software is not determined to be an unnecessary registry. Therefore, it is possible to prevent a registry used by unregistered software from being erroneously determined as an unnecessary registry and deleted.
更に、ステップS32,S33では不要レジストリ判定部150は、次のように不要レジストリを判定してもよい。例えば、対応管理テーブル114に登録されたソフトウェア名とレジストリ群との1つの組について、レジストリ管理テーブル111には該当のレジストリ群が存在するが、ソフトウェア管理テーブル112には該当のソフトウェア名が存在しないPCを特定する。この場合、当該PCには該当のソフトウェア名で示されるソフトウェアがアンインストールされたが、アンインストール時にレジストリを消し損なったと判断できる。不要レジストリ判定部150は、当該ソフトウェアに対応するレジストリ群を不要レジストリと判定する。こうして、不要レジストリ判定部150は、各PCに対し、対応管理テーブル114に登録されたソフトウェア名とレジストリ群との組毎に、不要レジストリを判定し得る。また、前回ポーリングと今回ポーリングの間にインストールされアンインストールされたソフトウェア(例えば、ソフトウェアC)に対応するレジストリも不要レジストリとして判定できる。
Furthermore, in steps S32 and S33, the unnecessary
同様に、例えば対応管理テーブル114に登録されたフォルダ群とレジストリ群との1つの組について、レジストリ管理テーブル111には該当のレジストリ群が存在するが、フォルダ管理テーブル113には該当のフォルダ群が存在しないPCを特定する。この場合、当該PCには該当のフォルダ群で示される未登録ソフトウェアがアンインストールされたが、アンインストール時にレジストリを消し損なったと判断できる。不要レジストリ判定部150は、当該フォルダ群に対応するレジストリ群を不要レジストリと判定する。こうして、不要レジストリ判定部150は、各PCについて、対応管理テーブル114に登録されたフォルダ群とレジストリ群との組毎に、不要レジストリを判定し得る。また、前回ポーリングと今回ポーリングの間にインストールされアンインストールされた未登録ソフトウェアに対応するレジストリも不要レジストリとして判定できる。
Similarly, for example, for one set of a folder group and a registry group registered in the correspondence management table 114, the corresponding registry group exists in the registry management table 111, but the corresponding folder group exists in the folder management table 113. Identify a nonexistent PC. In this case, it can be determined that the unregistered software indicated by the corresponding folder group has been uninstalled on the PC, but the registry has failed to be deleted during the uninstallation. The unnecessary
ここで、あるPCにおいて、あるレジストリ部分が複数のソフトウェアによって共通に利用されることも考えられる。その場合、当該複数のソフトウェアの一部がアンインストールされたからといって、当該レジストリ部分を不要レジストリと判定して削除させてしまうと、他のソフトウェアが動作しなくなるおそれもある。具体的には次の通りである。 Here, in a certain PC, a certain registry part may be commonly used by a plurality of software. In this case, if a part of the plurality of software is uninstalled and the registry part is determined to be an unnecessary registry and deleted, other software may not operate. Specifically, it is as follows.
図19は、複数のソフトウェアによるレジストリの共通利用の例を示す図である。例えば、PC200にソフトウェアY,Zがインストールされ、PC200aにソフトウェアYがインストールされ、PC200bにソフトウェアZがインストールされているケースを考える。例えば、ソフトウェアY,Zは、登録ソフトウェアである。
FIG. 19 is a diagram illustrating an example of common use of a registry by a plurality of software. For example, consider a case where software Y and Z are installed in the
管理サーバ100は、PC200aとソフトウェアYがインストールされた他のPC(図示を省略している)とで、レジストリ情報の共通部分を得ることで、ソフトウェアYに対応するレジストリ群を得る。また、管理サーバ100は、PC200bとソフトウェアZがインストールされた他のPC(図示を省略している)とで、レジストリ情報の共通部分を得ることで、ソフトウェアZに対応するレジストリ群を得る。ソフトウェアYに対応するレジストリ群と、ソフトウェアZに対応するレジストリ群とでは、共通に利用される部分が存在する。
The
このとき、PC200からソフトウェアYまたはソフトウェアZの何れか一方のみが削除され、削除された方のソフトウェアに対応するレジストリを不要レジストリとして削除してしまうと、残った方のソフトウェアが共通部分のレジストリを利用できなくなる。この場合、残った方のソフトウェアの動作に支障がでる。すなわち、PC200において、ソフトウェアY,Zで共通に利用される部分は、ソフトウェアYおよびソフトウェアZの何れか一方が削除されても不要レジストリとすべきでない部分である。そこで、不要レジストリ判定部150は不要レジストリの判定を次のように行ってもよい。
At this time, if only one of the software Y and the software Z is deleted from the
図20は、不要レジストリの他の判定処理を示すフローチャートである。以下、図20に示す処理をステップ番号に沿って説明する。図20の手順では、図18の手順に対し、ステップS33に代えて、ステップS33a,33b,33cを実行する点が、図18と異なる。そこで、以下の説明では、ステップS33a,S33b,S33cを説明し、他の手順の説明を省略する。 FIG. 20 is a flowchart showing another determination process of the unnecessary registry. In the following, the process illustrated in FIG. 20 will be described in order of step number. The procedure of FIG. 20 differs from the procedure of FIG. 18 in that steps S33a, 33b, and 33c are executed instead of step S33. Therefore, in the following description, steps S33a, S33b, and S33c will be described, and description of other procedures will be omitted.
(S33a)不要レジストリ判定部150は、対応管理テーブル114から読み出した情報に基づいて、何れかのPCから削除されたソフトウェアまたはフォルダに対応するレジストリが当該PCに残存するか否かを判定する。判定方法はステップS33と同様である。残存する場合、処理をステップS33bに進める。残存しない場合、処理を終了する。
(S33a) The unnecessary
(S33b)不要レジストリ判定部150は、対応管理テーブル114を参照して、残存していると判定されたレジストリのうち、該当のPCからアンインストールされていない他のソフトウェアまたは削除されていない他のフォルダにも対応している部分があるか否かを判定する。ある場合、処理をステップS33cに進める。ない場合、処理をステップS34に進める。
(S33b) The unnecessary
(S33c)不要レジストリ判定部150は、残存するレジストリのうちアンインストールされていない他のソフトウェアまたは他のフォルダに対応する部分以外を不要と判定する。不要レジストリ判定部150は、不要部分の削除を該当のPCに指示する。これにより、該当のPCからレジストリの当該不要部分が削除される。
(S33c) The unnecessary
このように、管理サーバ100は、複数のソフトウェアによって共通に利用されるレジストリが存在する場合、複数のソフトウェアの何れかのソフトウェアが削除されても、当該レジストリを不要レジストリとして削除しないよう管理できる。
As described above, when there is a registry commonly used by a plurality of software, the
ここで、通常、ソフトウェアのインストール時に、インストーラがソフトウェアの動作のための設定情報をレジストリに登録する。ソフトウェアのアンインストール時には、アンインストーラが、インストール時に登録したレジストリの情報を削除する。しかし、削除漏れにより、不要なレジストリが残存することがある。不要なレジストリが残存することで、その後のソフトウェアのインストール時(例えば、同ソフトウェアの再インストール、新バージョンのインストール、関連ソフトウェアの新規インストール時)などに、ソフトウェアの動作に不具合が生じることがある。また、不要レジストリが過剰に蓄積することでPCの性能劣化(例えば、記憶容量が無駄に使用されるなど)にもつながる。 Here, usually, at the time of software installation, the installer registers setting information for software operation in the registry. When uninstalling software, the uninstaller deletes the registry information registered during installation. However, unnecessary registries may remain due to omission of deletion. If the unnecessary registry remains, a malfunction may occur in the operation of the software when the software is subsequently installed (for example, when the software is reinstalled, a new version is installed, or a related software is newly installed). In addition, excessive accumulation of unnecessary registries leads to PC performance degradation (for example, storage capacity is wasted).
管理サーバ100によれば、対応管理テーブル114に基づいて、不要レジストリを判定し、各PCから削除できる。その結果、他のソフトウェアの動作に対する影響を抑えられる。また、不要レジストリが過剰に蓄積されないようにすることで、PCの性能劣化も抑えられる。
The
なお、管理サーバ100の管理対象のマシンは、PC200,200a,200b,200c,200dのような物理マシンに限らず、物理マシン上で動作する仮想マシンでもよい。
Note that the management target machine of the
また、第1の実施の形態の情報処理は、演算部1bにプログラムを実行させることで実現できる。また、第2の実施の形態の情報処理は、プロセッサ101にプログラムを実行させることで実現できる。プログラムは、コンピュータ読み取り可能な記録媒体13に記録できる。
The information processing according to the first embodiment can be realized by causing the
例えば、プログラムを記録した記録媒体13を配布することで、プログラムを流通させることができる。また、プログラムを他のコンピュータに格納しておき、ネットワーク経由でプログラムを配布してもよい。コンピュータは、例えば、記録媒体13に記録されたプログラムまたは他のコンピュータから受信したプログラムを、RAM102やHDD103などの記憶装置に格納し(インストールし)、当該記憶装置からプログラムを読み込んで実行してもよい。
For example, the program can be distributed by distributing the
以上の第1,第2の実施の形態を含む実施形態に関し、更に以下の付記を開示する。
(付記1) コンピュータに、
管理対象の複数のマシンより、OSが管理するOS管理情報、ファイル情報、および、登録ソフト情報をそれぞれ取得し、
前記登録ソフト情報、および、前記OS管理情報に基づき、前記複数のマシンそれぞれにインストールされたソフトウェア、および、当該ソフトウェアが使用する前記OS管理情報の項目群に関する第1の管理情報を生成し、
前記第1の管理情報、および、前記複数のマシンの前記ファイル情報に基づき、使用するソフトウェアが特定されておらず、かつ、対応するファイルが存在する前記OS管理情報の項目群を、前記登録ソフト情報に含まれない第1のソフトウェアが使用するOS管理情報の項目群である第1の項目群として特定する、
処理を実行させる管理プログラム。
Regarding the embodiments including the first and second embodiments, the following additional notes are disclosed.
(Supplementary note 1)
OS management information, file information, and registered software information managed by the OS are obtained from a plurality of managed machines,
Based on the registered software information and the OS management information, software installed on each of the plurality of machines, and first management information relating to an item group of the OS management information used by the software,
Based on the first management information and the file information of the plurality of machines, the OS management information item group in which the software to be used is not specified and the corresponding file exists is stored in the registration software. It is specified as a first item group that is an item group of OS management information used by the first software not included in the information.
Management program that executes processing.
(付記2) 前記複数のマシンのファイル情報に含まれるフォルダおよびファイルの作成時刻に基づいて、前記第1のソフトウェアと前記第1の項目群とを対応付ける、付記1記載の管理プログラム。
(Supplementary note 2) The management program according to
(付記3) 前記OS管理情報、前記ファイル情報、および、前記登録ソフト情報の前記複数のマシンへの問い合わせ時刻と、前記フォルダの作成時刻との比較に応じて前記対応付けに用いるマシンを選択する、付記2記載の管理プログラム。
(Additional remark 3) The machine used for the said correspondence is selected according to the comparison of the inquiry time to the plurality of machines of the OS management information, the file information, and the registered software information with the creation time of the folder The management program according to
(付記4) 前記比較により前記問い合わせ時刻において前記第1のソフトウェアをインストール途中であるマシンを特定し、当該マシン以外のマシンから取得した情報を用いて、前記対応付けを行う、付記3記載の管理プログラム。
(Supplementary note 4) The management according to
(付記5) 何れかのソフトウェアに対応付けた前記第1の項目群を、他のソフトウェアに対応付けた第2の項目群に基づいて変更する、付記1乃至4の何れか1つに記載の管理プログラム。 (Additional remark 5) The said 1st item group matched with any software is changed based on the 2nd item group matched with other software, Any one of Additional notes 1-4 Management program.
(付記6) 前記第2の項目群は、前記第1の項目群の一部であり、
前記何れかのソフトウェアに対応させる項目群を、前記第1の項目群から前記第2の項目群を除外した項目群に変更する、付記5記載の管理プログラム。
(Supplementary Note 6) The second item group is a part of the first item group,
6. The management program according to
(付記7) 前記第1のソフトウェアを含む複数のソフトウェアと複数の項目群との対応関係の情報を生成し、前記対応関係の情報に基づいて、前記複数のマシンそれぞれが有する前記OS管理情報の項目群を削除対象とするか否かを判定する、付記1乃至6の何れか1つに記載の管理プログラム。
(Additional remark 7) The information of the correspondence of the some software containing the said 1st software, and a some item group is produced | generated, Based on the information of the said correspondence, the said OS management information which each of these machines has The management program according to any one of
(付記8) 何れかのマシンにおいて、前記対応関係の情報に含まれる項目群は存在するが、当該項目群に対応する何れのソフトウェアも存在しない場合、当該項目群のうち、当該マシンに存在する他の何れのソフトウェアにも対応付けられていない部分を削除対象と判定する、付記7記載の管理プログラム。 (Supplementary Note 8) In any machine, if there is an item group included in the correspondence information, but there is no software corresponding to the item group, the item group exists in the machine. The management program according to appendix 7, wherein a part that is not associated with any other software is determined as a deletion target.
(付記9) 前記登録ソフト情報に基づいて、共通のソフトウェアがインストールされた2以上のマシンで共通する項目群を、当該ソフトウェアが使用する項目群と特定する、付記1乃至8の何れか1つに記載の管理プログラム。
(Supplementary note 9) Any one of
(付記10) 前記第1の項目群の指定を、使用するソフトウェアが特定されていない前記OS管理情報のうち、2以上のマシンが共通に有するファイルに対応付けられる範囲を特定することで行う、付記1乃至9の何れか1つに記載の管理プログラム。
(Supplementary Note 10) The first item group is designated by specifying a range associated with a file that two or more machines have in common among the OS management information for which software to be used is not specified. The management program according to any one of
(付記11) 前記OS管理情報、前記ファイル情報、および、前記登録ソフト情報の前回取得分と今回取得分との差分により、前回の取得時から今回の取得時の間に追加された前記OS管理情報の項目群、フォルダ、および、ソフトウェアをマシン毎に検出し、各マシンに追加されたソフトウェアが使用する前記OS管理情報の項目群を、追加された項目群の中から特定する、付記1乃至10の何れか1つに記載の管理プログラム。
(Supplementary note 11) The OS management information, the file information, and the difference between the previous acquisition amount and the current acquisition amount of the registered software information indicate the OS management information added between the previous acquisition time and the current acquisition time.
(付記12) 管理対象の複数のマシンより取得された、OSが管理するOS管理情報、ファイル情報、および、登録ソフト情報を記憶する記憶部と、
前記登録ソフト情報、および、前記OS管理情報に基づき、前記複数のマシンそれぞれにインストールされたソフトウェア、および、当該ソフトウェアが使用する前記OS管理情報の項目群に関する第1の管理情報を生成し、前記第1の管理情報、および、前記複数のマシンの前記ファイル情報に基づき、使用するソフトウェアが特定されておらず、かつ、対応するファイルが存在する前記OS管理情報の項目群を、前記登録ソフト情報に含まれない第1のソフトウェアが使用する前記OS管理情報の項目群である第1の項目群として特定する演算部と、
を有する管理装置。
(Supplementary Note 12) A storage unit that stores OS management information, file information, and registered software information managed by the OS, acquired from a plurality of managed machines,
Generating, based on the registered software information and the OS management information, software installed on each of the plurality of machines, and first management information relating to an item group of the OS management information used by the software; Based on the first management information and the file information of the plurality of machines, the software to be used is not specified, and the item group of the OS management information in which the corresponding file exists is referred to as the registered software information. A computing unit that is identified as a first item group that is an item group of the OS management information used by the first software that is not included in
A management device.
(付記13) コンピュータが、
管理対象の複数のマシンより、OSが管理するOS管理情報、ファイル情報、および、登録ソフト情報をそれぞれ取得し、
前記登録ソフト情報、および、前記OS管理情報に基づき、前記複数のマシンそれぞれにインストールされたソフトウェア、および、当該ソフトウェアが使用する前記OS管理情報の項目群に関する第1の管理情報を生成し、
前記第1の管理情報、および、前記複数のマシンの前記ファイル情報に基づき、使用するソフトウェアが特定されておらず、かつ、対応するファイルが存在する前記OS管理情報の項目群を、前記登録ソフト情報に含まれない第1のソフトウェアが使用する前期OS管理情報の項目群である第1の項目群として特定する、
管理方法。
(Supplementary note 13)
OS management information, file information, and registered software information managed by the OS are obtained from a plurality of managed machines,
Based on the registered software information and the OS management information, software installed on each of the plurality of machines, and first management information relating to an item group of the OS management information used by the software,
Based on the first management information and the file information of the plurality of machines, the OS management information item group in which the software to be used is not specified and the corresponding file exists is stored in the registration software. As a first item group that is an item group of the previous period OS management information used by the first software not included in the information,
Management method.
1 管理装置
1a 記憶部
1b 演算部
2,3,4 マシン
DESCRIPTION OF
Claims (8)
管理対象の複数のマシンより、OSが管理するOS管理情報、ファイル情報、および、登録ソフト情報をそれぞれ取得し、
前記登録ソフト情報、および、前記OS管理情報に基づき、前記複数のマシンそれぞれにインストールされたソフトウェア、および、当該ソフトウェアが使用する前記OS管理情報の項目群に関する第1の管理情報を生成し、
前記第1の管理情報、および、前記複数のマシンの前記ファイル情報に基づき、使用するソフトウェアが特定されておらず、かつ、対応するファイルが存在する前記OS管理情報の項目群を、前記登録ソフト情報に含まれない第1のソフトウェアが使用するOS管理情報の項目群である第1の項目群として特定する、
処理を実行させる管理プログラム。 On the computer,
OS management information, file information, and registered software information managed by the OS are obtained from a plurality of managed machines,
Based on the registered software information and the OS management information, software installed on each of the plurality of machines, and first management information relating to an item group of the OS management information used by the software,
Based on the first management information and the file information of the plurality of machines, the OS management information item group in which the software to be used is not specified and the corresponding file exists is stored in the registration software. It is specified as a first item group that is an item group of OS management information used by the first software not included in the information.
Management program that executes processing.
前記第1の項目群の特定を、前記OS管理情報のツリー構造に基づいて、使用するソフトウェアが特定されていない前記OS管理情報のうち、2以上のマシンが共通に有するファイルに対応付けられる項目群または当該項目群が属する上位項目を特定することで行う、請求項1乃至5の何れか1項に記載の管理プログラム。 In the OS management information, each item belonging to the OS management information is managed in a tree structure,
Identification of the first item group is an item associated with a file shared by two or more machines in the OS management information for which software to be used is not specified based on the tree structure of the OS management information. The management program according to any one of claims 1 to 5, wherein the management program is performed by specifying a group or an upper item to which the item group belongs .
前記登録ソフト情報、および、前記OS管理情報に基づき、前記複数のマシンそれぞれにインストールされたソフトウェア、および、当該ソフトウェアが使用する前記OS管理情報の項目群に関する第1の管理情報を生成し、前記第1の管理情報、および、前記複数のマシンの前記ファイル情報に基づき、使用するソフトウェアが特定されておらず、かつ、対応するファイルが存在する前記OS管理情報の項目群を、前記登録ソフト情報に含まれない第1のソフトウェアが使用する前記OS管理情報の項目群である第1の項目群として特定する演算部と、
を有する管理装置。 A storage unit for storing OS management information, file information, and registered software information managed by the OS, acquired from a plurality of managed machines;
Generating, based on the registered software information and the OS management information, software installed on each of the plurality of machines, and first management information relating to an item group of the OS management information used by the software; Based on the first management information and the file information of the plurality of machines, the software to be used is not specified, and the item group of the OS management information in which the corresponding file exists is referred to as the registered software information. A computing unit that is identified as a first item group that is an item group of the OS management information used by the first software that is not included in
A management device.
管理対象の複数のマシンより、OSが管理するOS管理情報、ファイル情報、および、登録ソフト情報をそれぞれ取得し、
前記登録ソフト情報、および、前記OS管理情報に基づき、前記複数のマシンそれぞれにインストールされたソフトウェア、および、当該ソフトウェアが使用する前記OS管理情報の項目群に関する第1の管理情報を生成し、
前記第1の管理情報、および、前記複数のマシンの前記ファイル情報に基づき、使用するソフトウェアが特定されておらず、かつ、対応するファイルが存在する前記OS管理情報の項目群を、前記登録ソフト情報に含まれない第1のソフトウェアが使用する前記OS管理情報の項目群である第1の項目群として特定する、
管理方法。 Computer
OS management information, file information, and registered software information managed by the OS are obtained from a plurality of managed machines,
Based on the registered software information and the OS management information, software installed on each of the plurality of machines, and first management information relating to an item group of the OS management information used by the software,
Based on the first management information and the file information of the plurality of machines, the OS management information item group in which the software to be used is not specified and the corresponding file exists is stored in the registration software. Specifying the first item group which is the item group of the OS management information used by the first software not included in the information;
Management method.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2015069646A JP6447307B2 (en) | 2015-03-30 | 2015-03-30 | Management program, management apparatus, and management method |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2015069646A JP6447307B2 (en) | 2015-03-30 | 2015-03-30 | Management program, management apparatus, and management method |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2016189168A JP2016189168A (en) | 2016-11-04 |
| JP6447307B2 true JP6447307B2 (en) | 2019-01-09 |
Family
ID=57240340
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2015069646A Expired - Fee Related JP6447307B2 (en) | 2015-03-30 | 2015-03-30 | Management program, management apparatus, and management method |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP6447307B2 (en) |
Family Cites Families (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2003316581A (en) * | 2002-04-24 | 2003-11-07 | Hitachi Ltd | Software installation device |
| JP4354314B2 (en) * | 2004-03-16 | 2009-10-28 | 株式会社日立製作所 | Server difference management system and information processing apparatus control method |
| JP2008077546A (en) * | 2006-09-25 | 2008-04-03 | Hitachi Information Systems Ltd | Setting information collection support system and setting information collection support program |
| US8463758B2 (en) * | 2011-05-13 | 2013-06-11 | Piriform Ltd. | Network registry and file cleaner |
| CN102831010A (en) * | 2012-08-30 | 2012-12-19 | 腾讯科技(深圳)有限公司 | Method and device for opening unknown file |
-
2015
- 2015-03-30 JP JP2015069646A patent/JP6447307B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2016189168A (en) | 2016-11-04 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US12399783B2 (en) | Partial database restoration | |
| US8132186B1 (en) | Automatic detection of hardware and device drivers during restore operations | |
| US7886185B1 (en) | Creation of a device database and synthesis of device driver information during dissimilar system restore | |
| US9208307B2 (en) | Automatic algorithm discovery using reverse dataflow analysis | |
| CN101789888B (en) | Software installation detection method and device | |
| US8661418B2 (en) | Setting program, workflow creating method, and work flow creating apparatus | |
| CN100377532C (en) | Management system and management method | |
| US10140195B2 (en) | Method, apparatus, and computer program product for backup and failure recovery in a storage device | |
| JP6411696B1 (en) | Version control system and version control method | |
| JP6292045B2 (en) | Software information management program, software information management apparatus, and software information management method | |
| CN103631603A (en) | Software cleaning method and system | |
| US8799716B2 (en) | Heap dump occurrence detection | |
| JP2019020798A (en) | Information processing device and program | |
| JP6447307B2 (en) | Management program, management apparatus, and management method | |
| CN112579330A (en) | Method, device and equipment for processing abnormal data of operating system | |
| US7275251B2 (en) | Selective process restart based on API changes | |
| US10324700B2 (en) | Storing computing component installation information | |
| JP2010191580A (en) | File management method, system, and program | |
| JP2017033079A (en) | Software introduction support program, software introduction support apparatus, and software introduction support method | |
| US20190065168A1 (en) | Apparatus and method to shorten software installation time based on a history of file installation | |
| JP6217440B2 (en) | Symbolic execution program, symbolic execution method, and symbolic execution device | |
| CN109213748B (en) | Database script file updating method, server and medium | |
| US11354081B2 (en) | Information processing apparatus with concealed information | |
| US12547334B2 (en) | Refresh of stale reference to physical file locations | |
| CN103514089A (en) | Method and system for software installation detecting of software manager |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20180115 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20180823 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180904 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20181024 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20181106 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20181119 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 6447307 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| LAPS | Cancellation because of no payment of annual fees |