JP2013502005A - System and method for updating software products - Google Patents
System and method for updating software products Download PDFInfo
- Publication number
- JP2013502005A JP2013502005A JP2012524757A JP2012524757A JP2013502005A JP 2013502005 A JP2013502005 A JP 2013502005A JP 2012524757 A JP2012524757 A JP 2012524757A JP 2012524757 A JP2012524757 A JP 2012524757A JP 2013502005 A JP2013502005 A JP 2013502005A
- Authority
- JP
- Japan
- Prior art keywords
- version
- software product
- installing
- security
- components
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 66
- 230000003213 activating effect Effects 0.000 claims abstract description 6
- 238000009434 installation Methods 0.000 claims description 29
- 238000012545 processing Methods 0.000 claims description 23
- 230000008569 process Effects 0.000 claims description 22
- 230000002155 anti-virotic effect Effects 0.000 claims description 14
- 230000006266 hibernation Effects 0.000 claims description 3
- 238000004891 communication Methods 0.000 description 38
- 230000006870 function Effects 0.000 description 14
- 230000008859 change Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 11
- 238000011900 installation process Methods 0.000 description 7
- 238000004590 computer program Methods 0.000 description 6
- 230000009471 action Effects 0.000 description 5
- 239000004744 fabric Substances 0.000 description 4
- 238000012546 transfer Methods 0.000 description 4
- 230000001413 cellular effect Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000002265 prevention Effects 0.000 description 2
- 241001025261 Neoraja caerulea Species 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000009849 deactivation Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 238000013515 script Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000007723 transport mechanism Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/656—Updates while running
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
方法が、第1のバージョンのソフトウェア製品に第2のバージョンのソフトウェア製品を上書きしてインストールすることを求める要求を受信するステップと、第1のバージョンのソフトウェア製品が動作しているままで、第2のバージョンのソフトウェア製品を休止状態でインストールするステップと、第2のバージョンのソフトウェア製品を作動させ、前記第1のバージョンのソフトウェア製品を作動停止させることによって、第1のバージョンと第2のバージョンのソフトウェア製品をスワップするステップとを含み得る。様々な他の方法、システム、およびコンピュータ可読媒体も開示する。 Receiving a request to install the second version of the software product over the first version of the software product; and the first version of the software product remains operational, Installing the two versions of the software product in a dormant state, activating the second version of the software product, and deactivating the first version of the software product, thereby providing the first version and the second version. Swapping other software products. Various other methods, systems, and computer readable media are also disclosed.
Description
企業および個人は、計算システムを保護するセキュリティソフトウェア製品を定期的に更新または交換する。セキュリティソフトウェア製品を更新および交換するために様々な従来の技術を使用することができる。残念ながら、MICROSOFT INSTALLER(「MSI」)およびMICROSOFT PATCH(「MSP」)技術など、セキュリティソフトウェア製品を更新および交換するための従来の技術は、セキュリティ製品が動作していない期間中にコンピュータシステムを脆弱にすることがある。 Businesses and individuals regularly update or replace security software products that protect computing systems. Various conventional techniques can be used to update and replace security software products. Unfortunately, conventional techniques for updating and replacing security software products, such as MICROSOFT INSTALLER (“MSI”) and MICROSOFT PATCH (“MSP”) technologies, have made computer systems vulnerable during periods when security products are not in operation. It may be.
MSIによるセキュリティ製品の交換は、しばしば、既存のセキュリティ製品をアンインストールし、そのセキュリティ製品がインストールされていた計算システムをリブートし、新規のセキュリティ製品をインストールすることを含む。計算システムは、古いセキュリティ製品がアンインストールされた時から、新規のセキュリティ製品がインストールされて作動される時まで、保護されていないことがある。 Replacing a security product with MSI often involves uninstalling an existing security product, rebooting the computing system in which the security product was installed, and installing a new security product. The computing system may not be protected from when an old security product is uninstalled until when a new security product is installed and activated.
MSPによるセキュリティ製品の更新は、第1のバージョンのセキュリティ製品を第2のバージョンのセキュリティ製品に変換することができる。更新中、セキュリティ製品のプロセスの動作は、停止され、更新され、次いで再始動されることがある。したがって、セキュリティ製品によって保護されているシステムは、セキュリティ製品が更新されている間、脆弱になることがある。したがって、必要なのは、ソフトウェア製品を交換および/または更新するためのより効果的な方法である。 The security product update by the MSP can convert the first version of the security product to the second version of the security product. During the update, the operation of the security product process may be stopped, updated, and then restarted. Thus, a system protected by a security product may become vulnerable while the security product is updated. Therefore, what is needed is a more effective way to replace and / or update software products.
以下でより詳細に説明するように、本開示は、一般に、ソフトウェア製品を更新するためのシステムおよび方法に関する。本明細書で使用するとき、語句「ソフトウェア製品を更新する」は、一般に、既存のソフトウェア製品を更新および/または交換することを表す。いくつかの実施形態では、方法が、第1のバージョンのソフトウェア製品に第2のバージョンのソフトウェア製品を上書きしてインストールすることを求める要求を受信するステップと、第1のバージョンのソフトウェア製品が動作しているままで、第2のバージョンのソフトウェア製品を休止状態でインストールするステップと、第2のバージョンのソフトウェア製品を作動させ、第1のバージョンのソフトウェア製品を作動停止させることによって、第1のバージョンと第2のバージョンのソフトウェア製品をスワップするステップとを含み得る。ソフトウェア製品は、セキュリティソフトウェア製品を含み得る。例えば、第1のバージョンのソフトウェア製品は、第1のバージョンのアンチウイルスアプリケーションを含むことがあり、第2のバージョンのソフトウェア製品は、第2のバージョンのアンチウイルスアプリケーションを含み得る。 As described in more detail below, the present disclosure generally relates to systems and methods for updating software products. As used herein, the phrase “update a software product” generally refers to updating and / or replacing an existing software product. In some embodiments, the method receives a request to install the first version of the software product over the second version of the software product, and the first version of the software product operates. And installing the second version of the software product in a dormant state, activating the second version of the software product, and deactivating the first version of the software product. Swapping the version and the second version of the software product. The software product may include a security software product. For example, a first version of a software product may include a first version of an antivirus application, and a second version of the software product may include a second version of an antivirus application.
いくつかの実施形態では、この方法は、第1および第2のバージョンのソフトウェア製品がインストールされた計算システムをリブートするステップを含み得る。リブートは、第2のバージョンのソフトウェア製品をインストールした後であって第2のバージョンのソフトウェア製品を作動させる前に行われることがある。様々な実施形態によれば、第2のバージョンのソフトウェア製品は、計算システムのネットワークアダプタが有効化される前にリブートプロセス中に作動されることがある。この方法は、第2のバージョンのソフトウェア製品が有効化されるまで、ネットワークアダプタを無効化しておくステップを含み得る。 In some embodiments, the method may include rebooting the computing system with the first and second versions of the software product installed. The reboot may occur after installing the second version of the software product and before operating the second version of the software product. According to various embodiments, the second version of the software product may be activated during the reboot process before the computing system network adapter is enabled. The method may include disabling the network adapter until the second version of the software product is enabled.
様々な実施形態によれば、第2のバージョンのソフトウェア製品をインストールするステップは、第2のバージョンのソフトウェア製品の1つまたは複数のファイルをインストールするステップと、ブートプロセス中に必要とされる第2のバージョンのソフトウェア製品の1つまたは複数のコンポーネントをインストールするステップとを含み得る。いくつかの実施形態では、第1のバージョンのソフトウェア製品の実行に影響を及ぼさない第2のバージョンのソフトウェア製品の1つまたは複数のコンポーネントをインストールし、インストールされると第1のバージョンのソフトウェア製品の実行に影響を及ぼすことになる第2のバージョンのソフトウェアの1つまたは複数のコンポーネントのインストールを見合わせることによって、第2のバージョンのソフトウェア製品を一部インストールするステップを含み得る。 According to various embodiments, the step of installing the second version of the software product includes the step of installing one or more files of the second version of the software product and a step required during the boot process. Installing one or more components of the two versions of the software product. In some embodiments, one or more components of the second version of the software product that do not affect the execution of the first version of the software product are installed and, once installed, the first version of the software product May include partially installing the second version of the software product by forcing the installation of one or more components of the second version of the software that will affect the execution of.
1つまたは複数の実施形態では、第2のバージョンのソフトウェア製品を作動停止させるステップは、第1のバージョンのソフトウェア製品の1つまたは複数のコンポーネントの状態を、それら1つまたは複数のコンポーネントがリブート後に再始動しないように変更するステップを含み得る。様々な実施形態によれば、第2のバージョンのソフトウェア製品をインストールするステップは、第1のバージョンのソフトウェア製品の1つまたは複数の設定を保存するステップを含むことがあり、第1のバージョンと第2のバージョンのソフトウェア製品をスワップするステップは、第1のバージョンのソフトウェア製品の1つまたは複数の設定を第2のバージョンのソフトウェア製品にインポートするステップを含み得る。 In one or more embodiments, the step of deactivating the second version of the software product includes the state of one or more components of the first version of the software product, wherein the one or more components reboot. It may include changing to not restart later. According to various embodiments, installing the second version of the software product may include saving one or more settings of the first version of the software product, Swapping the second version of the software product may include importing one or more settings of the first version of the software product into the second version of the software product.
いくつかの実施形態によれば、第2のバージョンのソフトウェア製品をインストールするステップは、第1のバージョンのソフトウェア製品と第2のバージョンのソフトウェア製品の1組の相違を識別するステップを含むことがあり、第1のバージョンと第2のバージョンのソフトウェア製品をスワップするステップは、第2のバージョンのソフトウェア製品において使用できるように第1のバージョンのソフトウェア製品の1つまたは複数のコンポーネントを更新するために、1組の相違を使用するステップを含み得る。様々な実施形態において、第1のバージョンと第2のバージョンのソフトウェア製品をスワップするステップは、第1のバージョンのソフトウェア製品が作動停止されて第2のバージョンのソフトウェア製品が作動された後に、第1のバージョンのソフトウェア製品をアンインストールするステップを含み得る。少なくとも1つの実施形態では、この方法は、少なくとも1つのコンピュータ可読記憶媒体上でのコンピュータ実行可能命令として有形に具現化されることがある。 According to some embodiments, installing the second version of the software product may include identifying a set of differences between the first version of the software product and the second version of the software product. Yes, the step of swapping the first version and the second version of the software product is for updating one or more components of the first version of the software product for use in the second version of the software product. Can include using a set of differences. In various embodiments, the step of swapping the first version and the second version of the software product is performed after the first version of the software product is deactivated and the second version of the software product is activated. Uninstalling a version of the software product may be included. In at least one embodiment, the method may be tangibly embodied as computer-executable instructions on at least one computer-readable storage medium.
いくつかの実施形態では、方法が、第1のバージョンのセキュリティソフトウェア製品に第2のバージョンのセキュリティソフトウェア製品を上書きしてインストールすることを求める要求を受信するステップを含み得る。また、この方法は、第1のバージョンのセキュリティソフトウェア製品の実行に影響を及ぼさない第2のバージョンのセキュリティソフトウェア製品の1つまたは複数のコンポーネントをインストールし、インストールされると第1のバージョンのセキュリティソフトウェア製品の実行に影響を及ぼすことになる第2のバージョンのセキュリティソフトウェアの1つまたは複数のコンポーネントのインストールを見合わせることによって、第1のバージョンのセキュリティソフトウェア製品が動作しているままで、第2のバージョンのセキュリティソフトウェア製品を休止状態でインストールするステップを含むこともある。 In some embodiments, the method may include receiving a request to install the first version of the security software product over the second version of the security software product. The method also installs one or more components of the second version of the security software product that do not affect the execution of the first version of the security software product and, once installed, the first version of the security software product. By suspending the installation of one or more components of the second version of the security software that will affect the execution of the software product, the second version of the security software product remains operating and the second May include installing a version of the security software product in a dormant state.
この方法はさらに、第1および第2のバージョンのセキュリティソフトウェア製品がインストールされた計算システムをリブートするステップと、第2のバージョンのセキュリティソフトウェア製品を作動させ、第1のバージョンのセキュリティソフトウェア製品を作動停止させることによって、第1のバージョンと第2のバージョンのセキュリティソフトウェア製品をスワップするステップとを含み得る。いくつかの実施形態によれば、この方法は、第2のバージョンのセキュリティソフトウェア製品の1つまたは複数のファイルをインストールするステップと、ブートプロセス中に必要とされる第2のバージョンのセキュリティソフトウェア製品の1つまたは複数のコンポーネントをインストールするステップとを含み得る。この方法は、追加または代替として、第1のバージョンのソフトウェア製品の1つまたは複数のコンポーネントの状態を、計算システムをリブートした後にそれら1つまたは複数のコンポーネントが再始動しないように変更するステップを含み得る。 The method further includes rebooting the computing system on which the first and second versions of the security software product are installed, operating the second version of the security software product, and operating the first version of the security software product. The step may include swapping the first version and the second version of the security software product by stopping. According to some embodiments, the method includes installing one or more files of a second version of the security software product, and a second version of the security software product required during the boot process. Installing one or more of the components. The method additionally or alternatively includes changing the state of the one or more components of the first version of the software product so that the one or more components do not restart after the computing system is rebooted. May be included.
いくつかの実施形態では、システムが、少なくとも1つの処理装置と、第1のバージョンのソフトウェア製品に第2のバージョンのソフトウェア製品を上書きしてインストールすることを求める要求を受信するように処理装置に命令するようにプログラムされたインターフェースモジュールと、第1のバージョンのソフトウェア製品が動作しているままで、第2のバージョンのソフトウェア製品を休止状態でインストールするように処理装置に命令するようにプログラムされたインストールモジュールと、第2のバージョンのソフトウェア製品を作動させ、第1のバージョンのソフトウェア製品を作動停止することによって、第1のバージョンと第2のバージョンのソフトウェア製品をスワップするように処理装置に命令するようにプログラムされたスワッピングモジュールとを備えることがある。 In some embodiments, the system causes the processing device to receive at least one processing device and a request to install the first version of the software product over the second version of the software product. An interface module programmed to command and programmed to instruct the processing device to install the second version of the software product in a dormant state while the first version of the software product remains operating The processing module to swap the first version and the second version of the software product by operating the installed module and the second version of the software product and deactivating the first version of the software product. Program to command It has been that there is provided a swapping module.
いくつかの実施形態では、第1のバージョンのソフトウェア製品は、第1のバージョンのアンチウイルスアプリケーションを含むことがあり、第2のバージョンのソフトウェア製品は、第2のバージョンのアンチウイルスアプリケーションを含み得る。様々な実施形態によれば、スワッピングモジュールは、1つまたは複数のコンポーネントがリブート後に再始動しないように第1のバージョンのソフトウェア製品の1つまたは複数のコンポーネントの状態を変更することによって、第2のバージョンのソフトウェア製品を作動停止するように処理装置に命令するようにプログラムされることがある。少なくとも1つの実施形態では、インストールモジュールは、第2のバージョンのソフトウェア製品の1つまたは複数のファイルをインストールし、および/またはブートプロセス中に必要とされる第2のバージョンのソフトウェア製品の1つまたは複数のコンポーネントをインストールすることによって、第2のバージョンのソフトウェア製品をインストールするように処理装置に命令するようにプログラムされることがある。 In some embodiments, the first version of the software product may include a first version of an antivirus application, and the second version of the software product may include a second version of an antivirus application. . According to various embodiments, the swapping module can change the second state by changing the state of one or more components of the first version of the software product so that the one or more components do not restart after reboot. May be programmed to instruct the processing unit to shut down a version of the software product. In at least one embodiment, the installation module installs one or more files of the second version software product and / or one of the second version software products required during the boot process. Or, by installing multiple components, it may be programmed to instruct the processing device to install a second version of the software product.
上述した任意の実施形態からの特徴を、本明細書で述べる一般的な原理に従って互いに組み合わせて使用することができる。これらおよび他の実施形態、特徴、および利点は、添付図面および特許請求の範囲に関連付けて以下の詳細な説明を読めば、より完全に理解されよう。 Features from any of the above-described embodiments can be used in combination with each other according to the general principles described herein. These and other embodiments, features, and advantages will be more fully understood when the following detailed description is read in conjunction with the accompanying drawings and claims.
添付図面は、いくつかの例示的実施形態を示し、本明細書の一部である。これらの図面は、以下の説明と共に、本開示の様々な原理の実例を挙げて説明する。 The accompanying drawings illustrate some exemplary embodiments and are a part of the specification. These drawings, along with the following description, illustrate various principles of the present disclosure.
図面全体を通して、同一の参照符号および説明は、同様の要素を示すが、必ずしも同一の要素ではない。本明細書で述べる例示的実施形態は、様々な修正形態および代替形態が可能であるが、特定の実施形態を例として図面に示し、本明細書で詳細に説明する。しかし、本明細書で述べる例示的実施形態は、開示する特定の形態に限定されるものとは意図されていない。そうではなく、本開示は、添付の特許請求の範囲の範囲内に入るすべての修正形態、均等形態、および代替形態を網羅する。 Throughout the drawings, identical reference numbers and descriptions indicate similar, but not necessarily identical, elements. While the exemplary embodiments described herein are susceptible to various modifications and alternative forms, specific embodiments are shown by way of example in the drawings and are described in detail herein. However, the exemplary embodiments described herein are not intended to be limited to the particular forms disclosed. Rather, the present disclosure covers all modifications, equivalents, and alternatives falling within the scope of the appended claims.
以下でより詳細に説明するように、本開示は、一般に、ソフトウェア製品を更新するためのシステムおよび方法に関する。本開示の実施形態は、インストールプロセス中に既存の製品をアンインストールする必要なく新規の製品を上書きインストールすることができる。例えば、計算システムは、第1のバージョンのソフトウェア製品が動作しているままで、第2のバージョンのソフトウェア製品を休止状態でインストールすることができ、第2のバージョンのソフトウェア製品を作動させ、第1のバージョンのソフトウェア製品を作動停止させることによって第1のバージョンと第2のバージョンのソフトウェア製品をスワップすることができる。 As described in more detail below, the present disclosure generally relates to systems and methods for updating software products. Embodiments of the present disclosure can install over a new product without having to uninstall the existing product during the installation process. For example, the computing system can install the second version of the software product in a dormant state while the first version of the software product is still running, operate the second version of the software product, and The first version and the second version of the software product can be swapped by deactivating one version of the software product.
本開示の実施形態は、一般に、あるソフトウェア製品が別のソフトウェア製品に上書きしてインストールされる状況(すなわち、一度にただ1つのバージョンのソフトウェア製品しか動作することができない状況)に当てはまる。そのような状況では、従来のインストールツールは、典型的には既存のソフトウェア製品をアンインストールしてから新規のソフトウェア製品をインストールし、そのため、いずれのソフトウェア製品も動作していない期間が生じることがある。アンチウイルスやデータ保護製品などセキュリティソフトウェア製品に関して、既存の製品によって保護されている計算システムは、既存の製品がアンインストールされて新規の製品がインストールされる間、脆弱になることがある。本開示の実施形態は、既存のバージョンのソフトウェア製品がまだ動作しているままで新規のバージョンのソフトウェア製品をインストールすることによって、ソフトウェアのダウンタイムをなくす、および/または最小限にすることができる。また、本開示の実施形態は、様々な他の特徴および利点も提供する。 Embodiments of the present disclosure generally apply to situations where one software product is installed over another software product (ie, a situation where only one version of a software product can operate at a time). In such situations, traditional installation tools typically uninstall an existing software product before installing a new software product, which can result in periods of no software product running. is there. With respect to security software products such as anti-virus and data protection products, a computing system protected by an existing product may become vulnerable while the existing product is uninstalled and a new product is installed. Embodiments of the present disclosure can eliminate and / or minimize software downtime by installing a new version of a software product while the existing version of the software product is still running . Embodiments of the present disclosure also provide various other features and advantages.
以下、図1および図2を参照して、ソフトウェア製品を更新するための例示的なシステムを詳細に説明する。また、それに対応するコンピュータ実装方法を、図3および図4に関連付けて詳細に説明する。さらに、本明細書で述べる1つまたは複数の実施形態を実装することができる例示的な計算システムおよびネットワークアーキテクチャを、それぞれ図57および図6に関連付けて詳細に説明する。 In the following, an exemplary system for updating a software product will be described in detail with reference to FIGS. A computer-implemented method corresponding to this will be described in detail with reference to FIGS. Further, exemplary computing systems and network architectures that can implement one or more embodiments described herein are described in detail in connection with FIGS. 57 and 6, respectively.
図1は、ソフトウェア製品を更新するための例示的なシステム100のブロック図である。この図に示されるように、例示的なシステム100は、1つまたは複数のタスクを実施するための1つまたは複数のモジュール102を含み得る。例えば、以下でより詳細に説明するように、例示的なシステム100は、第1のバージョンのソフトウェア製品に第2のバージョンのソフトウェア製品を上書きしてインストールすることを求める要求を受信するようにプログラムされたインターフェースモジュール104を含み得る。また、例示的なシステム100は、第1のバージョンのソフトウェア製品が動作しているままで、第2のバージョンのソフトウェア製品を休止状態でインストールするようにプログラムされたインストールモジュール106を含むこともある。
FIG. 1 is a block diagram of an
さらに、以下でより詳細に説明するように、例示的なシステム100は、第1のバージョンのソフトウェア製品を作動停止させて第2のバージョンのソフトウェア製品を作動させることによって、第1のバージョンと第2のバージョンのソフトウェア製品をスワップするようにプログラムされたスワッピングモジュール108を含むこともある。別個の要素として図示されているが、図1のモジュール102の1つまたは複数が、単一のモジュールまたはアプリケーションの一部を表すこともある。
Further, as will be described in more detail below, the
いくつかの実施形態では、図1のモジュール102の1つまたは複数は、計算装置によって実行されたときに計算装置に1つまたは複数のタスクを実施させることができる1つまたは複数のソフトウェアアプリケーションまたはプログラムを表すことがある。例えば、以下でより詳細に説明するように、モジュール102の1つまたは複数は、図2に示される装置(例えば計算装置202および/またはサーバ206)、図5の計算システム510、および/または図6の例示的なネットワークアクチュエータ600の一部など、1つまたは複数の計算装置に記憶され、そこで実行されるように構成されたソフトウェアモジュールを表すことがある。また、図1のモジュール102の1つまたは複数は、1つまたは複数のタスクを実施するように構成された1つまたは複数の専用コンピュータの全体または一部を表こともある。
In some embodiments, one or more of the
図1に示されるように、例示的なシステム100は、1つまたは複数のデータベース120を含むこともある。データベース120は、単一のデータベースもしくは計算デバイスの一部、または複数のデータベースもしくは計算デバイスを表すことがある。一実施形態では、例示的なシステム100は、第1のバージョンのソフトウェア製品と第2のバージョンのソフトウェア製品の相違を記憶するための相違データベース122を含み得る。また、例示的なシステム100は、第1のバージョンのソフトウェア製品から第2のバージョンのソフトウェア製品に移行すべき1つまたは複数の設定を記憶するための設定データベース124を含むこともある。
As shown in FIG. 1, the
図1のデータベース120は、1つまたは複数の計算デバイスの一部を表すことがある。例えば、データベース120は、図2のサーバ206の一部、図5の計算システム510、および/または図6の例示的なネットワークアーキテクチャ600の一部を表すことがある。あるいは、図1のデータベース120は、図2のサーバ206、図5の計算システム510、および/または図6の例示的なネットワークアーキテクチャ600の一部などの計算デバイスがアクセスすることができる1つまたは複数の物理的に別個のデバイスを表すことがある。
The
図1の例示的なシステム100は、様々な方法で展開することができる。例えば、例示的なシステム100の全体または一部が、図2に示される例示的なシステム200などクラウドコンピューティング環境またはネットワークベース環境の一部を表すことがある。クラウドコンピューティング環境は、インターネットを介して様々なサービスおよびアプリケーションを提供することができる。これらのクラウドベースのサービス(例えば、サービスとしてのソフトウェア、サービスとしてのプラットフォーム、サービスとしてのインフラストラクチャなど)は、ウェブブラウザまたは他の遠隔インターフェースを介してアクセス可能になることがある。本明細書で述べる様々な機能は、遠隔のデスクトップ環境または任意の他のクラウドベースのコンピューティング環境によって提供することができる。
The
図2に示されるように、システム200は、ネットワーク204を介してサーバ206と通信する計算デバイス202を含み得る。一実施形態では、計算デバイス202は、1つまたは複数のモジュール102および/または1つまたは複数のデータベース120を含み得る。また、計算デバイス202は、第1のバージョンのソフトウェア製品220と第2のバージョンのソフトウェア製品222を含むこともある。計算デバイス202は、1つまたは複数のモジュール102を実行することがあり、第1のバージョンのソフトウェア製品220に第2のバージョンのソフトウェア製品222を上書きするためのプロセスで1つまたは複数のデータベース120を使用することがある。いくつかの実施形態では、計算デバイス202は、エンタープライズソフトウェア展開の一部として、サーバ206から第2のバージョンのソフトウェア製品222を受信することがある。あるいは、第2のバージョンのソフトウェア製品222は、計算デバイス202で直接開始されるインストールの一部として、第1のバージョンのソフトウェア製品220に上書きされることがある。例えば、第2のバージョンのソフトウェア製品222は、CD、DVD、BLUERAYディスク、USBデバイス、インターネット、および/またはローカルネットワークを含めた任意の適切な搬送メカニズムによって提供されることがある。
As shown in FIG. 2, the
計算デバイス202は、コンピュータ実行可能命令を読み取ることができる任意の種類または形態の計算デバイスを全般的に表す。計算デバイス202の例としては、限定はしないが、ラップトップコンピュータ、デスクトップコンピュータ、サーバ、セルラ電話、個人用携帯情報端末(PDA)、マルチメディアプレーヤ、組み込みシステム、それらのうちの1つまたは複数の組合せ、図5における例示的な計算システム510、または任意の他の適切な計算デバイスが挙げられる。
サーバ206は、ソフトウェア製品を展開することができる任意の種類または形態の計算デバイスを全般的に表す。サーバ206の例としては、限定はしないが、様々なデータベースサービスを提供する、および/または何らかのソフトウェアアプリケーションを動作させるように構成されたアプリケーションサーバおよびデータベースサーバが挙げられる。 Server 206 generally represents any type or form of computing device capable of deploying a software product. Examples of server 206 include, but are not limited to, application servers and database servers configured to provide various database services and / or run some software application.
ネットワーク204は、通信またはデータ転送を容易くすることができる任意の媒体またはアーキテクチャを全般的に表す。ネットワーク204の例としては、限定はしないが、イントラネット、ワイドエリアネットワーク(WAN)、ローカルエリアネットワーク(LAN)、パーソナルエリアネットワーク(PAN)、インターネット、電力線通信(PLC)、セルラネットワーク(例えばGSMネットワーク)、図6の例示的なネットワークアーキテクチャ600などが挙げられる。ネットワーク204は、無線または有線接続を使用して通信またはデータ転送を容易くすることができる。一実施形態では、ネットワーク204は、計算装置202およびサーバ206の間の通信を容易くすることができる。
図3は、ソフトウェア製品を更新するための例示的なコンピュータ実装方法300の流れ図である。図3に示されるステップは、任意の適切なコンピュータ実行可能コードおよび/または計算システムによって実施することができる。いくつかの実施形態では、図3に示されるステップは、図1のシステム100および/または図2のシステム200の構成要素の1つまたは複数によって実施することができる。例えば、ステップ302で、インターフェースモジュール104が、計算デバイス210の一部として、第1のバージョンのソフトウェア製品に第2のバージョンのソフトウェア製品を上書きしてインストールすることを求める要求を受信することがある。いくつかの実施形態では、この要求は、遠隔アプリケーションから受信されることがある。例えば、第2のバージョンのソフトウェア製品を展開するサーバが、ソフトウェア製品のインストールを要求することがある。また、この要求は、第2のバージョンのソフトウェア製品を含むインストールパッケージからの要求であることもある。追加または代替として、この要求は、情報技術(「IT」)管理者または他のユーザから受信されることがある。
FIG. 3 is a flowchart of an exemplary computer-implemented
本明細書で使用するとき、語句「ソフトウェア製品」は、計算システム上にインストールされて実行されるようにプログラムされた任意のソフトウェアアプリケーション、実行可能なファイル、インストールパッケージ、または他のコンピュータ実行可能コードを表す。ソフトウェア製品としては、限定はしないが、ワードプロセッサ、スプレッドシート、生産性向上ソフトウェア、セキュリティソフトウェア(アンチウイルスプログラム、ファイアウォール、ペアレンタルコントロールソフトウェア、データ損失防止ソフトウェアなど)、および様々な他のタイプのソフトウェアプログラムが挙げられる。語句「第1のバージョンのソフトウェア製品」および「第2のバージョンのソフトウェア製品」は、同じ会社からの同じソフトウェアプログラムのより古いバージョンおよびより新しいバージョンをそれぞれ表すことがある。例えば、第1のバージョンのソフトウェア製品は、2008年版のアンチウイルスプログラムであることがあり、第2のバージョンのソフトウェア製品は、2009年版の同じプログラムであることがある。 As used herein, the phrase “software product” refers to any software application, executable file, installation package, or other computer-executable code that is programmed to be installed and executed on a computing system. Represents. Software products include but are not limited to word processors, spreadsheets, productivity software, security software (anti-virus programs, firewalls, parental control software, data loss prevention software, etc.), and various other types of software programs Is mentioned. The phrases “first version software product” and “second version software product” may represent an older version and a newer version of the same software program from the same company, respectively. For example, the first version of the software product may be a 2008 version of an anti-virus program and the second version of the software product may be a 2009 version of the same program.
あるいは、第1のバージョンと第2のバージョンのソフトウェア製品は、同様の機能を実施する異なるプログラムでもよい。例えば、第1のバージョンのソフトウェア製品は、第1のソフトウェア会社によって開発されたファイアウォールアプリケーションであることがあり、第2のバージョンのソフトウェア製品は、第2のソフトウェア会社によって開発されたファイアウォールアプリケーションであることがある。他の実施形態では、第1のバージョンと第2のバージョンのソフトウェア製品は、同じ会社からの異なるが関連したプログラムでよい。例えば、第1のバージョンのソフトウェア製品は、基本機能を備えたベーシックコンピュータセキュリティプログラム(例えばアンチウイルスプログラム)であることがあり、第2のバージョンのソフトウェア製品は、より高度な機能を備えた高度なコンピュータセキュリティプログラム(例えばプログラムのインターネットセキュリティスイート)であることがある。 Alternatively, the first and second version software products may be different programs that perform similar functions. For example, the first version of the software product may be a firewall application developed by a first software company, and the second version of the software product is a firewall application developed by a second software company. Sometimes. In other embodiments, the first version and the second version of the software product may be different but related programs from the same company. For example, the first version of the software product may be a basic computer security program (e.g., an anti-virus program) with basic functions, and the second version of the software product may be an advanced software with more advanced functions. It may be a computer security program (eg an Internet security suite of programs).
本明細書で使用するとき、「第1のバージョンのソフトウェア製品に第2のバージョンのソフトウェア製品を上書きしてインストールする」は、一般に、1つのバージョンのソフトウェア製品を別のバージョンのソフトウェア製品に上書きインストールすることを意味する。上書きインストールとは、一般に、1つのバージョンのソフトウェアアプリケーションをインストールし、前のバージョンのソフトウェアアプリケーションを消去するためのインストールプロセスを表す。対照的に、他のインストールプロセスは、1つのバージョンの製品を別のバージョンの製品と置き換えることを含まないことがある。そのようなインストールプロセスは、既存のソフトウェア製品用のパッチをインストールし、2つのバージョンのソフトウェア製品を並行してインストールすることを含む。上書きインストールは、これらのパッチインストールおよび並行インストールは表さない。 As used herein, “installing a first version of a software product over a second version of a software product” generally overwrites one version of the software product with another version of the software product. Means to install. Overwrite installation generally refers to an installation process for installing one version of a software application and erasing the previous version of the software application. In contrast, other installation processes may not involve replacing one version of a product with another version of the product. Such an installation process includes installing a patch for an existing software product and installing two versions of the software product in parallel. Overwrite installation does not represent these patch installations and parallel installations.
上書きインストールプロセスは、一度に1つしかソフトウェア製品のインスタンスを動作させることができない状況で使用されることがある。例えば、多くの計算システムは、一度に1つのファイアウォールソフトウェアプログラムしか動作させないことがある。インスタンスを1つしか動作させることができない他のインストール状況としては、2つの同様のソフトウェア製品のインストールが、システムを不安定にすることがある競合および/または他の問題を生じることがあるような状況が挙げられる。 The overwrite installation process may be used in situations where only one instance of the software product can be run at a time. For example, many computing systems may only run one firewall software program at a time. Other installation situations where only one instance can run are such that the installation of two similar software products can cause conflicts and / or other problems that can cause the system to become unstable. The situation can be mentioned.
図3に戻ると、ステップ304で、インストールモジュール106が、計算デバイス210の一部として、第1のバージョンのソフトウェア製品が動作しているままで、第2のバージョンのソフトウェア製品を休止状態でインストールすることがある。インストールモジュール106は、以下でより詳細に説明する様々な方法で第2のバージョンをインストールすることができる。本明細書で使用するとき、語句「休止状態」は、少なくとも一部インストールされているが実行されていないソフトウェア製品を表す。インストールモジュール106は、第1のバージョンのソフトウェア製品が動作しているときに第1のバージョンのソフトウェア製品と干渉しないように第2のバージョンのソフトウェア製品をインストールすることによって、第2のバージョンのソフトウェア製品を休止状態でインストールすることがある。 Returning to FIG. 3, at step 304, the install module 106 installs the second version of the software product as a part of the computing device 210 while the first version of the software product remains operational. There are things to do. The install module 106 can install the second version in various ways described in more detail below. As used herein, the phrase “hibernation” refers to a software product that is at least partially installed but not running. The installation module 106 installs the second version of the software product by installing the second version of the software product so that it does not interfere with the first version of the software product when the first version of the software product is operating. The product may be installed in hibernation mode.
いくつかの実施形態では、インストールモジュール106は、第2のバージョンのソフトウェア製品の1つまたは複数のファイルをインストールすることによって、第2のバージョンのソフトウェア製品をインストールすることがある。例えば、インストールモジュール106は、第2のバージョンのソフトウェア製品の1つまたは複数の実行可能なファイルおよび/または他のコードをインストールすることがある。また、インストールモジュール106は、第2のバージョンのソフトウェア製品の1つまたは複数の他のコンポーネントをインストールすることもある。例えば、インストールモジュール106は、第2のバージョンのソフトウェア製品の1つまたは複数のサービス、ドライバ、レジストリキー、および/または他のコンポーネントをインストールすることがある。 In some embodiments, the installation module 106 may install the second version of the software product by installing one or more files of the second version of the software product. For example, the install module 106 may install one or more executable files and / or other code for the second version of the software product. The install module 106 may also install one or more other components of the second version of the software product. For example, the installation module 106 may install one or more services, drivers, registry keys, and / or other components of the second version of the software product.
インストールモジュール106は、第1のバージョンのソフトウェア製品の実行に影響を及ぼさない第2のバージョンソフトウェア製品のファイルおよび他のコンポーネントのみをインストールし、インストールされると第1のバージョン製品の実行に影響を及ぼすことがある第2のバージョンのソフトウェア製品の1つまたは複数のコンポーネントのインストールを見合わせることによって、第2のバージョンのソフトウェア製品を一部インストールすることがある。インストールモジュール106は、様々な方法で、第1のバージョンのソフトウェア製品の実行に影響を及ぼさない第2のバージョンのソフトウェア製品のコンポーネントを識別することができる。いくつかの実施形態では、インストールモジュール106は、第1のバージョンのソフトウェア製品が動作しているままで安全にインストールできるコンポーネントを識別するリストまたは他のデータベースを読み取ることによって、そのようなコンポーネントを識別することがある。 The install module 106 installs only the files and other components of the second version software product that do not affect the execution of the first version of the software product, and when installed, affects the execution of the first version of the product. A part of the second version of the software product may be installed by forcing the installation of one or more components of the second version of the software product that may be affected. The installation module 106 can identify components of the second version of the software product that do not affect the execution of the first version of the software product in various ways. In some embodiments, the installation module 106 identifies such components by reading a list or other database that identifies components that can be safely installed while the first version of the software product is running. There are things to do.
他の実施形態では、インストールモジュール106は、新規のコンポーネントに対応するコンポーネントを第1のバージョンのソフトウェア製品が利用しているかどうか判断することによって、安全にインストールできる第2のバージョンのソフトウェア製品の1つまたは複数のコンポーネントを自動的に識別することがある。例えば、インストールモジュール106は、第1のバージョンのソフトウェア製品によって現在使用されているドライバの上書きを見合わせることがある。 In other embodiments, the install module 106 determines whether one of the second version of the software product that can be safely installed by determining whether the first version of the software product is utilizing a component corresponding to the new component. One or more components may be automatically identified. For example, the install module 106 may forego overwriting the driver currently used by the first version of the software product.
いくつかの実施形態によれば、インストールモジュール106は、第1のバージョンと第2のバージョンのソフトウェア製品の1組の相違を識別することがある。1組の相違は、第1のバージョンと第2のバージョンのソフトウェア製品の1つまたは複数の相違を識別するリスト、差分ファイル、命令セット、および/または任意の他の情報セットであることがある。1組の相違は、1つまたは複数のレジストリキー、1つまたは複数のサービス、1つまたは複数のショートカット、および/または第1のバージョンと第2のバージョンのソフトウェア製品をスワップするために後の時点で(例えばリブート後に)行う必要がある1つまたは複数のアクションを識別することがある。1組の相違は、追加または代替として、1つまたは複数のレジストリキー、1つまたは複数のサービス、1つまたは複数のショートカット、および/または第1のバージョンのソフトウェア製品が動作しているままで行うことができる1つまたは複数のアクション(すなわち、前述したように、第1のバージョンのソフトウェア製品の実行に影響を及ぼさないアクション)を識別することがある。 According to some embodiments, the installation module 106 may identify a set of differences between the first version and the second version of the software product. The set of differences may be a list, a difference file, an instruction set, and / or any other information set that identifies one or more differences between the first version and the second version of the software product. . One set of differences is to later swap one or more registry keys, one or more services, one or more shortcuts, and / or a first and second version software product. One or more actions may need to be identified at a time (eg, after reboot). One set of differences may additionally or alternatively remain with one or more registry keys, one or more services, one or more shortcuts, and / or the first version of the software product running. One or more actions that may be performed (ie, actions that do not affect the execution of the first version of the software product as described above) may be identified.
インストールモジュール106は、第1のバージョンのソフトウェア製品の1つまたは複数の設定を保存することができる。例えば、インストールモジュール106は、第1のバージョンのソフトウェア製品の1つまたは複数の設定を読み取って、それらの設定を、設定データベース124などのデータベースに保存することができる。次いで、スワッピングモジュール108が、データベースからそれらの設定を読み取って、第2のバージョンのソフトウェア製品にインポートすることができる。したがって、第1のバージョンのソフトウェア製品の1つまたは複数の設定、例えばユーザ定義設定および/または他の設定を、第2のバージョンのソフトウェア製品で保つことができる。
The installation module 106 can store one or more settings of the first version of the software product. For example, the installation module 106 can read one or more settings of the first version of the software product and save the settings in a database, such as the
インストールの完了後(またはインストール前もしくはインストール中)、インストールモジュール106が、第1のバージョンと第2のバージョンのソフトウェア製品をスワップするサービスを登録することがある。スワッピングモジュール108を含み得る登録されるサービスは、実行モードプロセス(すなわちchkdskプロセス)、カーネルドライバ、システムサービス、および/または任意の他の適切なサービスでよい。
After installation is complete (or before or during installation), the install module 106 may register a service that swaps the first and second version software products. A registered service that may include the
ステップ306で、スワッピングモジュール108が、計算デバイス210の一部として、第1のバージョンと第2のバージョンのソフトウェア製品をスワップすることがある。スワッピングモジュール108は、様々な方法で第1のバージョンと第2のバージョンのソフトウェア製品をスワップすることができる。例えば、スワッピングモジュール108は、第2のバージョンのソフトウェア製品を作動させ、第1のバージョンのソフトウェア製品を作動停止させることによって、第1のバージョンと第2のバージョンのソフトウェア製品をスワップすることができる。本明細書で使用するとき、語句「第2のバージョンのソフトウェア製品を作動させる」は、第2のバージョンのソフトウェア製品の1つまたは複数のプロセスを動作させる、および/または第2のバージョンのソフトウェア製品の1つまたは複数のプロセスが動作するように準備する任意の手順を全般的に表す。逆に、語句「第1のバージョンのソフトウェア製品を作動停止させる」は、第1のバージョンのソフトウェア製品の1つまたは複数のプロセスの実行を停止させる、第1のバージョンのソフトウェア製品の実行を終了する準備をする、および/または第1のバージョンのソフトウェア製品が終了後に再始動しないように第1のバージョンのソフトウェア製品を変更する任意の手順を全般的に表す。
At
いくつかの実施形態では、スワッピングモジュール108は、第1のバージョンのソフトウェア製品が動作しているままで、第1のバージョンのソフトウェア製品の1つまたは複数のコンポーネントの状態を、それら1つまたは複数のコンポーネントがリブート後に再始動しないように変更することがある。例えば、スワッピングモジュール108は、第1のバージョンのソフトウェア製品での1つまたは複数のサービスおよび/またはドライバの状態を、それらがシステムリブート後に動作しないように変更することがある。
In some embodiments, the
スワッピングモジュール108は、第2のバージョンのソフトウェア製品において使用できるように第1のバージョンのソフトウェア製品の1つまたは複数のコンポーネントを更新するために、事前に識別されている第1のバージョンと第2のバージョンのソフトウェア製品の1組の相違を使用することがある。例えば、スワッピングモジュール108は、(例えば、新規のキーを追加する、古いキーを削除する、および/または既存のキーを変更することによって)第2のバージョンのソフトウェア製品の1つまたは複数のレジストリキーを更新することがある。追加または代替として、スワッピングモジュール108は、第2のバージョンのソフトウェア製品のいくつかまたはすべてのサービスおよび/またはドライバを更新(例えば追加、削除、および/または変更)することがある。また、スワッピングモジュール108は、第2のバージョンのソフトウェア製品の1つまたは複数のショートカット(シンボリックリンクを含む)を更新することもある。さらに、スワッピングモジュール108は、インストールプロセス外で計算システムを修正することができるカスタム実行可能ファイルなど、1つまたは複数のカスタムアクションを動作させることもある。
The
いくつかの実施形態によれば、スワッピングモジュール108は、第1のバージョンのソフトウェア製品が作動停止されて第2のバージョンのソフトウェア製品が作動された後に、第1のバージョンのソフトウェア製品をアンインストールおよび/またはその他の方法でクリーンアップすることがある。例えば、スワッピングモジュール108は、第1のバージョンのソフトウェア製品と関連付けられる任意のファイルおよび他のデータを消去することがある。
According to some embodiments, the
図4は、セキュリティソフトウェア製品を更新するための別の例示的なコンピュータ実装方法の流れ図であり、そのようなソフトウェア製品は、例えば、アンチウイルスアプリケーション、ファイアウォールアプリケーション、データ損失防止アプリケーション、および/または、計算システムを保護するためおよび/または計算システム上に記憶されたデータを保護するための任意の他のアプリケーションである。図4に示されるステップは、任意の適切なコンピュータ実行可能コードおよび/または計算システムによって実施することができる。いくつかの実施形態では、図4に示されるステップは、図1のシステム100および/または図2のシステム200の構成要素の1つまたは複数によって実施することができる。例えば、ステップ402で、インターフェースモジュール104が、計算デバイス210の一部として、第1のバージョンのセキュリティソフトウェア製品に第2のバージョンのセキュリティソフトウェア製品を上書きしてインストールすることを求める要求を受信することがある。ステップ404で、インストールモジュール106が、第1のバージョンのセキュリティソフトウェア製品の実行に影響を及ぼさない第2のバージョンのセキュリティソフトウェア製品の1つまたは複数のコンポーネントをインストールすることがある。ステップ402および404は、ステップ302および304と同様であり、図3で説明した方法の1つまたは複数で行うことができる。
FIG. 4 is a flow diagram of another exemplary computer-implemented method for updating a security software product, such as an anti-virus application, a firewall application, a data loss prevention application, and / or Any other application for protecting a computing system and / or protecting data stored on a computing system. The steps shown in FIG. 4 may be performed by any suitable computer executable code and / or computing system. In some embodiments, the steps shown in FIG. 4 may be performed by one or more of the components of
ステップ406で、インストールモジュール106が、第1のバージョンのソフトウェア製品の1つまたは複数のコンポーネントの状態を、それら1つまたは複数のコンポーネントがリブート後に再始動しないように変更することがある。例えば、インストールモジュール106は、第1のバージョンのソフトウェア製品の1つまたは複数のサービスおよび/またはドライバを、それらがシステムリブート後に動作しないように変更することがある。そのようなプロセスは、アンロードおよび/または停止することができないサービスおよび/またはドライバに特に有用であることがある。あるいは、リブート後にサービスおよびドライバが始動を許される前に、実行モードプロセスを使用してサービスおよびドライバが更新される場合には、リブート前にサービスおよびドライバを変更する必要はないことがある。
At
ステップ408で、インストールモジュール106が、第1のバージョンのソフトウェア製品によって保護されている計算システムをリブートさせることがある。いくつかの実施形態では、リブートは、第2のバージョンのソフトウェア製品をインストールした後であって第2のバージョンのソフトウェア製品を作動させる前に行われることがある。いくつかの実施形態では、セキュリティ脅威から計算システムを保護するために、第2のバージョンのソフトウェア製品は、計算システムの1つまたは複数のネットワークアダプタが有効化される前にリブートプロセス中に作動されることがある。例えば、スワッピングモジュール108が、第2のバージョンのソフトウェア製品を、ブートプロセスにおいて早期に(すなわちネットワークアダプタが作動される前に)作動させることがある。あるいは、スワッピングモジュール108は、第2のバージョンのソフトウェア製品が有効化されるまで、計算システムの1つまたは複数のネットワークアダプタを無効化しておくことがある。また、スワッピングモジュール108は、第1のバージョンと第2のバージョンのソフトウェア製品がスワップされる間に、計算システムを保護するための任意の他の適切なアクションを行うこともある。
At step 408, the installation module 106 may cause the computing system protected by the first version of the software product to reboot. In some embodiments, the reboot may occur after installing the second version of the software product and before operating the second version of the software product. In some embodiments, in order to protect the computing system from security threats, the second version of the software product is activated during the reboot process before one or more network adapters of the computing system are enabled. Sometimes. For example, the
いくつかの実施形態では、第1のバージョンのソフトウェア製品は、リブートの直後には無効化されないことがある。例えば、第1のリブート後に、第1のバージョンのソフトウェア製品からのセキュリティドライバ(例えばアンチウイルスおよび/またはファイアウォールドライバなど)が動作することがある。第1のリブート中、実行モードアプリケーションが動作することがあり、これは、第1のバージョンのソフトウェア製品の1つまたは複数のコンポーネントを第2のバージョンのソフトウェア製品向けに更新することができる。例えば、実行モードアプリケーションは、それらの現行のインスタンスに影響を及ぼすことなくポイント変更することができる。計算システムのオペレーティングシステムが、完全には機能しない(すなわち第1のリブート後に完全にはロードされていない)ことがある。また、ソフトウェア製品も、このリブート後に完全にはロードされていないことがある。第1のバージョンのソフトウェア製品のコンポーネントが更新された後、第1のバージョンのソフトウェア製品は、無効化されるように設定されることがあり、第2のバージョンのソフトウェア製品は、第2のリブート後に動作するように有効化されるように設定されることがある。この時点で、実行モードアプリケーションが第2のリブートを強制することがある。そのような状況では、第1のバージョンのソフトウェア製品は、第2のリブート後まで動作し続けることができる。 In some embodiments, the first version of the software product may not be disabled immediately after reboot. For example, after a first reboot, a security driver (eg, an anti-virus and / or firewall driver, etc.) from a first version software product may work. During the first reboot, the execution mode application may run, which may update one or more components of the first version of the software product for the second version of the software product. For example, run mode applications can change points without affecting their current instances. The operating system of the computing system may not be fully functional (ie not fully loaded after the first reboot). Also, the software product may not be fully loaded after this reboot. After the components of the first version of the software product are updated, the first version of the software product may be set to be disabled, and the second version of the software product may be set to the second reboot. May be set to be activated to work later. At this point, the execution mode application may force a second reboot. In such a situation, the first version of the software product can continue to operate until after the second reboot.
ステップ410で、スワッピングモジュール108が、第1のバージョンと第2のバージョンのセキュリティソフトウェア製品をスワップすることがある。ステップ410は、図3のステップ306と同様である。したがって、ステップ306の論述で開示したプロセスの1つまたは複数を、ステップ410を実施するためにも使用することができる。
At
本開示の実施形態は、計算システムが脆弱になることがないように、既存のバージョンのセキュリティ製品に新規のバージョンのセキュリティ製品を上書きしてインストールすることを可能にすることができる。例えば、本明細書に記載するインストールプロセスは、第1のセキュリティソフトウェアアプリケーションの作動停止と第2のセキュリティソフトウェアアプリケーションの作動との間のダウンタイムがないように実施することができる。 Embodiments of the present disclosure may allow an existing version of a security product to be installed over a new version of the security product so that the computing system is not vulnerable. For example, the installation process described herein can be implemented such that there is no downtime between the deactivation of the first security software application and the activation of the second security software application.
図5は、本願で説明および/または図示する実施形態の1つまたは複数を実施することができる例示的な計算システム510のブロック図である。計算システム510は、コンピュータ可読命令を実行することができる任意のシングルプロセッサまたはマルチプロセッサ計算装置またはシステムを広範に表す。計算システム510の例としては、限定はしないが、ワークステーション、ラップトップコンピュータ、クライアント側の端末、サーバ、分散コンピューティングシステム、ハンドヘルド装置、または任意の他の計算システムもしくは装置が挙げられる。その最も基本的な構成では、計算システム510は、少なくとも1つのプロセッサ514と、システムメモリ516とを含むことができる。
FIG. 5 is a block diagram of an
処理装置514は、データを処理することができる、または命令を解釈および実行することができる任意の種類または形態の処理ユニットを全般的に表す。いくつかの実施形態では、処理装置514は、ソフトウェアアプリケーションまたはモジュールから命令を受信することがある。これらの命令は、本願で説明および/または図示する1つまたは複数の例示的実施形態の機能を処理装置514に実施させることができる。例えば、処理装置514は、単独で、または他の要素と組み合わせて、本明細書で述べる受信、インストール、スワッピング、リブート、無効化、見合わせ、変更、および/またはアンインストールステップの1つまたは複数を実施することができ、および/またはそれらを実施するための手段であってよい。また、処理装置514は、本願で説明および/または図示する任意の他のステップ、方法、またはプロセスを実施することもでき、および/またはそれらを実施するための手段であってもよい。
システムメモリ516は、データおよび/または他のコンピュータ可読命令を記憶することができる任意の種類または形態の揮発性または不揮発性記憶装置または媒体を全般的に表す。システムメモリ516の例としては、限定はしないが、ランダムアクセスメモリ(RAM)、読み出し専用メモリ(ROM)、フラッシュメモリ、または任意の他の適切なメモリ装置が挙げられる。必ずそうである必要はないが、いくつかの実施形態では、計算システム510は、揮発性メモリユニット(例えばシステムメモリ516など)と不揮発性メモリ装置(例えば以下で詳細に説明する主記憶装置532など)の両方を含むこともある。一例では、図1からのモジュール102の1つまたは複数をシステムメモリ516にロードすることができる。
System memory 516 generally represents any type or form of volatile or non-volatile storage device or medium capable of storing data and / or other computer-readable instructions. Examples of system memory 516 include, but are not limited to, random access memory (RAM), read only memory (ROM), flash memory, or any other suitable memory device. Although not necessarily so, in some embodiments,
いくつかの実施形態では、例示的な計算システム510は、プロセッサ514およびシステムメモリ516に加えて、1つまたは複数の構成要素または要素を含むこともできる。例えば、図5に示されるように、計算システム510は、メモリコントローラ518と、入出力(I/O)制御装置520と、通信インターフェース522とを含むことがあり、これらはそれぞれ通信インフラストラクチャ512を介して相互接続されることがある。通信インフラストラクチャ512は、計算装置の1つまたは複数の構成要素間の通信を容易くすることができる任意の種類または形態のインフラストラクチャを全般的に表す。通信インフラストラクチャ512の例としては、限定はしないが、通信バス(ISA、PCI、PCIe、または同様のバスなど)およびネットワークが挙げられる。
In some embodiments,
メモリ制御装置518は、メモリもしくはデータを取り扱うことができる、または計算システム510の1つまたは複数の構成要素間の通信を制御することができる任意の種類または形態のデバイスを全般的に表す。例えば、いくつかの実施形態では、メモリ制御装置518は、通信インフラストラクチャ512を介する処理装置514と、システムメモリ516と、I/O制御装置520との間の通信を制御することができる。いくつかの実施形態では、メモリ制御装置は、単独で、または他の要素と組み合わせて、受信、インストール、スワッピング、リブート、無効化、見合わせ、変更、および/またはアンインストールなど、本願で説明および/または図示するステップまたは機能の1つまたは複数を実施することができ、および/またはそれらを実施するための手段であってよい。
I/O制御装置520は、計算デバイスの入出力機能を調整および/または制御することができる任意の種類または形態のモジュールを全般的に表す。例えば、いくつかの実施形態では、I/O制御装置520は、処理装置514、システムメモリ516、通信インターフェース522、ディスプレイアダプタ526、入力インターフェース530、および記憶インターフェース534など、計算システム510の1つまたは複数の要素間でのデータの転送を制御する、または容易くすることができる。I/O制御装置520は、単独で、または他の要素と組み合わせて、本明細書で述べる受信、インストール、スワッピング、リブート、無効化、自制、変更、および/またはアンインストールステップの1つまたは複数を実施するために使用することができ、および/またはそれらを実施するための手段であってよい。また、I/O制御装置520は、本開示に記載する他のステップおよび機能を実施するために使用することもでき、および/またはそれらを実施するための手段であってもよい。
The I /
通信インターフェース522は、例示的な計算システム510と1つまたは複数の追加の装置との間の通信を容易くすることができる任意の種類または形態の通信装置またはアダプタを広範に表す。例えば、いくつかの実施形態では、通信インターフェース522は、計算システム510と、追加の計算システムを含むプライベートネットワークまたはパブリックネットワークとの間の通信を容易くすることができる。通信インターフェース522の例としては、限定はしないが、有線ネットワークインターフェース(ネットワークインターフェースカードなど)、無線ネットワークインターフェース(無線ネットワークインターフェースカードなど)、モデム、および任意の他の適切なインターフェースが挙げられる。少なくとも1つの実施形態では、通信インターフェース522は、インターネットなどのネットワークへの直接のリンクを介して遠隔サーバへの直接的な接続を提供することができる。また、通信インターフェース522は、そのような接続を、例えばローカルエリアネットワーク(イーサネットネットワークなど)、パーソナルエリアネットワーク、電話もしくはケーブルネットワーク、セルラ電話接続、衛星データ接続、または任意の他の適切な接続を介して間接的に提供することもできる。
いくつかの実施形態では、通信インターフェース522は、外部バスまたは通信チャネルを介する計算システム510と1つまたは複数の追加のネットワークまたは記憶デバイスとの間の通信を容易くするように構成されたホストアダプタを表すこともある。ホストアダプタの例としては、限定はしないが、SCSIホストアダプタ、USBホストアダプタ、IEEE1394ホストアダプタ、SATAおよびeSATAホストアダプタ、ATAおよびPATAホストアダプタ、ファイバチャネルインターフェースアダプタ、イーサネットアダプタなどが挙げられる。また、通信インターフェース522は、計算システム510が分散コンピューティングまたは遠隔コンピューティングに従事できるようにすることもある。例えば、通信インターフェース522は、命令を実行するために、遠隔デバイスから命令を受信する、または遠隔デバイスに命令を送信することがある。いくつかの実施形態では、通信インターフェース522は、単独で、または他の要素と組み合わせて、本明細書で開示する受信、インストール、スワッピング、リブート、無効化、自制、変更、および/またはアンインストールステップの1つまたは複数を実施することができ、および/またはそれらを実施するための手段であってよい。また、通信インターフェース522は、本開示に記載する他のステップおよび機能を実施するために使用することもでき、および/またはそれらを実施するための手段であってもよい。
In some embodiments, the
図5に示されるように、計算システム510は、ディスプレイアダプタ526を介して通信インフラストラクチャ512に結合された少なくとも1つのディスプレイ装置524を含むこともある。ディスプレイ装置524は、ディスプレイアダプタ526によって転送された情報を視覚的に表示することができる任意の種類または形態の装置を全般的に表す。同様に、ディスプレイアダプタ526は、ディスプレイ装置524上に表示するために通信インフラストラクチャ512から(または当技術分野で知られているフレームバッファから)グラフィック、テキスト、および他のデータを転送するように構成された任意の種類または形態の装置を全般的に表す。
As shown in FIG. 5, the
図5に示されるように、例示的な計算システム510は、入力インターフェース530を介して通信インフラストラクチャ512に結合された少なくとも1つの入力デバイス528を含むこともある。入力デバイス528は、コンピュータまたは人によって生成された入力を例示的な計算システム510に提供することができる任意の種類または形態の入力デバイスを全般的に表す。入力デバイス528の例としては、限定はしないが、キーボード、ポインティングデバイス、音声認識デバイス、または任意の他の入力デバイスが挙げられる。少なくとも1つの実施形態では、入力デバイス528は、単独で、または他の要素と組み合わせて、本明細書で開示する受信、インストール、スワッピング、リブート、無効化、自制、変更、および/またはアンインストールステップの1つまたは複数を実施することができ、および/またはそれらを実施するための手段であってよい。また、入力デバイス528は、本開示に記載する他のステップおよび機能を実施するために使用することもでき、および/またはそれらを実施するための手段であってもよい。
As shown in FIG. 5, the
図5に示されるように、例示的な計算システム510は、記憶インターフェース534を介して通信インフラストラクチャ512に結合された主記憶装置532およびバックアップ記憶装置533を含むこともできる。記憶装置532および533は、データおよび/または他のコンピュータ可読命令を記憶することができる任意の種類または形態の記憶装置または媒体を全般的に表す。例えば、記憶装置532および533は、磁気ディスクドライブ(例えばいわゆるハードドライブ)、フロッピーディスクドライブ、磁気テープドライブ、光ディスクドライブ、フラッシュドライブなどでよい。記憶インターフェース534は、記憶装置532および533と計算システム510の他の構成要素との間でデータを転送するための任意の種類または形態のインターフェースまたは装置を全般的に表す。一例では、図1からのデータベース120が主記憶装置532に記憶されることがある。
As shown in FIG. 5, the
いくつかの実施形態では、記憶装置532および533は、コンピュータソフトウェア、データ、または他のコンピュータ可読情報を記憶するように構成された着脱可能な記憶ユニットからの読み出しおよび/またはそのような記憶ユニットへの書き込みを行うように構成されることがある。適切な着脱可能な記憶ユニットの例としては、限定はしないが、フロッピーディスク、磁気テープ、光ディスク、フラッシュメモリ装置などが挙げられる。また、記憶装置532および533は、コンピュータソフトウェア、データ、または他のコンピュータ可読命令を計算システム510にロードできるようにするための他の同様の構造または装置を含むこともできる。例えば、記憶装置532および533は、ソフトウェア、データ、または他のコンピュータ可読情報の読み出しおよび書き込みを行うように構成されることがある。また、記憶装置532および533は、計算システム510の一部でもよく、または他のインターフェースシステムによってアクセスされる別個の装置でもよい。
In some embodiments,
いくつかの実施形態では、記憶デバイス532および533は、例えば、単独で、または他の要素と組み合わせて、本明細書で開示する受信、インストール、スワッピング、リブート、無効化、自制、変更、および/またはアンインストールステップの1つまたは複数を実施するために使用することができ、および/またはそれらを実施するための手段であってよい。また、記憶デバイス532および533は、本開示に記載する他のステップおよび機能を実施するために使用することもでき、および/またはそれらを実施するための手段であってもよい。
In some embodiments,
多くの他の装置またはサブシステムを計算システム510に接続することができる。逆に、図5に示される構成要素および装置は、本願で説明および/または図示する実施形態を実施するためにすべて揃っていなければならないわけではない。また、上で言及した装置およびサブシステムは、図5に示されるのとは異なる方法で相互接続されることもある。また、計算システム510は、任意の数のソフトウェア、ファームウェア、および/またはハードウェア構成を採用することができる。例えば、本明細書で開示する例示的実施形態の1つまたは複数を、コンピュータ可読媒体上にコンピュータプログラム(コンピュータソフトウェア、ソフトウェアアプリケーション、コンピュータ可読命令、またはコンピュータ制御論理とも呼ぶ)として符合化することができる。語句「コンピュータ可読媒体」は、コンピュータ可読命令を記憶または担持することができる任意の形態の装置、担体、または媒体を全般的に表す。コンピュータ可読媒体の例としては、限定はしないが、搬送波など伝送型媒体や、物理的媒体、例えば磁気記憶媒体(例えばハードディスクドライブおよびフロッピーディスク)、光記憶媒体(例えばCD−ROMまたはDVD−ROM)、電子記憶媒体(例えばソリッドステートドライブおよびフラッシュ媒体)、および他の配信システムが挙げられる。
Many other devices or subsystems can be connected to the
コンピュータプログラムを含むコンピュータ可読媒体は、計算システム510にロードすることができる。次いで、コンピュータ可読媒体に記憶されたコンピュータプログラムの全体または一部を、システムメモリ516、および/または記憶装置532および533の様々な部分に記憶することができる。プロセッサ514によって実行されるとき、計算システム510にロードされたコンピュータプログラムは、本願で説明および/または図示する1つまたは複数の例示的実施形態の機能をプロセッサ514に実施させることができ、および/またはプロセッサ514を、そのような機能を実施するための手段にすることができる。追加または代替として、本願で説明および/または図示する例示的実施形態の1つまたは複数は、ファームウェアおよび/またはハードウェアの形で実装することができる。例えば、計算システム510は、本明細書で開示する例示的実施形態の1つまたは複数を実装するように適合された特定用途向け集積回路(ASIC)として構成することができる。
Computer readable media including the computer program can be loaded into the
図6は、クライアントシステム610、620、および630、ならびにサーバ640および645をネットワーク650に結合させることができる例示的なネットワークアーキテクチャ600のブロック図である。クライアントシステム610、620、および630は、図5の例示的な計算システム510など、任意の種類または形態の計算装置またはシステムを全般的に表す。一例では、クライアントシステム610は、図1からのシステム100を含むことができる。
FIG. 6 is a block diagram of an
同様に、サーバ640および645は、様々なデータベースサービスを提供するように、および/または何らかのソフトウェアアプリケーションを実行するように構成された、アプリケーションサーバやデータベースサーバなどの計算装置またはシステムを全般的に表す。ネットワーク650は、例えばイントラネット、ワイドエリアネットワーク(WAN)、ローカルエリアネットワーク(LAN)、パーソナルエリアネットワーク(PAN)、またはインターネットを含めた任意の遠隔通信ネットワークまたはコンピュータネットワークを全般的に表す。
Similarly,
図6に示されるように、1つまたは複数の記憶装置660(1)〜(N)をサーバ640に直接取り付けることができる。同様に、1つまたは複数の記憶装置670(1)〜(N)をサーバ645に直接取り付けることができる。記憶装置660(1)〜(N)および670(1)〜(N)は、データおよび/または他のコンピュータ可読命令を記憶することができる任意の種類または形態の記憶装置または媒体を全般的に表す。いくつかの実施形態では、記憶装置660(1)〜(N)および記憶装置670(1)〜(N)は、NFS、SMB、またはCIFSなど様々なプロトコルを使用してサーバ640および645と通信するように構成されたネットワークアタッチストレージ(NAS)装置を表すことがある。
As shown in FIG. 6, one or more storage devices 660 (1)-(N) can be directly attached to the
また、サーバ640および645が、ストレージエリアネットワーク(SAN)ファブリック680に接続されることもある。SANファブリック680は、複数の記憶デバイス間の通信を容易くすることができる任意の種類または形態のコンピュータネットワークまたはアーキテクチャを全般的に表す。SANファブリック680は、サーバ640および645と複数の記憶デバイス690(1)〜(N)および/またはインテリジェント記憶アレイ695との間の通信を容易くすることができる。また、SANファブリック680は、ネットワーク650ならびにサーバ640および645を介するクライアントシステム610、620、および630と記憶デバイス690(1)〜(N)および/またはインテリジェント記憶アレイ695との間の通信を容易くすることもでき、それにより、デバイス690(1)〜(N)およびアレイ695は、クライアントシステム610、620、および630へのローカル接続デバイスのように見える。記憶デバイス660(1)〜(N)および記憶デバイス670(1)〜(N)と同様に、記憶デバイス690(1)〜(N)およびインテリジェント記憶アレイ695は、データおよび/または他のコンピュータ可読命令を記憶することができる任意の種類または形態の記憶デバイスまたは媒体を全般的に表す。
いくつかの実施形態では、図5の例示的な計算システム510を参照すると、図5の通信インターフェース522などの通信インターフェースを使用して、各クライアントシステム610、620、および630とネットワーク650の間の接続性を提供することができる。クライアントシステム610、620、および630は、例えばウェブブラウザや他のクライアントソフトウェアを使用してサーバ640および645上の情報にアクセスすることができることがある。そのようなソフトウェアは、クライアントシステム610、620、および630が、サーバ640、サーバ645、記憶デバイス660(1)〜(N)、記憶デバイス670(1)〜(N)、記憶デバイス690(1)〜(N)、またはインテリジェント記憶アレイ695によってホストされたデータにアクセスできるようにすることがある。図6は、データを交換するための(インターネットなどの)ネットワークの使用を示すが、本願で説明および/または図示する実施形態は、インターネットまたは任意の特定のネットワークベース環境に限定されない。
In some embodiments, referring to the
少なくとも1つの実施形態では、本明細書で開示した1つまたは複数の例示的実施形態の全部または一部をコンピュータプログラムとして符合化し、サーバ640、サーバ645、記憶デバイス660(1)〜(N)、記憶デバイス670(1)〜(N)、記憶デバイス690(1)〜(N)、インテリジェント記憶アレイ695、またはそれらの任意の組合せにロードし、それらによって実行することができる。また、本明細書で開示する1つまたは複数の例示的実施形態の全部または一部をコンピュータプログラムとして符合化し、サーバ640に記憶し、サーバ645によって動作させ、ネットワーク650を介してクライアントシステム610、620、および630に分散することもできる。したがって、ネットワークアーキテクチャ600は、単独で、または他の要素と組み合わせて、本明細書で開示する受信、インストール、スワッピング、リブート、無効化、自制、変更、および/またはアンインストールステップの1つまたは複数を実施することができ、および/またはそれらを実施するための手段であってよい。また、ネットワークアーキテクチャ600は、本開示に記載する他のステップおよび機能を実施するために使用することもでき、および/またはそれらを実施するための手段であってもよい。
In at least one embodiment, all or a portion of one or more exemplary embodiments disclosed herein are encoded as a computer program to create a
上で詳述したように、計算システム510、および/またはネットワークアーキテクチャ600の1つまたは複数の構成要素は、単独で、または他の要素と組み合わせて、ソフトウェア製品を更新するための例示的な方法の1つまたは複数のステップを実施することができ、および/またはそれらを実施するための手段であってよい。
As detailed above, one or more components of
前述の開示では、特定のブロック図、流れ図、および例を使用して様々な実施形態を記載してきたが、本願で説明および/または図示した各ブロック図の構成要素、流れ図のステップ、操作、および/または構成要素は、多様なハードウェア構成、ソフトウェア構成、またはファームウェア構成(またはそれらの任意の組合せ)を使用して、個別に、および/またはまとめて実装することができる。さらに、他の構成要素に含まれた構成要素の開示はどれも、同じ機能を実現するために多くの他のアーキテクチャを実装することができるので、例示的な性質のものとみなすべきである。 Although the foregoing disclosure has described various embodiments using specific block diagrams, flowcharts, and examples, the components of each block diagram described and / or illustrated herein, the steps of the flowchart, operations, and The components may be implemented individually and / or collectively using a variety of hardware configurations, software configurations, or firmware configurations (or any combination thereof). Moreover, any disclosure of components contained in other components should be considered exemplary in nature as many other architectures can be implemented to achieve the same functionality.
本願で説明および/または図示したプロセスパラメータおよびステップのシーケンスは、単に例として提示したものであり、望みに応じて変えることができる。例えば、本明細書で図示および/または説明したステップは、特定の順序で図示または論述していることがあるが、これらのステップは、必ずしも図示または論述した順序で行う必要はない。また、本願で説明および/または図示した様々な例示的な方法は、本願で説明または図示したステップの1つまたは複数を省くこともでき、あるいは開示したステップに加えて追加のステップを含むこともできる。 The process parameters and sequence of steps described and / or illustrated herein are provided by way of example only and can be varied as desired. For example, although the steps illustrated and / or described herein may be illustrated or discussed in a particular order, these steps need not necessarily be performed in the order illustrated or discussed. In addition, the various exemplary methods described and / or illustrated herein may omit one or more of the steps described or illustrated herein, or may include additional steps in addition to the disclosed steps. it can.
様々な実施形態を、完全に機能する計算システムの文脈で本願で説明および/または図示してきたが、これらの例示的実施形態の1つまたは複数は、実際に分散を行うために使用されるコンピュータ可読媒体の特定の種類には関係なく多様な形態でプログラム製品として分散させることができる。また、本明細書で開示する実施形態は、特定のタスクを実施するソフトウェアモジュールを使用して実装することもできる。これらのソフトウェアモジュールは、コンピュータ可読記憶媒体上または計算システム内に記憶されることがあるスクリプト、バッチ、または他の実行可能なファイルを含み得る。いくつかの実施形態では、これらのソフトウェアモジュールは、本明細書で開示する例示的実施形態の1つまたは複数を実施するように計算システムを構成することができる。 Although various embodiments have been described and / or illustrated herein in the context of a fully functional computing system, one or more of these exemplary embodiments may be used to actually perform the distribution. Regardless of the specific type of readable medium, it can be distributed as a program product in various forms. The embodiments disclosed herein can also be implemented using software modules that perform particular tasks. These software modules may include scripts, batches, or other executable files that may be stored on a computer-readable storage medium or in a computing system. In some embodiments, these software modules can configure a computing system to implement one or more of the exemplary embodiments disclosed herein.
さらに、本明細書で述べるモジュールの1つまたは複数は、データ、物理的デバイス、および/または物理的デバイスの表現を、ある形態から別の形態に変えることができる。例えば、1つまたは複数のモジュール102が、第1のバージョンのソフトウェア製品を第2のバージョンのソフトウェア製品に変換することができる。
Further, one or more of the modules described herein can change the representation of data, physical devices, and / or physical devices from one form to another. For example, one or
前述の説明は、本明細書に開示する例示的実施形態の様々な態様を当業者が最も良く利用できるように提示した。この例示的な説明は、網羅的なものとは意図されておらず、また開示した任意の厳密な形態に限定されるものとも意図されていない。本開示の精神および範囲から逸脱することなく、多くの修正形態および変形形態が可能である。本明細書で開示した実施形態は、すべての点で例示とみなされるべきであり、限定とみなされるべきではない。本開示の範囲を決定するに当たっては、添付の特許請求の範囲およびそれらの均等箇所を参照すべきである。 The foregoing description has been presented so that those skilled in the art may best utilize the various aspects of the exemplary embodiments disclosed herein. This exemplary description is not intended to be exhaustive, nor is it intended to be limited to any precise form disclosed. Many modifications and variations are possible without departing from the spirit and scope of this disclosure. The embodiments disclosed herein are to be considered in all respects as illustrative and not restrictive. In determining the scope of the disclosure, reference should be made to the appended claims and their equivalents.
特に断りのない限り、本明細書および特許請求の範囲で使用する単数形は、「少なくとも1つ」を意味するものと解釈すべきである。さらに、使いやすいように、本明細書および特許請求の範囲で使用する語「含む」および「有する」は、語「備える」と同義語であり、同じ意味を有するものとする。 Unless otherwise indicated, the singular forms used in the specification and claims should be interpreted to mean “at least one”. Furthermore, for ease of use, the words “comprising” and “having” as used in the specification and claims are synonymous with the word “comprising” and have the same meaning.
Claims (20)
第1のバージョンのソフトウェア製品に第2のバージョンのソフトウェア製品を上書きしてインストールすることを求める要求を受信するステップと、
前記第1のバージョンのソフトウェア製品が動作しているままで、前記第2のバージョンのソフトウェア製品を休止状態でインストールするステップと、
前記第2のバージョンのソフトウェア製品を作動させ、前記第1のバージョンのソフトウェア製品を作動停止させることによって、前記第1のバージョンと第2のバージョンのソフトウェア製品をスワップするステップと
を含む方法。 A computer-implemented method for updating a software product, wherein at least part of the method is performed by a computing device comprising at least one processing unit,
Receiving a request to install a second version of the software product over the first version of the software product;
Installing the second version of the software product in a dormant state while the first version of the software product is operating;
Swapping the first version and the second version of the software product by activating the second version of the software product and deactivating the first version of the software product.
前記第2のバージョンのソフトウェア製品が第2のバージョンのアンチウイルスアプリケーションを備える
請求項2に記載の方法。 The first version of the software product comprises a first version of an antivirus application;
The method of claim 2, wherein the second version of the software product comprises a second version of an antivirus application.
請求項1に記載の方法。 Rebooting the computing system on which the first and second versions of the software product are installed, wherein the rebooting step is after installing the second version of the software product and the second version The method of claim 1, wherein the method is performed prior to operating a version of the software product.
をさらに含む請求項5に記載の方法。 The method of claim 5, further comprising disabling the network adapter until the second version of the software product is activated.
前記第2のバージョンのソフトウェア製品の1つまたは複数のファイルをインストールするステップと、
ブートプロセス中に必要とされる前記第2のバージョンのソフトウェア製品の1つまたは複数のコンポーネントをインストールするステップと
を含む請求項1に記載の方法。 Installing the second version of the software product comprises:
Installing one or more files of the second version of the software product;
And installing one or more components of the second version of the software product that are required during the boot process.
前記第1のバージョンのソフトウェア製品の実行に影響を及ぼさない前記第2のバージョンのソフトウェア製品の1つまたは複数のコンポーネントをインストールするステップと、
インストールされると前記第1のバージョンのソフトウェア製品の実行に影響を及ぼすことになる前記第2のバージョンのソフトウェア製品の1つまたは複数のコンポーネントのインストールを見合わせるステップと
によって、前記第2のバージョンのソフトウェア製品を一部インストールするステップを含む請求項1に記載の方法。 Installing the second version of the software product comprises:
Installing one or more components of the second version of the software product that do not affect execution of the first version of the software product;
Suspending installation of one or more components of the second version of the software product that, when installed, will affect the execution of the first version of the software product, The method of claim 1 including installing a portion of the software product.
前記第1のバージョンのソフトウェア製品の1つまたは複数のコンポーネントの状態を、前記1つまたは複数のコンポーネントがリブート後に再始動しないように変更するステップ
を含む請求項1に記載の方法。 Deactivating the second version of the software product comprises:
The method of claim 1, comprising changing a state of one or more components of the first version of the software product such that the one or more components do not restart after a reboot.
前記第1のバージョンと第2のバージョンのソフトウェア製品をスワップするステップが、前記第1のバージョンのソフトウェア製品の1つまたは複数の設定を前記第2のバージョンのソフトウェア製品にインポートするステップを含む
請求項1に記載の方法。 Installing the second version of the software product includes storing one or more settings of the first version of the software product;
Swapping the first version and the second version of the software product includes importing one or more settings of the first version of the software product into the second version of the software product. Item 2. The method according to Item 1.
前記第1のバージョンと第2のバージョンのソフトウェア製品をスワップするステップが、前記第2のバージョンのソフトウェア製品において使用できるように前記第1のバージョンのソフトウェア製品の1つまたは複数のコンポーネントを更新するために、前記1組の相違を使用するステップを含む
請求項1に記載の方法。 Installing the second version of the software product includes identifying a set of differences between the first version of the software product and the second version of the software product;
Swapping the first and second version software products updates one or more components of the first version software product for use in the second version software product. The method of claim 1 including using the set of differences to achieve.
前記第1のバージョンのソフトウェア製品が作動停止されて前記第2のバージョンのソフトウェア製品が作動された後に、前記第1のバージョンのソフトウェア製品をアンインストールするステップ
を含む請求項1に記載の方法。 Swapping the first version and the second version of the software product comprises:
The method of claim 1, comprising uninstalling the first version of the software product after the first version of the software product is deactivated and the second version of the software product is activated.
前記第1のバージョンのセキュリティソフトウェア製品に第2のバージョンのセキュリティソフトウェア製品を上書きしてインストールすることを求める要求を受信するステップと、
前記第1のバージョンのセキュリティソフトウェア製品の実行に影響を及ぼさない前記第2のバージョンのセキュリティソフトウェア製品の1つまたは複数のコンポーネントをインストールし、インストールされると前記第1のバージョンのセキュリティソフトウェア製品の実行に影響を及ぼすことになる前記第2のバージョンのセキュリティソフトウェアの1つまたは複数のコンポーネントのインストールを見合わせることによって、前記第1のバージョンのセキュリティソフトウェア製品が動作しているままで、前記第2のバージョンのセキュリティソフトウェア製品を休止状態でインストールするステップと、
前記第1および第2のバージョンのセキュリティソフトウェア製品がインストールされた計算システムをリブートするステップと、
前記第2のバージョンのセキュリティソフトウェア製品を作動させ、前記第1のバージョンのセキュリティソフトウェア製品を作動停止させることによって、前記第1のバージョンと第2のバージョンのソフトウェア製品をスワップするステップと
を含むコンピュータ実装方法。 A computer-implemented method for updating a security software product, wherein at least part of the method is performed by a computing device comprising at least one processing unit,
Receiving a request to install the first version of the security software product over the second version of the security software product;
One or more components of the second version of the security software product that do not affect the execution of the first version of the security software product are installed and, once installed, of the first version of the security software product By suspending the installation of one or more components of the second version of the security software that will affect execution, the second version of the security software product remains operating and the second version Installing a version of a security software product in hibernation;
Rebooting the computing system in which the first and second versions of the security software product are installed;
Activating the second version of the security software product and swapping the first version and the second version of the software product by deactivating the first version of the security software product. Implementation method.
前記第2のバージョンのセキュリティソフトウェア製品の1つまたは複数のファイルをインストールするステップと、
ブートプロセス中に必要とされる前記第2のバージョンのセキュリティソフトウェア製品の1つまたは複数のコンポーネントをインストールするステップと
を含む請求項14に記載の方法。 Installing the second version of the security software product comprises:
Installing one or more files of the second version of the security software product;
15. The method of claim 14, comprising installing one or more components of the second version of the security software product that are required during the boot process.
前記第1のバージョンのセキュリティソフトウェア製品の1つまたは複数のコンポーネントの状態を、前記計算システムをリブートした後に前記1つまたは複数のコンポーネントが再始動しないように変更するステップ
を含む請求項14に記載の方法。 Deactivating the second version of the software product comprises:
15. The step of changing the state of one or more components of the first version of the security software product so that the one or more components do not restart after rebooting the computing system. the method of.
第1のバージョンのソフトウェア製品に第2のバージョンのソフトウェア製品を上書きしてインストールすることを求める要求を受信するように前記処理装置に命令するようにプログラムされたインターフェースモジュールと、
前記第1のバージョンのソフトウェア製品が動作しているままで、前記第2のバージョンのソフトウェア製品を休止状態でインストールするように前記処理装置に命令するようにプログラムされたインストールモジュールと、
前記第2のバージョンのソフトウェア製品を作動させ、前記第1のバージョンのソフトウェア製品を作動停止することによって、前記第1のバージョンと第2のバージョンのソフトウェア製品をスワップするように前記処理装置に命令するようにプログラムされたスワッピングモジュールと
を備えるシステム。 At least one processing device;
An interface module programmed to instruct the processing device to receive a request to install a second version of the software product over the first version of the software product;
An install module programmed to instruct the processing device to install the second version software product in a dormant state while the first version software product remains operational;
Instructing the processing unit to swap the first version and the second version of the software product by activating the second version of the software product and deactivating the first version of the software product. And a swapping module programmed to do.
前記第2のバージョンのソフトウェア製品が第2のバージョンのアンチウイルスアプリケーションを備える
請求項17に記載の方法。 The first version of the software product comprises a first version of an antivirus application;
The method of claim 17, wherein the second version of the software product comprises a second version of an antivirus application.
前記第2のバージョンのソフトウェア製品の1つまたは複数のファイルをインストールするステップと、
ブートプロセス中に必要とされる前記第2のバージョンのソフトウェア製品の1つまたは複数のコンポーネントをインストールするステップと
によって、前記第2のバージョンのソフトウェア製品をインストールするように前記処理装置に命令するようにプログラムされた請求項17に記載のシステム。 The installation module is
Installing one or more files of the second version of the software product;
Instructing the processing device to install the second version of the software product by installing one or more components of the second version of the software product required during the boot process. The system of claim 17 programmed into the system.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/538,622 | 2009-08-10 | ||
US12/538,622 US8589904B2 (en) | 2009-08-10 | 2009-08-10 | Systems and methods for updating a software product |
PCT/US2010/044696 WO2011019601A1 (en) | 2009-08-10 | 2010-08-06 | System and method for updating a software product |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013502005A true JP2013502005A (en) | 2013-01-17 |
JP5646629B2 JP5646629B2 (en) | 2014-12-24 |
Family
ID=42942151
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012524757A Active JP5646629B2 (en) | 2009-08-10 | 2010-08-06 | System and method for updating software products |
Country Status (6)
Country | Link |
---|---|
US (2) | US8589904B2 (en) |
EP (1) | EP2465029B1 (en) |
JP (1) | JP5646629B2 (en) |
CN (1) | CN102696014B (en) |
CA (1) | CA2770419C (en) |
WO (1) | WO2011019601A1 (en) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI568605B (en) * | 2014-09-17 | 2017-02-01 | Tire pressure sensor software and the same version of the update system and update methods | |
JP2017508220A (en) * | 2014-03-20 | 2017-03-23 | クラウドストライク インコーポレイテッド | Guaranteed integrity and rebootless updates during runtime |
JP2018160041A (en) * | 2017-03-22 | 2018-10-11 | 日本電気株式会社 | Built-in device and control method and control program of built-in device |
US10339316B2 (en) | 2015-07-28 | 2019-07-02 | Crowdstrike, Inc. | Integrity assurance through early loading in the boot phase |
US10853491B2 (en) | 2012-06-08 | 2020-12-01 | Crowdstrike, Inc. | Security agent |
JP2022002086A (en) * | 2020-06-08 | 2022-01-06 | アクロニス・インターナショナル・ゲーエムベーハー | Method, system, and computer-readable medium |
Families Citing this family (35)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9690562B2 (en) * | 2010-02-26 | 2017-06-27 | Red Hat, Inc. | Detecting computing processes requiring reinitialization after a software package update |
US8997085B2 (en) * | 2011-06-24 | 2015-03-31 | International Business Machines Corporation | Image delta-based upgrade of complex stack in software appliance |
US8635425B1 (en) * | 2011-08-31 | 2014-01-21 | Amazon Technologies, Inc. | Upgrading computing devices |
US9098680B2 (en) * | 2011-12-22 | 2015-08-04 | Abbvie Inc. | Application security framework |
US9268663B1 (en) * | 2012-04-12 | 2016-02-23 | Amazon Technologies, Inc. | Software testing analysis and control |
US9058428B1 (en) | 2012-04-12 | 2015-06-16 | Amazon Technologies, Inc. | Software testing using shadow requests |
US9164753B2 (en) | 2013-01-08 | 2015-10-20 | Sap Se | Generating software updates |
US9158518B2 (en) * | 2013-03-11 | 2015-10-13 | Blackberry Limited | Collaborative application development environment using a connected device |
US9280338B1 (en) * | 2013-03-11 | 2016-03-08 | Amazon Technologies, Inc. | Dynamic application updates |
US9588750B2 (en) * | 2013-03-22 | 2017-03-07 | International Business Machines Corporation | Pseudo program use during program installation |
US9773264B2 (en) | 2013-03-26 | 2017-09-26 | Blackberry Limited | Method for providing composite user interface controls and an online storefront for same |
US9383986B2 (en) * | 2013-06-18 | 2016-07-05 | Disney Enterprises, Inc. | Safe low cost web services software deployments |
JP2015138335A (en) * | 2014-01-21 | 2015-07-30 | ローム株式会社 | Memory control circuit |
CN104182344B (en) * | 2014-08-25 | 2017-02-15 | 腾讯科技(深圳)有限公司 | Overwrite installation testing method and overwrite installation testing device |
US9841971B1 (en) * | 2015-03-11 | 2017-12-12 | Intuit, Inc. | Embedding software updates into content retrieved by applications |
US9740531B2 (en) * | 2015-06-29 | 2017-08-22 | Lookout, Inc. | Coordinating multiple components |
CN105183503B (en) * | 2015-08-12 | 2018-10-12 | 浪潮(北京)电子信息产业有限公司 | A kind of security upgrading method and device of security software |
US10110434B2 (en) | 2015-12-01 | 2018-10-23 | Cisco Technology, Inc. | Cloud orchestrated cloud connector upgrades |
US10021171B2 (en) | 2015-12-01 | 2018-07-10 | Cisco Technology, Inc. | Zero-downtime cloud connector upgrades |
US10477915B2 (en) | 2016-03-01 | 2019-11-19 | Hbn Shoe, Llc | Device for high-heeled shoes and method of constructing a high-heeled shoe |
US10579361B1 (en) | 2016-12-14 | 2020-03-03 | Juniper Networks, Inc | Systems and methods for efficiently updating software installed on network devices |
US10289401B1 (en) * | 2016-12-30 | 2019-05-14 | Juniper Networks, Inc | Systems and methods for efficiently downgrading operating systems installed on network devices |
US10534598B2 (en) | 2017-01-04 | 2020-01-14 | International Business Machines Corporation | Rolling upgrades in disaggregated systems |
US11153164B2 (en) | 2017-01-04 | 2021-10-19 | International Business Machines Corporation | Live, in-line hardware component upgrades in disaggregated systems |
CN107479933A (en) * | 2017-08-21 | 2017-12-15 | 惠州Tcl移动通信有限公司 | A kind of application program for mobile terminal upgrade method, storage device and mobile terminal |
US11245669B1 (en) * | 2019-09-16 | 2022-02-08 | Juniper Networks, Inc. | Firewall filter comprising one or more objects |
US11902264B2 (en) | 2020-06-22 | 2024-02-13 | Vmware, Inc. | Path selection for data packets encrypted based on an IPSEC protocol |
US11704107B2 (en) * | 2021-03-04 | 2023-07-18 | Toyota Motor North America, Inc. | Software updates based on transport-related actions |
US11762644B2 (en) * | 2021-05-10 | 2023-09-19 | International Business Machines Corporation | Agentless installation for building deployments |
US12113773B2 (en) | 2021-06-07 | 2024-10-08 | VMware LLC | Dynamic path selection of VPN endpoint |
US12107834B2 (en) | 2021-06-07 | 2024-10-01 | VMware LLC | Multi-uplink path quality aware IPsec |
US11863514B2 (en) | 2022-01-14 | 2024-01-02 | Vmware, Inc. | Performance improvement of IPsec traffic using SA-groups and mixed-mode SAs |
US11956213B2 (en) * | 2022-05-18 | 2024-04-09 | VMware LLC | Using firewall policies to map data messages to secure tunnels |
US20240036849A1 (en) * | 2022-07-28 | 2024-02-01 | Dell Products L.P. | Connectivity Management System Client Module Update and Failure Recovery |
CN115640034B (en) * | 2022-11-28 | 2023-06-02 | 荣耀终端有限公司 | Data storage method and device |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001318874A (en) * | 2000-03-29 | 2001-11-16 | Internatl Business Mach Corp <Ibm> | System for replacing device driver during system operation and method for the same and computer program product |
JP2002297411A (en) * | 2001-03-28 | 2002-10-11 | Acermsoft Inc | Update system and its method for application software in execution using modular system |
JP2003029996A (en) * | 2001-07-18 | 2003-01-31 | Toshiba Corp | Server system, client system, software streaming method and program |
JP2004199327A (en) * | 2002-12-18 | 2004-07-15 | Intec Netcore Inc | Computing equipment, computing program and computing method |
JP2006106825A (en) * | 2004-09-30 | 2006-04-20 | Nippon Digital Kenkyusho:Kk | Software updating method, terminal equipment and server device |
JP2007025906A (en) * | 2005-07-13 | 2007-02-01 | Konica Minolta Business Technologies Inc | Installation support method, and work flow formation support method |
JP2007066132A (en) * | 2005-09-01 | 2007-03-15 | Ricoh Co Ltd | Program system |
JP2008269394A (en) * | 2007-04-23 | 2008-11-06 | Konica Minolta Business Technologies Inc | Image forming apparatus, program updating system, program updating method and program updating program |
Family Cites Families (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5410703A (en) * | 1992-07-01 | 1995-04-25 | Telefonaktiebolaget L M Ericsson | System for changing software during computer operation |
US5845077A (en) * | 1995-11-27 | 1998-12-01 | Microsoft Corporation | Method and system for identifying and obtaining computer software from a remote computer |
US5922072A (en) * | 1997-01-03 | 1999-07-13 | Ncr Corporation | Method and apparatus for creating alternate boot environments in a computer |
US7107329B1 (en) * | 1999-05-21 | 2006-09-12 | Lucent Technologies Inc. | In networks of interconnected router nodes for routing data traffic, a method of and system for imperceptibly upgrading router node software and the like without traffic interruption |
WO2001001252A1 (en) | 1999-06-30 | 2001-01-04 | Microsoft Corporation | System and method for protecting shared system files |
US6698017B1 (en) * | 1999-07-16 | 2004-02-24 | Nortel Networks Limited | Software migration on an active processing element |
EP1096374A2 (en) | 1999-11-01 | 2001-05-02 | Citicorp Development Center, Inc. | Method and system for simultancous and unattended installation of software on a self-service financial transaction terminal |
US6738826B1 (en) * | 2000-02-24 | 2004-05-18 | Cisco Technology, Inc. | Router software upgrade employing redundant processors |
US7246349B2 (en) * | 2001-08-31 | 2007-07-17 | Telefonaktiebolaget Lm Ericsson (Publ) | Migration support mechanism in open service and open mobile architecture |
US7174547B2 (en) * | 2002-03-25 | 2007-02-06 | Ciena Corporation | Method for updating and restoring operating software in an active region of a network element |
US6978452B2 (en) * | 2003-04-02 | 2005-12-20 | Beach Unlimited Llc | Upgrading digital media servers |
US7698700B2 (en) * | 2003-04-17 | 2010-04-13 | International Business Machines Corporation | System quiesce for concurrent code updates |
DE60319357T2 (en) * | 2003-07-21 | 2009-03-26 | Alcatel Lucent | Method and system for replacing the software |
KR100584448B1 (en) * | 2004-01-19 | 2006-05-26 | 삼성전자주식회사 | Remote download method and system of embedded software using the position of binary image |
US7921419B2 (en) * | 2004-05-12 | 2011-04-05 | Oracle International Corporation | Method and mechanism for managing incompatible changes in a distributed system |
US7509676B2 (en) * | 2004-07-30 | 2009-03-24 | Electronic Data Systems Corporation | System and method for restricting access to an enterprise network |
US8146072B2 (en) * | 2004-07-30 | 2012-03-27 | Hewlett-Packard Development Company, L.P. | System and method for updating software on a computer |
US8146073B2 (en) * | 2004-09-30 | 2012-03-27 | Microsoft Corporation | Updating software while it is running |
US8255362B2 (en) * | 2005-06-08 | 2012-08-28 | rPath | Methods, systems, and computer program products for provisioning software using local changesets that represent differences between software on a repository and a local system |
US7581029B2 (en) * | 2005-06-20 | 2009-08-25 | Intel Corporation | Updating machines while disconnected from an update source |
US7823145B1 (en) * | 2006-03-31 | 2010-10-26 | Vmware, Inc. | Updating software on dormant disks |
US20080244552A1 (en) * | 2007-03-27 | 2008-10-02 | Telefonaktiebolaget Lm Ericsson (Publ) | Upgrading services associated with high availability systems |
US8806472B2 (en) * | 2007-09-27 | 2014-08-12 | Ericsson Ab | In-service software upgrade utilizing metadata-driven state translation |
JP5111129B2 (en) * | 2008-01-22 | 2012-12-26 | キヤノン株式会社 | Information processing apparatus, information processing system, information processing method, and program |
CN101408846B (en) * | 2008-11-24 | 2011-04-13 | 华为终端有限公司 | Method for upgrading antivirus software and corresponding terminal and system |
US8898660B2 (en) * | 2008-11-25 | 2014-11-25 | Fisher-Rosemount Systems, Inc. | Systems and methods to provide customized release notes during a software system upgrade of a process control system |
-
2009
- 2009-08-10 US US12/538,622 patent/US8589904B2/en active Active
-
2010
- 2010-08-06 WO PCT/US2010/044696 patent/WO2011019601A1/en active Application Filing
- 2010-08-06 JP JP2012524757A patent/JP5646629B2/en active Active
- 2010-08-06 CN CN201080034862.6A patent/CN102696014B/en active Active
- 2010-08-06 CA CA2770419A patent/CA2770419C/en active Active
- 2010-08-06 EP EP10752208.8A patent/EP2465029B1/en active Active
-
2013
- 2013-09-25 US US14/036,223 patent/US8819666B2/en active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001318874A (en) * | 2000-03-29 | 2001-11-16 | Internatl Business Mach Corp <Ibm> | System for replacing device driver during system operation and method for the same and computer program product |
JP2002297411A (en) * | 2001-03-28 | 2002-10-11 | Acermsoft Inc | Update system and its method for application software in execution using modular system |
JP2003029996A (en) * | 2001-07-18 | 2003-01-31 | Toshiba Corp | Server system, client system, software streaming method and program |
JP2004199327A (en) * | 2002-12-18 | 2004-07-15 | Intec Netcore Inc | Computing equipment, computing program and computing method |
JP2006106825A (en) * | 2004-09-30 | 2006-04-20 | Nippon Digital Kenkyusho:Kk | Software updating method, terminal equipment and server device |
JP2007025906A (en) * | 2005-07-13 | 2007-02-01 | Konica Minolta Business Technologies Inc | Installation support method, and work flow formation support method |
JP2007066132A (en) * | 2005-09-01 | 2007-03-15 | Ricoh Co Ltd | Program system |
JP2008269394A (en) * | 2007-04-23 | 2008-11-06 | Konica Minolta Business Technologies Inc | Image forming apparatus, program updating system, program updating method and program updating program |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10853491B2 (en) | 2012-06-08 | 2020-12-01 | Crowdstrike, Inc. | Security agent |
JP2017508220A (en) * | 2014-03-20 | 2017-03-23 | クラウドストライク インコーポレイテッド | Guaranteed integrity and rebootless updates during runtime |
US10289405B2 (en) | 2014-03-20 | 2019-05-14 | Crowdstrike, Inc. | Integrity assurance and rebootless updating during runtime |
US11340890B2 (en) | 2014-03-20 | 2022-05-24 | Crowdstrike, Inc. | Integrity assurance and rebootless updating during runtime |
TWI568605B (en) * | 2014-09-17 | 2017-02-01 | Tire pressure sensor software and the same version of the update system and update methods | |
US10339316B2 (en) | 2015-07-28 | 2019-07-02 | Crowdstrike, Inc. | Integrity assurance through early loading in the boot phase |
JP2018160041A (en) * | 2017-03-22 | 2018-10-11 | 日本電気株式会社 | Built-in device and control method and control program of built-in device |
JP2022002086A (en) * | 2020-06-08 | 2022-01-06 | アクロニス・インターナショナル・ゲーエムベーハー | Method, system, and computer-readable medium |
JP7422705B2 (en) | 2020-06-08 | 2024-01-26 | アクロニス・インターナショナル・ゲーエムベーハー | METHODS, SYSTEMS AND COMPUTER-READABLE MEDIA |
Also Published As
Publication number | Publication date |
---|---|
WO2011019601A1 (en) | 2011-02-17 |
US8819666B2 (en) | 2014-08-26 |
CA2770419C (en) | 2019-08-27 |
JP5646629B2 (en) | 2014-12-24 |
CA2770419A1 (en) | 2011-02-17 |
US20110035740A1 (en) | 2011-02-10 |
US8589904B2 (en) | 2013-11-19 |
EP2465029B1 (en) | 2015-03-18 |
CN102696014A (en) | 2012-09-26 |
EP2465029A1 (en) | 2012-06-20 |
CN102696014B (en) | 2016-02-17 |
US20140026129A1 (en) | 2014-01-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5646629B2 (en) | System and method for updating software products | |
US9223966B1 (en) | Systems and methods for replicating computing system environments | |
US8332842B2 (en) | Application restore points | |
JP6186374B2 (en) | System and method for secure migration to a virtualized platform | |
US8015450B1 (en) | Systems and methods for detecting and automatically installing missing software components | |
US20110321040A1 (en) | Systems and Methods for Sharing the Results of Analyses Among Virtual Machines | |
JP2016006670A (en) | Systems and methods for providing network access control in virtual environments | |
EP2989544A1 (en) | Systems and methods for replacing application methods at runtime | |
EP3066562B1 (en) | Systems and methods for updating system-level services within read-only system images | |
CA2883205C (en) | Systems and methods for detecting illegitimate applications | |
US8353044B1 (en) | Methods and systems for computing device remediation | |
US9146748B1 (en) | Systems and methods for injecting drivers into computing systems during restore operations | |
US8225316B1 (en) | Methods and systems for creating and applying patches for virtualized applications | |
US8250652B1 (en) | Systems and methods for circumventing malicious attempts to block the installation of security software | |
US8353058B1 (en) | Methods and systems for detecting rootkits | |
US8132047B2 (en) | Restoring application upgrades using an application restore point | |
US8572742B1 (en) | Detecting and repairing master boot record infections | |
US8776044B1 (en) | Systems and methods for providing computer cluster policies for implementation in computer cluster environments | |
US9501649B2 (en) | Systems and methods for determining potential impacts of applications on the security of computing systems | |
US8813103B1 (en) | Methods and systems for handling component-object-model communications | |
US11288361B1 (en) | Systems and methods for restoring applications | |
US9800647B1 (en) | Systems and methods for provisioning computing systems with applications | |
US9298445B1 (en) | Systems and methods for correlating software inventory information with delivered software | |
US10437683B1 (en) | Systems and methods for protecting data affected by system changes | |
US8402458B1 (en) | Methods and systems for converting non-layered-software-application installations into layered installations |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20130719 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130912 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20130912 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20140526 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140701 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140919 |
|
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: 20141014 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20141105 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5646629 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |