JP2021144405A - Program, information processing device, and method of controlling information processing device - Google Patents
Program, information processing device, and method of controlling information processing device Download PDFInfo
- Publication number
- JP2021144405A JP2021144405A JP2020041881A JP2020041881A JP2021144405A JP 2021144405 A JP2021144405 A JP 2021144405A JP 2020041881 A JP2020041881 A JP 2020041881A JP 2020041881 A JP2020041881 A JP 2020041881A JP 2021144405 A JP2021144405 A JP 2021144405A
- Authority
- JP
- Japan
- Prior art keywords
- information
- patches
- patch
- combination
- information processing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
- Stored Programmes (AREA)
Abstract
Description
本開示は、プログラム、情報処理装置、及び情報処理装置の制御方法に関する。 The present disclosure relates to a program, an information processing device, and a control method for the information processing device.
オペレーティングシステム(OS:Operating System)やその上で動作する基盤ソフトウェアに対して、修正プラグラム(以下、「パッチ」とも称する)が適用される場合がある。パッチ適用の目的としては、機能の追加やセキュリティホールへの対処等のように多岐にわたる。このようなパッチは、OSや基盤ソフトウェアの提供元から所望のタイミングでリリースされ、中には定期的にリリースされるものもある。また、近年では、リリースされたパッチが自動的に適用されるような設定が適用されている場合も少なくない。 A modification program (hereinafter, also referred to as a "patch") may be applied to an operating system (OS: Operating System) and the underlying software running on the operating system (OS). The purpose of applying patches is wide-ranging, such as adding functions and dealing with security holes. Such patches are released at a desired timing from the OS or the provider of the basic software, and some of them are released regularly. Also, in recent years, there are many cases where settings are applied so that released patches are automatically applied.
一方で、OSや基盤ソフトウェアに対するパッチの適用に伴い、当該OSや当該基盤ソフトウェアが提供するシステム環境が変化し、当該環境上で動作するアプリケーションの振る舞いが変化する場合がある。そのため、所定のアプリケーションの動作に影響を及ぼす可能性があるパッチについては、適用を見送るような運用が行われる場合もある。このような状況を鑑み、例えば、特許文献1には、OSへのパッチ適用が特定のアプリケーションに影響を及ぼす可能性を事前に検知し、ユーザ(例えば、当該アプリケーションを含むサービスの提供者)に通知する技術の一例が開示されている。
On the other hand, with the application of the patch to the OS and the base software, the system environment provided by the OS and the base software may change, and the behavior of the application running on the environment may change. Therefore, for patches that may affect the operation of a given application, there are cases where the application is postponed. In view of such a situation, for example, in
一方で、リリースされるパッチの中には、所謂セキュリティパッチのように、OSや基盤ソフトウェアが抱える脆弱性への対処を目的としてリリースされるものもあり、必ずしも適用を見送ることが適切な対処とは限らない場合がある。また、互いに異なる複数のパッチがアプリケーションの動作に影響を及ぼす場合もあり、複数のパッチの組み合わせに応じて、アプリケーションのカスタマイズが要求されるような場合もある。このように、近年では、OSや基盤ソフトウェア等のようなアプリケーションの動作環境に対するパッチ適用に係る管理がより煩雑化する傾向にあり、このような煩雑化した管理がユーザ(例えば、管理者)の負担となる場合も少なくない。 On the other hand, some of the released patches, such as so-called security patches, are released for the purpose of dealing with vulnerabilities in the OS and underlying software, so it is not always appropriate to forgo application. May not always be. In addition, a plurality of patches different from each other may affect the operation of the application, and the application may be required to be customized according to the combination of the plurality of patches. As described above, in recent years, the management related to patch application to the operating environment of applications such as OS and basic software tends to be more complicated, and such complicated management is performed by users (for example, administrators). It is often a burden.
本発明は上記の問題を鑑み、パッチ適用に係る管理をより好適な態様で実現可能とすることを目的とする。 In view of the above problems, it is an object of the present invention to make management related to patch application feasible in a more preferable manner.
本発明に係るプログラムは、情報処理装置のコンピュータに実行されるプログラムであって、前記プログラムは、前記プログラムが動作する動作環境に対するパッチの適用状況を示す第1の情報を取得する第1の取得工程と、前記動作環境への適用対象となる1以上のパッチの組み合わせと、当該1以上のパッチの組み合わせが適用されている場合に前記プログラムが行うべき代替処理を特定するための情報を対応付けた第2の情報を取得する第2の取得工程と、前記第1の情報と前記第2の情報とに基づき前記動作環境に前記1以上のパッチの組み合わせが適用されていないと特定される場合に第1の処理を実行し、前記第1の情報と前記第2の情報とに基づき前記動作環境に前記1以上のパッチの組み合わせが適用されていると特定される場合に前記第1の処理とは異なる、前記代替処理を実行する実行工程と、を前記コンピュータに実行させることを特徴とする。 The program according to the present invention is a program executed on a computer of an information processing apparatus, and the program acquires a first information indicating a patch application status to an operating environment in which the program operates. Corresponds the process, the combination of one or more patches to be applied to the operating environment, and the information for specifying the alternative process to be performed by the program when the combination of the one or more patches is applied. When it is specified that the combination of one or more patches is not applied to the operating environment based on the second acquisition step of acquiring the second information and the first information and the second information. The first process is executed, and when it is specified that the combination of the one or more patches is applied to the operating environment based on the first information and the second information, the first process is performed. It is characterized in that the computer is made to execute an execution step for executing the alternative process, which is different from the above.
本発明によれば、パッチ適用に係る管理をより好適な態様で実現することが可能となる。 According to the present invention, it is possible to realize management related to patch application in a more preferable manner.
以下に添付図面を参照しながら、本開示の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。 Preferred embodiments of the present disclosure will be described in detail below with reference to the accompanying drawings. In the present specification and the drawings, components having substantially the same functional configuration are designated by the same reference numerals, so that duplicate description will be omitted.
<概要>
近年では、OSや基盤ソフトウェア等のようなアプリケーションの動作環境に対して、パッチと称される修正プログラムを適用することで、機能の追加や一部機能の修正(例えば、セキュリティホールへの対処等)が行われる場合がある。このようなパッチは、所望のタイミングでリリースされ、中には定期的にリリースされるものもある。また、近年では、リリースされたパッチが自動的に適用されるような設定が行われている場合も少なくない。例えば、Microsoft社が提供するWindows(登録商標)を例に挙げると、毎月1回の頻度でセキュリティパッチの配布が行われている。また、Windows10では、年に2回の頻度で、機能追加を含む大型アップデートを目的としてパッチの配布が行われている。
<Overview>
In recent years, by applying a patch called a patch to the operating environment of an application such as an OS or infrastructure software, functions can be added or some functions can be modified (for example, dealing with security holes, etc.). ) May be performed. Such patches are released at the desired time, and some are released on a regular basis. Also, in recent years, there are many cases where settings are made so that released patches are automatically applied. For example, taking Windows (registered trademark) provided by Microsoft as an example, security patches are distributed once a month. In Windows 10, patches are distributed twice a year for the purpose of major updates including function additions.
一方で、セキュリティパッチや大型アップデートを目的としたパッチ等の適用に伴い、OSや基盤ソフトウェアが提供するシステム環境が変化することで、当該環境上で動作するアプリケーションの振る舞いが変化する場合がある。
セキュリティパッチや大型アップデートを目的としたパッチの実態は、OSや基盤ソフトウェアの機能を提供するモジュール(例えば、OSモジュール等)のファイルの更新である。
例えば、Windowsにおける文書生成・表示アプリケーションでは、OSが提供するGDI(Graphicas Device Interface)というインタフェースを通じで文字描画等を行う。GDI機能はOSモジュールである「gdi32.dll」にて提供されている。パッチ等でこの「gdi32.dll」ファイルが更新されると、文書表示アプリケーションは影響を受ける場合がある。OSモジュールの提供側は、全てのユーザに対して残環境での動作を保証することは現実的には難しく、環境によっては提供されたOSモジュールが少なくとも一部のアプリケーションの動作に影響を及ぼす場合もある。
このような状況を鑑み、所定のアプリケーションの動作に影響を及ぼす可能性があるパッチについては、当該アプリケーションの動作環境(例えば、OSや基盤ソフトウェア等)への適用を見送るような運用が行われる場合もある。
On the other hand, with the application of security patches, patches for the purpose of large-scale updates, etc., the behavior of applications operating in the environment may change due to changes in the system environment provided by the OS and basic software.
The actual state of security patches and patches aimed at large-scale updates is the updating of files of modules (for example, OS modules, etc.) that provide functions of the OS and basic software.
For example, in a document generation / display application in Windows, character drawing or the like is performed through an interface called GDI (Graphics Device Interface) provided by the OS. The GDI function is provided by the OS module "gdi32.dll". If this "gdi32.dll" file is updated by a patch or the like, the document display application may be affected. It is practically difficult for the OS module provider to guarantee the operation in the remaining environment for all users, and depending on the environment, the provided OS module may affect the operation of at least some applications. There is also.
In view of this situation, when a patch that may affect the operation of a predetermined application is operated so as to forgo application to the operating environment of the application (for example, OS, infrastructure software, etc.). There is also.
一方で、近年のOSや基盤ソフトウェアにおいては、大型アップデートを目的としたパッチの適用を遅らせることは可能であっても、見送り続けることは現実的には困難な場合がある。また、セキュリティパッチの適用を見送るということは、セキュリティリスクを抱えることともなり得る。このように、リリースされるパッチの中には、必ずしも適用を見送ることが適切な対処とは限らない場合がある。
また、互いに異なる複数のパッチがアプリケーションの動作に影響を及ぼす場合もあり、複数のパッチの組み合わせに応じて、アプリケーションのカスタマイズが要求されるような場合もある。これに対して、カスタマイズしたアプリケーションを環境ごとに配布・管理する方法は、影響を及ぼすパッチの組み合わせごとにアプリケーションのカスタマイズが要求される場合もあり、配布や管理に係るコストが膨大となるため現実的ではない。また、影響を及ぼすパッチが更に修正されることで、アプリケーションとして問題のない動作に戻るようなケースも想定され得る。
On the other hand, in recent OSs and basic software, even if it is possible to delay the application of a patch for the purpose of a large-scale update, it may be practically difficult to continue to forgo it. In addition, forgoing the application of security patches may pose a security risk. As such, for some patches released, it may not always be appropriate to forgo application.
In addition, a plurality of patches different from each other may affect the operation of the application, and the application may be required to be customized according to the combination of the plurality of patches. On the other hand, the method of distributing and managing a customized application for each environment is a reality because the application customization may be required for each combination of influential patches, and the cost for distribution and management becomes enormous. Not the target. In addition, it is possible that the application may return to a problem-free operation by further modifying the influential patch.
このように、近年では、OSや基盤ソフトウェア等のようなアプリケーションの動作環境に対するパッチ適用に係る管理がより煩雑化する傾向にあり、このような煩雑化した管理がユーザ(例えば、管理者)の負担となる場合も少なくない。そこで、本開示では、OSや基盤ソフトウェア等のようなアプリケーションの動作環境に対するパッチ適用に係る管理をより好適な態様で実現可能とする技術を提案する。 As described above, in recent years, the management related to patch application to the operating environment of applications such as OS and basic software tends to be more complicated, and such complicated management is performed by users (for example, administrators). It is often a burden. Therefore, the present disclosure proposes a technique that makes it possible to realize management related to patch application to the operating environment of an application such as an OS or basic software in a more preferable manner.
<システム構成>
図1を参照して、本実施形態に係る情報処理システムのシステム構成の一例について説明する。本実施形態に係る情報処理システム1は、管理サーバ装置101と、1以上のサーバ装置102とを含む。
<System configuration>
An example of the system configuration of the information processing system according to the present embodiment will be described with reference to FIG. The
管理サーバ装置101は、サーバ装置102においてアプリケーションの動作環境として動作するOSや基盤ソフトウェアに対して適用されるパッチの管理や、当該サーバ装置102への当該パッチの配信等を行う。また、管理サーバ装置101は、サーバ装置102で操作するアプリケーションに影響を及ぼす可能性のあるパッチに関する情報を管理し、当該情報に関するデータを、問題パッチデータとして各サーバ装置102に提供する。
The
サーバ装置102は、各種アプリケーションを実行することで当該アプリケーションに対応する機能を提供する装置を模式的に示している。サーバ装置102は、管理サーバ装置101から提供される問題パッチデータに基づき、各種処理を実行する。例えば、サーバ装置102は、当該問題パッチデータに基づき、管理サーバ装置101から配信されるパッチを適用してもよい。
なお、サーバ装置102が、本実施形態に係る「情報処理装置」の一例に相当する。
The
The
管理サーバ装置101と、1以上のサーバ装置102それぞれと、の間は所定のネットワーク100を介して互いに情報やデータを送受信可能に接続されている。
なお、ネットワーク100は、管理サーバ装置101と、1以上のサーバ装置102それぞれと、の間を接続することが可能であれば、その種別は特に限定されない。具体的な一例として、ネットワーク100として、インターネット、LAN(Local Area Network)、WAN(Wide Area Network)、公衆回線(例えば、電話回線、移動体通信回線等)等が適用されてもよい。また、他の一例として、ネットワーク100として、専用線、ATM(Asynchronous Transfer Mode)やフレームリレー回線、ケーブルテレビ回線、データ放送用無線通信回線等が適用されてもよい。また、ネットワーク100は、無線のネットワークであってもよく、有線のネットワークであってもよい。また、ネットワーク100は、複数種類の異なるネットワークを含んでもよい。具体的な一例として、管理サーバ装置101と、1以上のサーバ装置102それぞれと、間の通信が、他の通信装置により中継されてもよい。この場合において、当該他の通信装置と、管理サーバ装置101と、1以上のサーバ装置102それぞれと、の間の通信に対して、互いに異なる種別のネットワークが適用されてもよい。
The
The type of the
<ハードウェア構成>
図2を参照して、図1に示す管理サーバ装置101やサーバ装置102として適用可能な情報処理装置200のハードウェア構成の一例について説明する。情報処理装置200は、CPU(Central Processing Unit)201と、ROM(Read Only Memory)202と、RAM(Random Access Memory)203とを含む。また、情報処理装置200は、HDD(Hard Disk Drive)204と、I/F207とを含む。また、情報処理装置200は、入力装置205と、出力装置206とのうち少なくともいずれかを含んでもよい。
<Hardware configuration>
An example of the hardware configuration of the
CPU201は、情報処理装置200(例えば、管理サーバ装置101やサーバ装置102)の各種動作を制御する中央演算装置である。例えば、CPU201は、情報処理装置200全体の動作を制御してもよい。ROM202は、CPU201で実行可能な制御プログラムやブートプログラムなどを記憶する。具体的な一例として、ROM202は、BIOS(Basic Input Output System)等の所謂ファームウェアを記憶してもよい。RAM203は、CPU201の主記憶メモリであり、ワークエリア又は各種プログラムを展開するための一時記憶領域として用いられる。
The
HDD204は、各種データや各種プログラムを記憶する。例えば、HDD204は、OSや基盤ソフトウェアのプログラムを記憶してもよい。HDD204に替えて、またはHDD204とともに、SSD(Solid State Drive)に代表される不揮発性メモリ等のような他の記録媒体が利用されてもよい。
入力装置205は、ユーザからの各種指示の受け付けに利用される。例えば、入力装置205は、ポインティングデバイス、キーボード、タッチパネル等の入力デバイスにより実現され得る。また、他の一例として、入力装置205は、マイクロフォン等の集音デバイスを含み、ユーザが発話した音声を集音してもよい。この場合には、集音された音声に対して音響解析や自然言語処理等の各種解析処理が施されることで、この音声が示す内容がユーザからの指示として認識される。また、入力装置205として適用されるデバイスは、ユーザからの指示を認識する方法に応じて適宜変更されてもよい。また、入力装置205として複数種類のデバイスが適用されてもよい。
The
出力装置206は、各種情報を出力する装置であり、ユーザに対する各種情報の提示に利用される。例えば、出力装置206は、ディスプレイ等の表示デバイスにより実現される。この場合には、出力装置206は、各種表示情報を表示させることで、ユーザに対して情報を提示する。また、他の一例として、出力装置206は、音声や電子音等の音を出力する音響出力デバイスにより実現されてもよい。この場合には、出力装置206は、音声や電信等の音を出力することで、ユーザに対して情報を提示する。なお、出力装置206として適用されるデバイスは、ユーザに対して情報を提示するために利用する媒体に応じて適宜変更されてもよい。
The
I/F207は、ネットワーク100に接続されており、当該ネットワーク100を介した外部の装置との通信に利用される。
The I /
情報処理装置200が起動すると、CPU201によりBIOSが実行されたうえで、OSがHHD204からRAM203に実行可能に展開される。CPU201は、例えば、OSの動作に従って後述する各種ソフトウェアモジュールをHDD204からRAM203に随時実行可能に展開する。各種ソフトウェアモジュールは、上述した各種デバイスの協調によりCPU201により実行されることで対応する機能を実現する。また、I/F207は、例えば、OSの動作に従ってCPU201により制御されることで、他の装置との通信を実現する。
When the
<モジュール構成>
図3を参照して、管理サーバ装置101及びサーバ装置102それぞれで動作するソフトウェアモジュールの構成の一例について説明する。なお、図3に示す各ソフトウェアモジュールは、例えば、図2に示したHDD204に記憶されており、前述したようにCPU201によってRAM203に展開されたうえで実行される。
<Module configuration>
An example of the configuration of the software module operating in each of the
まず、図3(a)を参照して、管理サーバ装置101のソフトウェアモジュールの構成の一例について説明する。管理サーバ装置101は、パッチデータ編集部301と、データ通信部302と、データアクセス部303と、パッチデータ記憶部304とを含む。
First, an example of the configuration of the software module of the
パッチデータ記憶部304は、サーバ装置102への各種パッチの配信に係るデータを記憶する。具体的な一例として、パッチデータ記憶部304は、別途図7を参照して詳細を後述する問題パッチデータ701を記憶する。パッチデータ記憶部304は、例えば、データベース等により実現され得る。
The patch
データアクセス部303は、パッチデータ記憶部304にアクセスし、パッチデータ記憶部304に記憶されたデータの読み出しを行う。具体的な一例として、データアクセス部303は、パッチデータ記憶部304から問題パッチデータ701を読み出し、当該問題パッチデータ701をRAM203に展開してもよい。
The
パッチデータ編集部301は、サーバ装置102への各種パッチの配信に係るデータの内容の編集を行う。具体的な一例として、パッチデータ編集部301は、RAM203に展開された問題パッチデータ701の編集を行ってもよい。
The patch
データ通信部302は、各種情報や各種データを、ネットワーク100を介して他の装置(例えば、サーバ装置102)に送信する。具体的な一例として、データ通信部302は、RAM203に展開された問題パッチデータ701を、ネットワーク100を介してサーバ装置102に送信してもよい。また、データ通信部302は、ネットワーク100を介して他の装置から各種情報や各種データを受信してもよい。
The
次いで、図3(b)を参照して、サーバ装置102のソフトウェアモジュールの構成の一例について説明する。サーバ装置102は、パッチ情報取得部305と、処理実行部306と、データ通信部307とを含む。
Next, an example of the configuration of the software module of the
パッチ情報取得部305は、サーバ装置102においてアプリケーションの動作環境として動作するOSや基盤ソフトウェアに対して適用されたパッチに関する情報を取得する。なお、パッチ情報取得部305が、OSや基盤ソフトウェアに対して適用されたパッチに関する情報を取得することが可能であれば、その方法は特に限定されない。具体的な一例として、パッチ情報取得部305は、OSや基盤ソフトウェアが提供するAPI等のインタフェースを利用することで、当該OSや当該基盤ソフトウェアに対して適用されたパッチに関する情報を取得してもよい。
The patch
処理実行部306は、サーバ装置102が提供する機能に関する各種処理を実行する。例えば、処理実行部306は、サーバ装置102が文書生成に係る機能を提供する場合には、当該機能の実現に係る各種処理を実行してもよい。
The
ここで、文書生成に係る機能を実現する場合に着目して、処理実行部306により実行される処理の一例について説明する。文書生成に係る処理は、例えば、処理実行部306が文書生成に係るアプリケーション(以下、「文書生成アプリケーション」とも称する)を実行することで実現される。文書生成アプリケーションとしては、多様な形態が考えられるが、一例として、電子帳票の生成に係るアプリケーションについて説明する。
文書生成アプリケーションは、例えば、データベースから取得された帳票内に表示されるデータを、罫線、ロゴ、及び表等の組み合わせからなるテンプレートの定義に従い、対応する領域内に流し込むことで、電子帳票を生成する。電子帳票のデータ形式としては、例えば、PDF等が適用され得る。この場合には、文書生成アプリケーションは、例えば、各種コンポーネントの描画に係るインタフェースを介して所定のドライバ経由で、電子帳票をPDF等の所定の形式のデータに変換する。なお、上述した各種コンポーネントの描画に係るインタフェースのとしては、例えば、Windowsが提供するGDI(Graphics Device Interface)等が挙げられる。
Here, an example of the process executed by the
The document generation application generates an electronic form by, for example, pouring the data displayed in the form acquired from the database into the corresponding area according to the definition of the template consisting of a combination of ruled lines, logos, tables, and the like. do. As the data format of the electronic form, for example, PDF or the like can be applied. In this case, the document generation application converts the electronic form into data in a predetermined format such as PDF via a predetermined driver via, for example, an interface related to drawing of various components. Examples of the interface related to drawing of the various components described above include GDI (Graphics Device Interface) provided by Windows.
データ通信部307は、各種情報や各種データを、ネットワーク100を介して他の装置(例えば、管理サーバ装置101)に送信する。また、データ通信部307は、ネットワーク100を介して他の装置から各種情報や各種データを受信してもよい。具体的な一例として、データ通信部307は、管理サーバ装置101から問題パッチデータ701を取得し、当該問題パッチデータ701をRAM203に展開してもよい。
The data communication unit 307 transmits various information and various data to another device (for example, the management server device 101) via the
<処理>
図4〜図6を参照して、本実施形態に係る情報処理システム1の処理の一例について説明する。
<Processing>
An example of the processing of the
まず、図4を参照して、管理サーバ装置101による問題パッチデータ701の編集に係る処理の一例について説明する。
S401において、パッチデータ編集部301は、問題パッチデータ701の内容の編集を行う。また、パッチデータ編集部301は、問題パッチデータ701が存在しない場合には、問題パッチデータ701を新たに作成してもよい。
First, with reference to FIG. 4, an example of the process related to the editing of the
In S401, the patch
なお、問題パッチデータ701の内容の編集に係る方法については特に限定されない。
具体的な一例として、パッチデータ編集部301は、不図示の編集インタフェースをユーザに提示し、当該編集インタフェースを介してユーザから指示された編集内容を、RAM203に展開された問題パッチデータ701に反映してもよい。
また、他の一例として、パッチデータ編集部301は、インターネット等に応じて公開されている各種OS向けの修正パッチ情報を取得し、当該修正パッチ情報に示された内容に応じて、問題パッチデータ701の編集を行ってもよい。なお、公開されている情報が必ずしも、問題パッチデータ701の編集に利用しやすい方式(換言すると、編集を自動化しやすい方式)で記録されているとは限らない。そのため、パッチデータ編集部301は、例えば、Webスクレイピング等の手法を利用してもよい。
修正パッチ情報として取得される情報の一例として、「包含パッチ」に関する情報が挙げられる。「包含パッチ」とは、一部のパッチに規定された内容(例えば、修正内容)を包含する、当該一部のパッチとは異なる他のパッチに相当する。
The method for editing the contents of the
As a specific example, the patch
Further, as another example, the patch
As an example of the information acquired as the correction patch information, there is information about the “inclusion patch”. The “inclusion patch” corresponds to another patch different from the part of the patch, which includes the content specified in the part of the patch (for example, the content of the correction).
次いで、図5を参照して、サーバ装置102の処理の一例について説明する。
S501において、処理実行部306は、OSや基盤ソフトウェア等のようなアプリケーションの動作環境に対するパッチの適用状況を確認し、確認結果に応じて対象動作が必要か否かを決定する。
Next, an example of processing of the
In S501, the
ここで、図6を参照して、図5に示すS501の処理についてより詳細に説明する。
S601において、データ通信部307は、ネットワーク100を介して管理サーバ装置101から問題パッチデータ701を取得し、RAM203に展開する。
S602において、パッチ情報取得部305は、サーバ装置102で動作するOSや基盤ソフトウェア等のようなアプリケーションの動作環境に対する適用されたパッチに関する情報を取得する。具体的な一例として、パッチ情報取得部305は、当該アプリケーションの動作環境に適用された一連のパッチ(例えば、修正パッチ)それぞれの識別情報を取得する。
なお、以降の説明では、各パッチを識別するための識別情報として、パッチごとに一意に割り当てられた「パッチ番号」が使用されるものとする。なお、パッチ番号の記載に係るフォーマットについては、OSや基盤ソフトウェア等の動作環境に応じて異なる場合があるが、本実施形態では、便宜上「KB000020」のような形式で表現されるものとする。また、以降では、上記アプリケーションの動作環境に適用されたパッチを特に示す場合には、便宜上「環境パッチ」とも称する。なお、パッチ情報取得部305により取得される環境パッチに関する情報が、アプリケーションの動作環境へのパッチの適用状況に応じた「第1の情報」の一例に相当する。
パッチ情報取得部305は、取得した環境パッチに関する情報をRAM203に保持させる。
Here, with reference to FIG. 6, the process of S501 shown in FIG. 5 will be described in more detail.
In S601, the data communication unit 307 acquires the
In S602, the patch
In the following description, it is assumed that the "patch number" uniquely assigned to each patch is used as the identification information for identifying each patch. The format related to the description of the patch number may differ depending on the operating environment of the OS, the basic software, etc., but in the present embodiment, it is expressed in a format such as "KB0000020" for convenience. In addition, hereinafter, when a patch applied to the operating environment of the above application is particularly indicated, it is also referred to as an "environmental patch" for convenience. The information about the environment patch acquired by the patch
The patch
ここで、図7を参照して、問題パッチデータ701について説明する。
問題パッチデータ701には、サーバ装置102の動作(例えば、文書作成動作等)に何らかの影響を及ぼす可能性のあるパッチに関する情報が定義されている。なお、以降の説明では、サーバ装置102の動作に影響を及ぼす可能性のあるパッチを特に示す場合には、便宜上「問題パッチ」とも称する。
例えば、図7に示す例では、問題パッチ702〜705について情報が定義されている。各問題パッチについて定義されている情報のうち、「name」セクションには、各問題パッチのパッチ番号(換言すると、各問題パッチの識別情報)が設定されている。「name」セクションの値はリスト形式になっており、問題パッチ705に関する情報のように、複数のパッチに関する情報が設定されてもよい。なお、問題パッチ705として定義された情報は、複数の修正パッチが適用されることで、サーバ装置102の動作(例えば、文書作成動作等)に影響を及ぼす可能性のある場合の一例について示している。
なお、問題パッチデータ701が、アプリケーションの動作環境への適用対象となる1以上のパッチの組み合わせごとに、当該1以上のパッチの組み合わせが適用されている場合の対処動作(代替処理とも呼ぶ)が規定された「第2の情報」の一例に相当する。即ち、701には問題を引き起こすパッチの組み合わせと、その組み合わせが適用されている場合に行うべき代替処理である対処動作を特定するための情報が対応付けて記憶されている。
Here, the
The
For example, in the example shown in FIG. 7, information is defined for problem patches 702-705. Of the information defined for each problem patch, the patch number of each problem patch (in other words, the identification information of each problem patch) is set in the "name" section. The values in the "name" section are in list format and may be populated with information about a plurality of patches, such as information about
It should be noted that, for each combination of one or more patches to be applied to the operating environment of the application in the
ここで、改めて図6を参照する。S603〜S613の一連の処理は、問題パッチの定義ごとに実行されるループ処理となっている。処理実行部306は、問題パッチデータ701に定義された「name」セクションの数分(すなわち、問題パッチの数分)、S603〜S613の一連の処理を繰り返し実行する。
Here, reference is made to FIG. 6 again. The series of processes from S603 to S613 is a loop process executed for each problem patch definition. The
S604において、処理実行部306は、問題パッチの定義として、複数のパッチが定義されているか否かを判定する。具体的な一例として、処理実行部306は、問題パッチデータ701の「name」のセクションの値を確認し、当該値として設定されたリスト内に複数のパッチ番号が存在する場合には、複数のパッチが定義されていると判定する。処理実行部306は、S604において複数のパッチが定義されていると判定した場合には、処理をS606に進める。これに対して、処理実行部306は、S604において複数のパッチが定義されていないと判定した場合には、処理をS605に進める。
In S604, the
S605において、処理実行部306は、現在処理の対象としている問題パッチにおいて「name」セクションに設定されたパッチが、S602において取得した環境パッチのリストに含まれているか否かを判定する。
例えば、処理実行部306は、図7に示す問題パッチデータ701における問題パッチ702の場合には、パッチ番号「KB000002」に対応するパッチが環境パッチのリストに含まれているか否かを判定する。
処理実行部306は、S605において「name」セクションに設定されたパッチが環境パッチのリストに含まれていると判定した場合には、処理をS609に進める。これに対して、処理実行部306は、S605において「name」セクションに設定されたパッチが環境パッチのリストに含まれていないと判定した場合には、処理をS607に進める。
In S605, the
For example, in the case of the
When the
S606において、処理実行部306は、現在処理の対象としている問題パッチにおいて「name」セクションに設定された全てのパッチが、S602において取得した環境パッチのリストに含まれているか否かを判定する。
例えば、処理実行部306は、図7に示す問題パッチデータ701における問題パッチ705の場合には、パッチ番号「KB000102」及び「KB000103」それぞれに対応するパッチの双方が環境パッチのリストに含まれているか否かを判定する。
処理実行部306は、S606において「name」セクションに設定された全てのパッチが環境パッチのリストに含まれていると判定した場合には、処理をS609に進める。これに対して、処理実行部306は、S606において「name」セクションに設定されたパッチのうち少なくとも一部のパッチが環境パッチのリストに含まれていないと判定した場合に亜、処理をS607に進める。
In S606, the
For example, in the case of the
When the
S607において、処理実行部306は、現在処理の対象としている問題パッチに関連付けられた包含パッチに対応する定義が、問題パッチデータ701に含まれているか否かを判定する。包含パッチにも、サーバ装置102で動作するアプリケーションに影響を及し得る修正が含まれる可能性があり、このような修正が含まれる場合には、対象となる包含パッチ適用されている環境においても対処動作が行われることが望ましい。
例えば、図7に示す問題パッチデータ701では、問題パッチ704において、「included」セクションにより包含パッチが定義されている。具体的には、問題パッチ704の例では、「KB000020」に対応するパッチに含まれる修正を、「KB000025」及び「KB000030」に対応するパッチそれぞれが含んでいることが定義されている。
処理実行部306は、「included」セクションを確認することで、現在処理の対象としている問題パッチに包含パッチに対応する定義が存在するか否かを確認する。処理実行部306は、S607において包含パッチに対応する定義が存在すると判定した場合には、処理をS608に進める。一方で、処理実行部306は、S607において包含パッチに対応する定義が存在しないと判定した場合には、処理をS612に進める。
In S607, the
For example, in the
By checking the "included" section, the
S608において、処理実行部306は、現在処理の対象としている問題パッチに定義された包含パッチが環境パッチのリストに含まれているか否かを判定する。
例えば、図7に示す問題パッチ704の例であれば、処理実行部306は、「KB000025」及び「KB000030」それぞれに対応するパッチのうち少なくともいずれかが環境パッチのリストに含まれているか否かを判定する。
処理実行部306は、現在処理の対象としている問題パッチに定義された包含パッチのうち少なくともいずれかが環境パッチのリストに含まれている場合には、処理をS609に進める。一方で、処理実行部306は、現在処理の対象としている問題パッチに定義された包含パッチのいずれも環境パッチのリストに含まれていない場合には、処理をS612に進める。
In S608, the
For example, in the case of the
If at least one of the inclusion patches defined in the problem patch currently being processed is included in the list of environment patches, the
S609において、処理実行部306は、修正パッチが環境パッチのリストに含まれているか否かを判定する。本処理における修正パッチとは、アプリケーションに影響を及ぼす可能性のある問題パッチの修正内容が、影響を及ぼさない状態に更に回収されたパッチを示すものとする。サーバ装置102に対して修正パッチが適用されている場合には、修正前の問題パッチがアプリケーションに対して影響を及ぼし得る状態が解消されるため、少なくとも当該問題パッチに対する対処動作を行う必要がなくなる。
修正パッチは、図7に示す問題パッチ703の例に示すように、「repair」セクションによって定義される。問題パッチ703の例では、「KB000005」に対応するパッチの問題の改修が、「KB000011」に対応するパッチにおいて実施されていることが定義されている。
処理実行部306は、「repair」セクションを確認することで、現在処理の対象としている問題パッチに修正パッチに対応する定義が存在するか否かを確認する。処理実行部306は、S609において修正パッチに対応する定義が存在すると判定した場合には、処理をS612に進める。一方で、処理実行部306は、S609において修正パッチに対応する定義が存在しないと判定した場合には、処理をS610に進める。
In S609, the
The patch is defined by the "repair" section, as shown in the example of
By checking the "repair" section, the
S610において、処理実行部306は、問題パッチデータ701において現在処理の対象としている問題パッチについて定義された対処動作情報を読み出す。対処動作情報は、アプリケーションに影響を及ぼす可能性があるパッチが環境に提供されている場合に行う対象動作が定義された情報である。
対処動作については、図7に示す問題パッチ702〜705それぞれにおいて、「actions」及び「action」セクションによって定義される。
処理実行部306は、一連の「action」セクションそれぞれに定義された対処動作情報を読み出し、当該対処動作情報をRAM203に保持する。
In S610, the
The coping behavior is defined by the "actions" and "actions" sections in each of the problem patches 702-705 shown in FIG.
The
S611において、処理実行部306は、対処動作フラグをONに切り替える。なお、処理実行部306は、対処動作フラグについては、例えば、あらかじめRAM203に保持しておき、初期値としてOFFを設定しておくとよい。対処動作フラグは、サーバ装置102における各種動作(例えば、文書生成に係る動作等)の切り替えに使用される。対処動作フラグに基づく制御の一例については、詳細を別途後述する。
In S611, the
S612において、処理実行部306は、問題パッチデータ701に定義された問題パッチごとに実行される処理ループを終了する。
In S612, the
S613において、処理実行部306は、S610において読み出された一連の対処動作情報をマージする。例えば、環境に対して問題パッチが複数適用されている場合があり、この場合には、複数種類の対象動作が行われる場合もある。処理実行部306は、マージした対処動作情報をRAM203に保持する。
In S613, the
ここで、改めて図5を参照する。
S502において、処理実行部306は、RAM203に保持された対処動作フラグがONに設定されているか否かを判定する。例えば、図6に示すS611の処理が実行された場合には、S502において、対処動作フラグはONに設定されていることとなる。処理実行部306は、S502において対処動作フラグがONに設定されていると判定した場合には、処理をS503に進める。これに対して、処理実行部306は、S502において対処動作フラグがONに設定されていない判定した場合には、図5に示す一連の処理を終了する。
Here, reference is made to FIG. 5 again.
In S502, the
S503〜S505の一連の処理は、対処動作ごとに実行されるループ処理となっている。S503において、処理実行部306は、図6に示すS613の処理においてRAM203に保持された一連の対処動作情報を読み出し、読み出した対処動作情報それぞれが示す対処動作ごとにループ処理を実行する。すなわち、処理実行部306は、対処動作の数だけS504の処理を実行することとなる。
The series of processes S503 to S505 is a loop process executed for each coping operation. In S503, the
S504において、処理実行部306は、問題パッチに対応する対処動作を実行する。ここで、以下に対象動作の一例について、問題パッチが文書生成に係るアプリケーションに影響を及ぼす場合に着目して説明する。
In S504, the
例えば、図7に示す問題パッチ702の対処動作「virtical_textout_type_b」として、処理実行部306は、縦書きの文字列描画方式を通常の場合とは異なる方式(方式b)に切り替える。一般的には、Windows等のOSが提供する環境での縦書き文字描画は、当該OSから提供されるAPIのパラメータを指定することで実施される。しかしながら、適用されるフォントによっては、問題パッチの影響を受け、通常適用される縦書き文字描画では文字が意図したように描画されず、例えば、回転した状態で描画される(横向きで描画される)場合がある。このような場合には、例えば、特定のフォントや特定の文字コードが適用される場合に、各文字のグリフを明示的に回転させながら描画する方式(方式b)に切り替えられることで、本来意図する動作を実現することが可能となる。
For example, as the countermeasure operation "virtical_textout_type_b" of the
文書生成に係るアプリケーションを構成するプログラムには、例えば、あらかじめ種々の描画方式(例えば、従来の方式である方式a、及び従来とは異なる方式b)を実現するためのバイトコードが含まれていてもよい。これにより、例えば、対象動作により適用する描画方式(例えば、方式b)が指定された場合に、当該指定に応じてアプリケーションが実行された際の振る舞いを動的に切り替えることが可能となる。例えば、本実施形態では第1のパッチ適用状態で方式aを用いて描画データAを処理(加工)した結果と、第2のパッチ適用状態で方式bを用いて描画データBを処理(加工)した結果が一致又は類似した結果となるようにアプリケーションが動作するものとする。なお、本実施形態における類似とは、例えば、一般的な視力(例えば、視力1.0程度)を有するユーザが、文章生成後の表示結果物や印刷結果物から30cm離れた位置から正対して結果物を見る際に視覚的に同一であると見做せる誤差を許容することを示すものとする。アプリケーションがデータ加工処理で、オブジェクトの回転処理を行う場合には、演算系に起因する微小な角度のずれが起こりうる。また方式aと方式bでオブジェクトのレイアウト制御を異ならせる場合など、微小なレイアウト位置のずれが起こりうる。本実施形態では、このような微小な誤差を含みうる実質的に同一と見做せる結果物Aと結果物Bを類似と呼ぶものとする。 The program constituting the application related to document generation includes, for example, bytecodes for realizing various drawing methods (for example, a conventional method a and a method different from the conventional method b) in advance. May be good. Thereby, for example, when the drawing method to be applied by the target operation (for example, method b) is specified, the behavior when the application is executed according to the specification can be dynamically switched. For example, in the present embodiment, the result of processing (processing) the drawing data A using the method a in the first patch application state and the drawing data B being processed (processed) using the method b in the second patch application state. It is assumed that the application operates so that the resulting results match or are similar. The similarity in the present embodiment means that, for example, a user having general visual acuity (for example, visual acuity of about 1.0) faces a position 30 cm away from the display result or print result after sentence generation. It shall indicate that an error that can be regarded as visually identical when viewing the result is tolerated. When the application performs data processing and object rotation processing, a slight angle deviation due to the arithmetic system may occur. Further, when the layout control of the object is different between the method a and the method b, a slight deviation of the layout position may occur. In the present embodiment, the product A and the product B, which can include such a minute error and can be regarded as substantially the same, are referred to as similar.
問題パッチ703及び704の対処動作「get_environment_info」として、処理実行部306は、サーバ装置102の環境情報を取得し、当該環境情報をログとして所定の出力先に出力する。環境情報としてどのような情報が取得されるかについては、サーバ装置102で動作するアプリケーションに応じて任意に決定されてもよい。具体的な一例として、文書生成に係るアプリケーションの動作を想定した場合には、環境にインストールされたフォントのバージョンに関する情報がログとして取得されてもよい。
As the countermeasure operation "get_environment_info" of the
問題パッチ704の対処動作「notify_user」として、処理実行部306は、あらかじめ設定された方法でユーザに対して情報の通知を行う。具体的な一例として、アプリケーションの動作環境に問題パッチが適用されている場合には、通常想定してるようにアプリケーションを動作させることが困難な場合がある。また、対処動作の実行によりアプリケーションに影響を及ぼす状態を改善することが困難な場合も想定され得る。このような場合には、問題パッチの適用に伴う影響が顕在化することをユーザに報知するために、所望の出力装置を介して通知が行われるとよい。なお、通知の方法や、通知に利用される出力装置については、特に限定はされない。
As the countermeasure operation "notify_user" of the
また、アプリケーションに対する機能追加(アップデート)が、ネットワークを介したオンラインアップデート等の手段により定期的に行われる場合がある。機能追加に伴い、対処動作を実現するためのプログラムが逐次追加されることで、実現可能な対処動作パターンを増加させることも可能である。 In addition, function addition (update) to the application may be performed regularly by means such as online update via the network. It is also possible to increase the feasible coping operation patterns by sequentially adding programs for realizing the coping operation with the addition of the function.
S505において、処理実行部306は、対処動作ごとのループ処理を終了する。すなわち、処理実行部306は、実施対象となる対象動作がなくなった場合には、図5に示す一連の処理を終了することとなる。
In S505, the
なお、図5に示す対処動作の有無の決定に係る処理は、サーバ装置102において所定の処理(例えば、文書生成に係る処理)の従前に実行されていれば、実行されるタイミングについては特に限定はされない。
例えば、対処動作の有無の決定に係る処理は、通信処理を伴うため、所定の処理(例えば、文書生成に係る処理)の実行ごとにその都度実行されることで、各種処理に遅延が生じるような状況が想定され得る。このような場合には、例えば、所定の処理に対応するアプリケーションプログラムがRAM203に展開される際に、対処動作の有無の決定に係る処理が実行される制御が適用されてもよい。また、同制御の適用に加えて、所定の期間ごとに対象動作の有無の決定に係る処理が実行される制御が適用されてもよい。具体的な一例として、5分ごとに対象動作の有無の決定に係る処理が実行されれば、管理サーバ装置101側で問題パッチデータ701の更新が行われたとしても、遅くとも5分後には同更新がサーバ装置102にも反映されることとなる。これにより、サーバ装置102側で起動済のアプリケーションの再起動を行われなくとも、更新後の問題パッチデータ701の内容に応じた制御を適用することが可能となる。
If the process related to the determination of the presence or absence of the coping operation shown in FIG. 5 has been executed before the predetermined process (for example, the process related to document generation) in the
For example, since the process for determining the presence or absence of a coping action involves a communication process, various processes are delayed by being executed each time a predetermined process (for example, a process related to document generation) is executed. Situation can be assumed. In such a case, for example, when an application program corresponding to a predetermined process is expanded in the
<変形例>
以下に、本実施形態に係る情報処理システムの変形例について説明する。
図7に示す問題パッチ704の例では、一部の問題パッチを包含する包含パッチが複数存在する。このような状況下では、例えば、当該問題パッチが含む修正(例えば、アプリケーションに影響を及ぼす可能性がある修正)が、将来にわたって提供され続けるような状況も想定され得る。このような場合には、例えば、包含パッチがリリースされるたびに、問題パッチデータ701の更新が必要となる場合もある。このような状況下で、問題パッチデータ701の修正がユーザ(例えば、管理者)により手動で行われる場合には、当該修正に係る作業が煩雑化し、ユーザにとって負担となる場合もある。
以上のような状況を鑑み、本変形例では、問題パッチに含まれる修正がサーバ装置102に適用されているか否かの判定を、リソース情報に基づき行う場合の一例について提案する。なお、リソース情報とは、OSで動作するモジュール(例えば、Windows環境におけるDLL:Dynamic Link Library)に関する情報に相当する。
<Modification example>
A modification of the information processing system according to the present embodiment will be described below.
In the example of the
In view of the above situation, this modification proposes an example in which it is determined based on the resource information whether or not the correction included in the problem patch is applied to the
図8は、本実施形態に係る情報処理システム1の処理のうち、特に、対処動作の有無の決定に係る処理の一例について示している。図8に示す一連の処理のうち、S801〜S813の処理は、図6に示す例におけるS601〜S613の処理と実質的に同様である。すなわち、図8に示す例は、S820の処理が追加されている点で、図6に示す例と異なる。そこで、以降では、主に図6に示す例と異なる部分に着目して説明を行い、図6に示す例と実質的に同様の部分については、詳細な説明は省略する。
FIG. 8 shows an example of the processing related to the determination of the presence / absence of the coping operation among the processing of the
S808において、処理実行部306は、包含パッチが環境パッチのリストに含まれていないと判定した場合に、処理をS820に進める。
S820において、処理実行部306は、S801で取得した問題パッチデータ701を確認し、現在処理の対象としている問題パッチに関連するリソースがアップデートされているか否かを判定する。
In S808, when the
In S820, the
例えば、図9は、本変形例に係る問題パッチデータ701の一例を示している。問題パッチ901には、「resource」セクションとして、関連するリソースのリソース情報が定義されている。具体的には、対象となるリソースは、名前が「Abc.dll」であり、ディスク上のサイズが「2222KB」であって、更新日時が「2019/06/06 10:10:10」であることが示されている。
処理実行部306は、「resource」セクションからリソースに関する情報を読み出し、当該リソース(Abc.dll)がサーバ装置102に存在するか否かを判定する。また、処理実行部306は、対象となるリソースの更新日時を確認し、問題パッチデータ701に定義されている更新日時(2019/06/06 10:10:10)より新しいか否かを確認する。処理実行部306は、サーバ装置102に存在するリソースの更新日時が、問題パッチデータ701に定義されている更新日時よりも新しければ、当該リソースがアップデートされているとみなし、処理をS809に進める。一方で、処理実行部306は、サーバ装置102に存在するリソースの更新日時が、問題パッチデータ701に定義されている更新日時よりも新しくなければ、当該リソースがアップデートされていないとみなし、処理をS812に進める。
For example, FIG. 9 shows an example of the
The
なお、対象となるリソースがアップデートされているか否かを判定することが可能であれば、その方法は必ずしも上述のように更新日時による方法のみには限定されない。具体的な一例として、リソースのサイズやバージョン等に関する情報に基づき、当該リソースがアップデートされているか否かが判定されてもよい。なお、リソースがアップデートされているか否かの判定に利用する情報に応じて、問題パッチデータ701の「resource」セクションに定義される情報についても対応する情報に適宜変更されることが望ましい。
If it is possible to determine whether or not the target resource has been updated, the method is not necessarily limited to the method based on the update date and time as described above. As a specific example, it may be determined whether or not the resource has been updated based on information on the size and version of the resource. It is desirable that the information defined in the "resource" section of the
なお、上述の通り、S809以降の処理については、図6に示す例におけるS609以降の処理と実質的に同様のため詳細な説明は省略する。 As described above, since the processing after S809 is substantially the same as the processing after S609 in the example shown in FIG. 6, detailed description thereof will be omitted.
以上の通り、本変形例に係る情報処理システムに依れば、必ずしも包含パッチがリリースされるたびに問題パッチデータ701の更新を行う必要がなくなるため、当該更新に係るユーザの手間を抑制することが可能となる。
As described above, according to the information processing system according to this modification, it is not always necessary to update the
<その他の実施形態>
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記録媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読み出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
<Other Embodiments>
The present invention supplies a program that realizes one or more functions of the above-described embodiment to a system or device via a network or recording medium, and one or more processors in the computer of the system or device reads and executes the program. It can also be realized by the processing to be performed. It can also be realized by a circuit (for example, ASIC) that realizes one or more functions.
1 情報処理システム
101 管理サーバ装置
102 サーバ装置
305 パッチ情報取得部
306 処理実行部
1
Claims (7)
前記プログラムは、
前記プログラムが動作する動作環境に対するパッチの適用状況を示す第1の情報を取得する第1の取得工程と、
前記動作環境への適用対象となる1以上のパッチの組み合わせと、当該1以上のパッチの組み合わせが適用されている場合に前記プログラムが行うべき代替処理を特定するための情報を対応付けた第2の情報を取得する第2の取得工程と、
前記第1の情報と前記第2の情報とに基づき前記動作環境に前記1以上のパッチの組み合わせが適用されていないと特定される場合に第1の処理を実行し、前記第1の情報と前記第2の情報とに基づき前記動作環境に前記1以上のパッチの組み合わせが適用されていると特定される場合に前記第1の処理とは異なる、前記代替処理を実行する実行工程と、
を前記コンピュータに実行させることを特徴とするプログラム。 A program that is executed on the computer of an information processing device.
The program
The first acquisition step of acquiring the first information indicating the patch application status to the operating environment in which the program operates, and the first acquisition step.
A second that associates a combination of one or more patches to be applied to the operating environment with information for specifying an alternative process to be performed by the program when the combination of the one or more patches is applied. The second acquisition process to acquire the information of
When it is specified that the combination of the one or more patches is not applied to the operating environment based on the first information and the second information, the first process is executed, and the first information and the first information are used. An execution step for executing the alternative process, which is different from the first process, when it is specified that the combination of the one or more patches is applied to the operating environment based on the second information.
A program characterized by causing the computer to execute.
前記代替処理が規定された前記1以上のパッチの組み合わせを含む前記包含パッチについても、前記代替処理を特定するための情報が対応づけられていることを特徴とする請求項1乃至3のいずれか1項に記載のプログラム。 A part of the series of patches to be applied to the operating environment includes inclusion patches including the contents specified in other patches.
Any of claims 1 to 3, wherein the inclusion patch including the combination of one or more patches for which the alternative processing is defined is also associated with information for identifying the alternative processing. The program described in item 1.
前記情報処理装置に対するパッチの適用状況を示す第1の情報を取得する第1の取得手段と、
前記情報処理装置に適用対象となる1以上のパッチの組み合わせと、当該1以上のパッチの組み合わせが適用されている場合に前記情報処理装置が行うべき代替処理を特定するための情報を対応付けた第2の情報を取得する第2の取得手段と、
前記第1の情報と前記第2の情報とに基づき前記情報処理装置に前記1以上のパッチの組み合わせが適用されていないと特定される場合に第1の処理を実行し、前記第1の情報と前記第2の情報とに基づき前記情報処理装置に前記1以上のパッチの組み合わせが適用されていると特定される場合に前記第1の処理とは異なる、前記代替処理を実行する実行手段と、
を有することを特徴とする情報処理装置。 It is an information processing device
The first acquisition means for acquiring the first information indicating the application status of the patch to the information processing device, and
A combination of one or more patches to be applied to the information processing apparatus is associated with information for specifying an alternative process to be performed by the information processing apparatus when the combination of one or more patches is applied. The second acquisition means for acquiring the second information and
When it is specified that the combination of the one or more patches is not applied to the information processing apparatus based on the first information and the second information, the first process is executed and the first information is executed. And an execution means for executing the alternative process, which is different from the first process when it is specified that the combination of the one or more patches is applied to the information processing apparatus based on the second information. ,
An information processing device characterized by having.
前記情報処理装置に対するパッチの適用状況を示す第1の情報を取得する第1の取得工程と、
前記情報処理装置に適用対象となる1以上のパッチの組み合わせと、当該1以上のパッチの組み合わせが適用されている場合に前記情報処理装置が行うべき代替処理を特定するための情報を対応付けた第2の情報を取得する第2の取得工程と、
前記第1の情報と前記第2の情報とに基づき前記情報処理装置に前記1以上のパッチの組み合わせが適用されていないと特定される場合に第1の処理を実行し、前記第1の情報と前記第2の情報とに基づき前記情報処理装置に前記1以上のパッチの組み合わせが適用されていると特定される場合に前記第1の処理とは異なる、前記代替処理を実行する実行工程と、
を有することを特徴とする制御方法。 It is a control method for information processing equipment.
The first acquisition step of acquiring the first information indicating the application status of the patch to the information processing device, and
A combination of one or more patches to be applied to the information processing apparatus is associated with information for specifying an alternative process to be performed by the information processing apparatus when the combination of one or more patches is applied. The second acquisition process for acquiring the second information and
When it is specified that the combination of the one or more patches is not applied to the information processing apparatus based on the first information and the second information, the first process is executed and the first information is executed. And an execution step of executing the alternative process, which is different from the first process, when it is specified that the combination of the one or more patches is applied to the information processing apparatus based on the second information. ,
A control method characterized by having.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020041881A JP2021144405A (en) | 2020-03-11 | 2020-03-11 | Program, information processing device, and method of controlling information processing device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020041881A JP2021144405A (en) | 2020-03-11 | 2020-03-11 | Program, information processing device, and method of controlling information processing device |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2021144405A true JP2021144405A (en) | 2021-09-24 |
Family
ID=77766751
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020041881A Pending JP2021144405A (en) | 2020-03-11 | 2020-03-11 | Program, information processing device, and method of controlling information processing device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2021144405A (en) |
-
2020
- 2020-03-11 JP JP2020041881A patent/JP2021144405A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102362277B (en) | Sharable distributed dictionary for applications | |
US20070192871A1 (en) | Document management method and apparatus thereof | |
US20130063746A1 (en) | Information processing apparatus and program | |
JP5305280B2 (en) | Gadget provision server | |
JP4182083B2 (en) | Apparatus, method, and program for managing network devices connected to network | |
US8150947B2 (en) | Techniques for performing operating system installation on a headless device | |
JP5141460B2 (en) | Control program, information processing system, and information processing method | |
CN111427595A (en) | Client upgrading method, device and system | |
JP4976866B2 (en) | Program management system, client apparatus, control method thereof, and software program | |
JP2008009861A (en) | System configuration management method | |
JP2009123188A (en) | Information processing apparatus, information processing method, storage medium and program | |
JP2021144405A (en) | Program, information processing device, and method of controlling information processing device | |
JP7025298B2 (en) | Environment construction support system and environment construction support method | |
JP2010015267A (en) | Software distribution system, software distribution method, and computer program | |
JP5380895B2 (en) | Management program, management method and management apparatus | |
JP2009157882A (en) | Translation support system, translation support method and program | |
JP2006011781A (en) | Installation system, installation method, distribution apparatus, and program for the same | |
JP2005332139A (en) | Test data generation support program and test data generation support method | |
JP2011123624A (en) | Information processing device, method and program | |
JP2004362287A (en) | Update method of data | |
JP6467298B2 (en) | Server operation work history management device, system, method, and program | |
KR102218355B1 (en) | Method for managing font according to input letter | |
JP6875334B2 (en) | Server, system, client device, log information storage method, client information transmission method and program | |
JP2002222136A (en) | Network driver updating system | |
JP4908538B2 (en) | Workflow processing apparatus, program, and method |