JP2015197841A - 適用判定プログラム、適用判定方法、及び適用判定装置 - Google Patents

適用判定プログラム、適用判定方法、及び適用判定装置 Download PDF

Info

Publication number
JP2015197841A
JP2015197841A JP2014076071A JP2014076071A JP2015197841A JP 2015197841 A JP2015197841 A JP 2015197841A JP 2014076071 A JP2014076071 A JP 2014076071A JP 2014076071 A JP2014076071 A JP 2014076071A JP 2015197841 A JP2015197841 A JP 2015197841A
Authority
JP
Japan
Prior art keywords
file
execution
program
storage unit
execution history
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
Application number
JP2014076071A
Other languages
English (en)
Other versions
JP6379599B2 (ja
Inventor
光 橋本
Hikari Hashimoto
光 橋本
順平 前濱
Junpei Maehama
順平 前濱
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2014076071A priority Critical patent/JP6379599B2/ja
Priority to EP15152653.0A priority patent/EP2927808A1/en
Priority to US14/608,229 priority patent/US20150286476A1/en
Priority to CN201510082612.4A priority patent/CN104978216A/zh
Publication of JP2015197841A publication Critical patent/JP2015197841A/ja
Application granted granted Critical
Publication of JP6379599B2 publication Critical patent/JP6379599B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/658Incremental updates; Differential updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/865Monitoring of software

Abstract

【課題】プログラムの実行状況に応じて修正の適用の要否を判定可能とすること。【解決手段】適用判定プログラムは、実行ファイルに含まれる複数のプログラムについてそれぞれの実行履歴を記憶部に記憶し、前記実行ファイルの修正に用いられる修正ファイルの適用により、前記実行ファイルに含まれる前記複数のプログラムのうち一部のプログラムが変更される場合に、該一部のプログラムについての実行履歴として、所定の条件に合致する実行履歴が前記記憶部に記憶されているか否かに応じて前記修正ファイルを適用するか否かを判定する、処理をコンピュータに実行させる。【選択図】図3

Description

本発明は、修正ファイルの適用判定プログラム、適用判定方法、及び適用判定装置に関する。
ソフトウェアを構成する或る関数におけるバグの修正や機能拡張等を目的として当該関数が修正されると、修正後の当該関数を含むライブラリを含むパッチが提供される。パッチを利用することにより、ソフトウェア全体を更新する場合に比べ、ソフトウェアの修正作業の効率化を図ることができる。
国際公開第2007/105274号
しかしながら、パッチが適用されると、ソフトウェアのファイル構成が変化したり、ソフトウェアによるメモリの使用状況等が変化したりする場合が有る。斯かる変化により、これまで正常に動作していた機能に関して、その動作が不安定になる可能性が有る。
したがって、ユーザによるソフトウェアの利用状況が、パッチによって修正される関数が実行されるようなものではない場合、パッチの適用を避けた方が、ソフトウェアの安定稼動にとって望ましい場合もある。
そこで、本発明は、一側面では、プログラムの実行状況に応じて修正の適用の要否を判定可能とすることを目的とする。
一つの案では、適用判定プログラムは、実行ファイルに含まれる複数のプログラムについてそれぞれの実行履歴を記憶部に記憶し、前記実行ファイルの修正に用いられる修正ファイルの適用により、前記実行ファイルに含まれる前記複数のプログラムのうち一部のプログラムが変更される場合に、該一部のプログラムについての実行履歴として、所定の条件に合致する実行履歴が前記記憶部に記憶されているか否かに応じて前記修正ファイルを適用するか否かを判定する、処理をコンピュータに実行させる。
一態様によれば、プログラムの実行状況に応じて修正の適用の要否を判定可能とすることができる。
本発明の実施の形態における情報処理システムの構成例を示す図である。 本発明の実施の形態における情報処理装置のハードウェア構成例を示す図である。 本発明の実施の形態における情報処理装置の機能構成例を示す図である。 実行履歴書込部が実行する処理手順の一例を説明するためのフローチャートである。 実行履歴記憶部の構成例を示す図である。 パッチ処理部が実行する処理手順の一例を説明するためのフローチャートである。 適用情報ファイルの構成例を示す図である。
以下、図面に基づいて本発明の実施の形態を説明する。図1は、本発明の実施の形態における情報処理システムの構成例を示す図である。図1において、パッチ管理サーバ20と1以上の情報処理装置10とは、LAN(Local Area Network)又はインターネット等のネットワークを介して接続される。
情報処理装置10は、パッチの適用対象とされるソフトウェアを有するコンピュータである。当該ソフトウェアは、OS(Operating System)、ミドルウェア、及びアプリケーション等のいずれであってもよい。また、情報処理装置10は、ネットワークを介して接続されるクライアント装置に対してサービスを提供するサーバ装置でもよいし、当該クライアント装置でもよい。また、携帯電話、スマートフォン、及びタブレット型端末等が、情報処理装置10であってもよい。
パッチ管理サーバ20は、情報処理装置10にインストールされたソフトウェアに対するパッチを管理するコンピュータである。パッチとは、ソフトウェアを構成するファイル群のうちの一部のファイルに対してバグの修正等が行われたファイルを含むデータをいう。例えば、ソフトウェアを構成する実行ファイルに含まれる各プログラムのうちの一部のプログラムに関してバグ修正が行われた場合、修正後の当該プログラムを含む実行ファイルがパッチを構成する。なお、本実施の形態において、実行ファイルとは、情報処理装置10のCPUに処理を実行させるファイルをいう。実行ファイルには、実行形式のファイルのみならず、ライブラリ等、関数の集合であるファイルも含まれる。
図2は、本発明の実施の形態における情報処理装置のハードウェア構成例を示す図である。図2の情報処理装置10は、それぞれバスBで相互に接続されているドライブ装置100、補助記憶装置102、メモリ装置103、CPU104、及びインタフェース装置105等を有する。
情報処理装置10での処理を実現するプログラムは、記録媒体101によって提供される。プログラムを記録した記録媒体101がドライブ装置100にセットされると、プログラムが記録媒体101からドライブ装置100を介して補助記憶装置102にインストールされる。但し、プログラムのインストールは必ずしも記録媒体101より行う必要はなく、ネットワークを介して他のコンピュータよりダウンロードするようにしてもよい。補助記憶装置102は、インストールされたプログラムを格納すると共に、必要なファイルやデータ等を格納する。
メモリ装置103は、プログラムの起動指示があった場合に、補助記憶装置102からプログラムを読み出して格納する。CPU104は、メモリ装置103に格納されたプログラムに従って情報処理装置10に係る機能を実行する。インタフェース装置105は、ネットワークに接続するためのインタフェースとして用いられる。
なお、記録媒体101の一例としては、CD−ROM、DVDディスク、又はUSBメモリ等の可搬型の記録媒体が挙げられる。また、補助記憶装置102の一例としては、HDD(Hard Disk Drive)又はフラッシュメモリ等が挙げられる。記録媒体101及び補助記憶装置102のいずれについても、コンピュータ読み取り可能な記録媒体に相当する。
図3は、本発明の実施の形態における情報処理装置の機能構成例を示す図である。図3において、情報処理装置10には、ソフトウェア製品SW1がインストールされている。ソフトウェア製品SW1は、1以上のコンポーネントCPを含む。コンポーネントCPとは、ソフトウェア製品SW1を構成する部品としてのソフトウェアをいう。例えば、ソフトウェア製品SW1の機能別にコンポーネントCPが作成されてもよい。各コンポーネントCPは、1以上のモジュールを含む。1つのモジュールは、1つ以上のファイルを構成する。モジュールは、例えば、プロセスを生成する実行形式ファイル若しくはコマンドファイル、又は関数の集合であるライブラリ、又は設定情報を含むリソースファイル等である。例えば、ライブラリとしてのモジュールには、複数の関数が含まれる。実行形式ファイルとしてのモジュールにも、1以上の関数が含まれてもよい。なお、図3に示されるソフトウェア製品SW1の構造は、一例に過ぎない。図3とは異なる構造を有するソフトウェア製品に関して、本実施の形態が適用されてもよい。
情報処理装置10は、また、実行履歴書込部11及びパッチ処理部12等を有する。これら各部は、情報処理装置10にインストールされた1以上のプログラムが、CPU104に実行させる処理により実現される。情報処理装置10は、更に、実行履歴記憶部13及びインストール情報記憶部14等を利用する。実行履歴記憶部13は、補助記憶装置102、又は情報処理装置10にネットワークを介して接続される非図示の記憶装置等を用いて実現可能である。
実行履歴書込部11は、モジュールに埋め込まれたチェックポイントに係る処理が実行された場合に、当該チェックポイントが実行されたことを示す実行履歴を、実行履歴記憶部13に記憶する。チェックポイントとは、モジュールのソースコードにおいて、予め埋め込まれる、実行履歴書込部11の呼び出し部分をいう。なお、実行履歴書込部11を利用せずに、汎用的なコメントの出力関数を用いて、実行履歴が記憶されてもよい。実行履歴書込部11は、関数(以下、「実行履歴書込関数」という。)として実装されてもよい。この場合、モジュール内において、実行履歴書込関数を呼び出している箇所が、チェックポイントである。なお、チェックポイントは、モジュール単位又はモジュールに含まれる関数単位で埋め込まれても良いし、関数内の複数箇所に埋め込まれてもよい。モジュール単位の場合、当該モジュールを利用する側において、実行履歴書込関数が呼び出されてもよいし、当該モジュールのロード後に最初に実行される箇所において実行履歴書込関数が呼び出されてもよい。関数単位の場合、関数の最初又は最後等において、実行履歴書込関数が呼び出されてもよい。関数内の複数箇所の場合、例えば、一つの関数において、特定の条件が満たされた場合に実行される経路ごとに、実行履歴書込関数が呼び出されてもよい。
インストール情報記憶部14は、情報処理装置10にインストールされているソフトウェア製品SW1のコンポーネントCPごとに、当該コンポーネントCPの識別情報(以下、「コンポーネントID」という。)を記憶する。
パッチ処理部12は、パッチP1の適用に関する処理を実行する。図3において、パッチ処理部12は、照会部121、適用情報取得部122、適用判定部123、修正モジュール取得部124、及び修正モジュール適用部125等を含む。
照会部121は、情報処理装置10にインストールされているコンポーネントCPに対するパッチP1の有無を、パッチ管理サーバ20に照会する。本実施の形態では、コンポーネントCPごとにパッチP1がリリースされる。
適用情報取得部122は、パッチP1がリリースされていることが判明した場合に、当該パッチP1の適用情報ファイルf1を取得する。本実施の形態において、一つのパッチP1は、適用情報ファイルf1及び修正モジュール群ps1を含む。適用情報ファイルf1は、パッチP1を適用する1以上の条件(以下、「適用条件」という。)や、各適用条件が満たされた場合に実行すべき処理を示す情報が定義されたファイルである。適用情報ファイルf1は、例えば、一つのテキストファイルである。修正モジュール群ps1は、1以上の修正されたモジュール(以下、「修正モジュール」という。)の集合である。例えば、ライブラリに対応する修正モジュールは、当該修正モジュールに含まれる関数のうちの一部の関数について、修正が行われている。各修正モジュールは、対応するモジュールの識別情報(以下、「モジュールID」という。)に関連付けられて、パッチ管理サーバ20に記憶されている。なお、本実施の形態において、モジュールと、当該モジュールの修正モジュールとのモジュールIDは、便宜上、同じであるとする。したがって、モジュールIDによって、モジュールと、当該モジュールの修正モジュールとの対応関係が把握される。
適用判定部123は、実行履歴記憶部13に記憶されている実行履歴が、適用情報取得部122によって取得された適用情報ファイルf1に定義されている1以上の適用条件のうちのいずれかを満たすか否かに応じて、各修正モジュールの適用の要否を判定する。修正モジュールの適用とは、当該修正モジュールによって、当該修正モジュールに対応するモジュールを置き換えることをいう。
修正モジュール取得部124は、適用判定部123によって、いずれかの修正モジュールの適用が必要であると判定された場合に、当該修正モジュール又は当該修正モジュールを含む修正モジュール群を、パッチ管理サーバ20から取得(ダウンロード)する。修正モジュール適用部125は、修正モジュール取得部124によって取得された修正モジュールを適用する。
なお、パッチP1が記憶されている場所は、パッチ管理サーバ20でなくてもよい。例えば、CD−ROM、DVDディスク、又はUSBメモリ等の可搬型の記録媒体にパッチP1が記憶されていてもよい。この場合、パッチ処理部12は、情報処理装置10のドライブ装置100にセットされた当該記録媒体を参照して処理を実行してもよい。
以下、情報処理装置10が実行する処理手順について説明する。図4は、実行履歴書込部が実行する処理手順の一例を説明するためのフローチャートである。図4に示される処理は、ソフトウェア製品SW1に含まれる各コンポーネンに埋め込まれているチェックポイントにおける、実行履歴書込関数の呼び出しに応じて開始される。なお、実行履歴書込関数には、各チェックポイントを識別する識別情報(以下、「チェック番号」という。)が指定される。すなわち、実行履歴書込部11には、チェックポイントのチェック番号が通知される。なお、チェック番号は、チェックポイントの識別名であってもよい。例えば、或る関数のチェックポイントに対するチェック番号は、当該関数の関数名を含んでいてもよい。また、或るモジュールのチェックポイントに対するチェック番号は、当該モジュールのファイル名を含んでもよい。すなわち、チェックポイントの命名規則は、適宜決定されてよい。
実行履歴書込関数の呼び出しに応じ、実行履歴書込部11は、通知されたチェック番号に対するエントリが、実行履歴記憶部13に記憶されているか否かを判定する(S101)。
図5は、実行履歴記憶部の構成例を示す図である。図5において、実行履歴記憶部13は、チェック番号に対応付けて、実行回数を記憶する。実行回数は、実行履歴の一例であり、当該チェック番号に係るチェックポイントが実行された回数である。
ステップS101では、通知されたチェック番号を含むエントリ(レコード)の有無が判定される。該当するエントリが有る場合(S101でYes)、実行履歴書込部11は、当該エントリの実行回数に1を加算する(S103)。該当するエントリが無い場合(S101でNo)、実行履歴書込部11は、当該チェック番号に対応するエントリを、実行履歴記憶部13に追加する(S102)。追加されたエントリの実行回数の値は、0に初期化される。続いて、実行履歴書込部11は、ステップS103を実行する。したがって、この場合、当該エントリの実行回数の値は、1となる。
このように、各モジュールに埋め込まれたチェックポイントが実行されるたびに、当該チェックポイントの実行回数がインクリメントされる。なお、チェックポイントは、モジュールごと、関数ごと、コマンドごと等、コンポーネントCPの作成者の任意の箇所に埋め込まれる。したがって、例えば、関数ごとにチェックポイントが埋め込まれれば、実行履歴記憶部13には、各関数の実行回数が記憶されることになる。
続いて、パッチ処理部12が実行する処理手順について説明する。図6は、パッチ処理部が実行する処理手順の一例を説明するためのフローチャートである。図6の処理は、定期的又は不定期に実行される。不定期に実行される場合、例えば、実行形式ファイルである特定のモジュールの起動、ライブラリである特定のモジュールのロード、特定のモジュールに含まれる特定の関数の実行等に応じて、図6の処理が開始されてもよい。
ステップS201において、照会部121は、パッチP1の有無の照会要求をパッチ管理サーバ20に送信する(S201)。当該照会要求に応じ、パッチ管理サーバ20は、パッチ管理サーバ20に記憶されているパッチP1に関連付けられているコンポーネントIDの一覧を返信する。すなわち、パッチP1がリリースされているコンポーネントCPのコンポーネントIDの一覧が返信される。
続いて、照会部121は、返信されたコンポーネントIDの一覧の中に、インストール情報記憶部14に記憶されているコンポーネントIDが含まれているか否かに基づいて、情報処理装置10にインストールされているコンポーネントCPに対するパッチP1の有無を判定する(S202)。すなわち、返信されたコンポーネントIDの一覧の中に、インストール情報記憶部14に記憶されているコンポーネントIDが含まれている場合、照会部121は、情報処理装置10にインストールされているコンポーネントCPに対するパッチP1は有ると判定する。なお、返信されたコンポーネントIDの一覧と、インストール情報記憶部14との双方に含まれるコンポーネントIDを、以下「対象コンポーネントID」という。対象コンポーネントIDは、複数であってもよい。一方、返信されたコンポーネントIDの一覧の中に、インストール情報記憶部14に記憶されているコンポーネントIDが含まれていない場合、照会部121は、情報処理装置10にインストールされているコンポーネントCPに対するパッチP1は無いと判定する。
なお、ステップS202における判定は、パッチ管理サーバ20によって行われてもよい。この場合、ステップS201においてパッチ管理サーバ20に送信される照会要求には、インストール情報記憶部14に記憶されているコンポーネントIDの一覧が含まれてもよい。パッチ管理サーバ20は、当該一覧に含まれるいずれかのコンポーネントIDに関連付けられて記憶されているパッチP1の有無を判定し、当該判定結果を情報処理装置10に返信してもよい。
情報処理装置10にインストールされているコンポーネントCPに対するパッチP1が無い場合(S202でNo)、図6の処理は終了する。該当するパッチP1(以下、「対象パッチP1」という。)が有る場合(S202でYes)、適用情報取得部122は、対象パッチP1の適用情報ファイルf1を取得済みであるか否かを判定する(S203)。例えば、対象コンポーネントIDに関連付けられて、補助記憶装置102に適用情報ファイルf1が記憶されているか否かが判定される。
対象パッチP1の適用情報ファイルf1が取得されている場合(S203でNo)、ステップS204は実行せずにステップS205に進む。なお、適用情報ファイルf1が取得されている場合であっても、当該適用情報ファイルf1が更新されている場合もあるので、当該適用情報ファイルf1に関して更新の有無が確認されてもよい。更新されている場合、改めて、当該適用情報ファイルが取得されてもよい。
対象パッチP1の適用情報ファイルf1が取得されていない場合(S203でYes)、適用情報取得部122は、対象パッチP1の適用情報ファイルf1を、パッチ管理サーバ20から取得する(S204)。対象パッチP1の適用情報ファイルf1とは、対象コンポーネントIDに関連付けられてパッチ管理サーバ20に記憶されている適用情報ファイルf1である。適用情報取得部122は、取得された適用情報ファイルf1を、対象コンポーネントIDに関連付けて補助記憶装置102に記憶する。
図7は、適用情報ファイルの構成例を示す図である。図7に示されるように、適用情報ファイルf1は、1以上のエントリを含む。各エントリは、チェック番号、適用条件、修正ID、及び処理群コード等を含む。
チェック番号は、実行履歴記憶部13に記憶されている実行回数のうち、適用条件の充足の判定において注目される実行回数のチェック番号である。適用条件は、修正IDに係る修正モジュールが適用される条件である。厳密には、適用条件は、当該エントリの処理群コードによって特定される処理が実行される条件である。適用条件に含まれるNは、当該エントリのチェック番号に対する実行回数を示す。修正IDは、対象パッチP1の修正モジュール群ps1に含まれる修正モジュールのうち、適用対象となる修正モジュールのモジュールIDである。換言すれば、修正IDは、情報処理装置10が有するモジュールのうち、修正対象のモジュールのモジュールIDであるともいえる。
すなわち、本実施の形態では、必ずしも対象パッチP1に含まれる全ての修正モジュールが適用対象となるとは限らない。実行履歴記憶部13に記憶されている情報に応じて、すなわち、ユーザによるソフトウェア製品SW1の利用状況に応じて、適用対象となる修正モジュールが変化する。処理群コードは、適用条件が満たされた場合に、実行すべき1以上の処理の処理コードの和である。本実施の形態では、処理コードの一例として、以下の値が定義される。
0:何の処理も実行しない。
1:適用対象の修正モジュールをダウンロードする。
2:修正IDに係るモジュールをロードしているプロセスの終了を待機して、修正モジュールを適用する。
4:修正IDに係るモジュールをロードしているプロセスを強制終了して、修正モジュールを適用する。
8:以降のエントリを無視する。
上記したように、適用情報ファイルf1に含まれる処理群コードは、処理コードの和である。但し、処理コード「0」は、単独でのみ用いられ、処理群コードを構成しない。また、複数の処理コードを含む処理群コードにおいて、各処理コードに係る処理の実行順は、処理コードの小さい順となる。したがって、例えば、処理群コード「5」は、処理コード「1」の処理の実行後に、処理コード「2」の処理を実行すべきことを示す。処理群コード「3」は、処理コード「1」の処理の実行後に、処理コード「4」の処理を実行すべきことを示す。
なお、適用情報ファイルf1は、照会部121によるパッチP1の有無の照会に基づいて取得されなくてもよい。例えば、パッチ管理サーバ20に新たなパッチP1が登録された際に、当該パッチP1の適用情報ファイルf1が、パッチ管理サーバ20から情報処理装置10に対して配信されてもよい。
続いて、適用判定部123は、取得された適用情報ファイルf1に含まれる各エントリの適用条件について、充足の有無を判定する(S205)。例えば、図7の1番目のエントリに関しては、チェック番号「W001」に対する実行回数が、1以上であるか否かが判定される。2番目のエントリに関しては、チェック番号「xa001」に対する実行回数が、1以上30以下であるか否かが判定される。3番目のエントリに関しては、チェック番号「xb001」に対する実行回数が0であるか否かが判定される。4番目のエントリに関しては、チェック番号「xc002」に対する実行回数が、60以上であるか否かが判定される。5番目のエントリに関しては、チェック番号「yb011」に対する実行回数が、1以上であるか否かが判定される。6番目のエントリに関しては、実行回数が0であるか否かが判定される。なお、チェック番号に対する実行回数とは、当該チェック番号に対応付けられて実行履歴記憶部13に記憶されている実行回数をいう。
なお、ステップS205は、ステップS204に同期して(ステップS204に続けて)実行されなくてもよい。ステップS204の実行後の任意のタイミングにおいて実行されてもよい。例えば、実行形式ファイルとしてのモジュールの起動若しくは終了、又は特定の関数の開始若しくは終了に応じてステップS205が実行されてもよい。このように、ステップS205の実行タイミングを動的にする場合、当該タイミングを示す定義情報が生成され、補助記憶装置102に記憶されてもよい。又は、当該定義情報は、パッチ管理サーバ20からダウンロードされてもよい。
適用条件が充足されるエントリが無い場合(S206でNo)、図6の処理は終了する。適用条件が充足されるエントリが1以上有る場合(S206でYes)、適用処理部は、当該エントリの処理群コードが示す処理を実行する(S207)。
例えば、図7の1番目又は5番目のエントリであれば、修正モジュール取得部124は、当該エントリの修正IDに係る修正モジュールを含む修正モジュール群を、パッチ管理サーバ20から取得する。修正モジュール適用部125は、当該モジュールIDに係るモジュールをロードするプロセスを強制終了して、当該修正モジュールを適用する。
なお、或るモジュールをロードするプロセスの特定は、例えば、モジュールとプロセスとの関係を示す情報に基づいて行われてもよい。モジュールとプロセスとの関係を示す情報とは、厳密には、モジュールと、当該モジュールをロードするプロセスを生成する実行形式ファイルとの関係を示す情報である。当該情報は、予め作成され、補助記憶装置102に記憶されていてもよいし、パッチ管理サーバ20からダウンロードされてもよい。
また、2番目のエントリであれば、修正モジュール取得部124は、モジュールIDが「p1002」である修正モジュールを、パッチ管理サーバ20から取得する。この場合、当該修正モジュールの適用は、当該モジュールIDに係るモジュールをロードするプロセスが終了しても実行されない。2番目のエントリの意義は、xa001のチェックポイントが1以上30以下である場合は、モジュールIDが「p1002」である修正モジュールを適用する必要性が高いため、その準備のためにダウンロードだけをしておくというものである。したがって、2番目のエントリに対応させて、修正IDが「p1002」であり、処理群コードが「2」又は「4」であるエントリが定義されてもよい。
3番目のエントリであれば、4番目以降のエントリが無視される。なお、処理コード「8」の意味は、「以前のエントリを無効化する」でもよい。4番目又は6番目のエントリであれば、修正モジュール取得部124は、当該エントリの修正IDに係る修正モジュールを、パッチ管理サーバ20から取得する。修正モジュール適用部125は、当該モジュールIDに係るモジュールをロードするプロセスが終了するのを待機して、当該修正モジュールを適用する。
なお、或るプロセスの終了のタイミングは、当該プロセスによって修正モジュール適用部125に通知されることにより検知されてもよい。または、修正モジュール適用部125が、OS(Operating System)等を介して、各プロセスの状態を監視することにより、各プロセスの終了が検知されてもよい。
上記では、修正モジュールの適用のタイミングは、当該修正モジュールに対応するモジュールをロードしているプロセスの終了後であるが、更に細かい単位で、修正モジュールの適用のタイミングの選択肢が設けられてもよい。例えば、修正モジュールの適用のタイミングの選択肢として、ライブラリのアンロード時を追加したい場合、各ライブラリのアンロードが、修正モジュール適用部125に通知されるようにしてもよい。ライブラリのアンロードの通知は、当該ライブラリが通知可能であれば当該ライブラリによって行われてもよいし、当該ライブラリをアンロードする側のモジュールによって行われてもよい。また、修正モジュールの適用のタイミングの選択肢として、モジュールに含まれる関数の開始又は関数の終了後を追加したい場合、各関数の開始又は終了が、修正モジュール適用部125に通知されるようにしてもよい。関数の開始及び終了は、当該関数内において通知されてもよいし、当該関数を呼び出す側において通知されてもよい。
なお、6番目のエントリが示す内容は、チェック番号「z110」に対する実行回数が0である場合に、モジュールIDが「p1004」である修正モジュールをダウンロードして適用するというものである。当該エントリは、チェック番号「z110」に係るチェックポイントが実行されていないことで、当該チェックポイントと排他的な関係に有る箇所が実行されていることが推定されるという考えに基づく。すなわち、修正ID「p1004」は、当該チェックポイントと排他的な関係に有る箇所が実行されている場合に、適用されるべき修正モジュールのモジュールIDである。
このように、適用情報ファイルf1では、どのような状況においてどの修正モジュールを適用するのかについて、柔軟な設定を行うことができる。
例えば、ライブラリとしての或るモジュール(以下、「モジュールa」という。)が、関数Aと、関数Aが条件に応じて呼び分ける関数B及び関数Cとを含むとする。このようなモジュールaに対して、関数Cにおけるバグが修正された、修正モジュールCを含むパッチP1がリリースされたとする。この場合、当該パッチP1に関する適用情報ファイルf1において、以下のようなエントリが定義されてもよい。
チェック番号:関数B内の任意の箇所のチェックポイントに対するチェック番号
適用条件:1≦N
修正ID:修正モジュールCのモジュールID
処理群コード:1又は3又は5
上記のようなエントリによれば、関数Cが実行されていない場合でも、関数Bが実行されていれば、修正モジュールCを適用することができる。上記したように、関数Bは、関数Aから呼び出される。したがって、関数Bが実行されているということは、関数Aが実行されているということになる。そして、関数Aが実行されているということは、関数A内の条件次第で、関数Cが呼び出される可能性が有るということである。したがって、関数Bが実行されている場合に、関数Cに関して修正された修正モジュールCを適用する意義は有ると考えられる。
また、図7の2番目のエントリのように、実行回数が、所定値以上である場合には、修正モジュールを適用しない、といったエントリが定義されてもよい。所定値は、十分な実行実績が有ると考えられる値である。斯かるエントリによれば、十分な実行実績が有り、安定稼働しているモジュールに関して、修正モジュールが適用されることを回避することができる。
なお、パッチP1が可搬型の記録媒体によって配布される場合、図6の処理において、パッチ管理サーバ20に対して行われていた処理は、当該記録媒体に対して行われるようにしてもよい。
続いて、実行履歴記憶部13に記憶される実行履歴の変形例について説明する。上記では、実行履歴の一例として実行回数が記憶される例を説明した。修正モジュールの適用条件が、実行実績の有無によって判定可能であれば、実行履歴として、実行実績の有無が記憶されてもよい。この場合、実行履歴書込部11は、実行履歴書込部11が属するプロセスの起動時に、実行履歴記憶部13に記憶されているエントリをメモリ装置103に読み込んでおく。実行履歴書込部11は、図4のステップS101の実行前に、通知されたチェック番号を含むエントリがメモリ装置103に記憶されている場合、ステップS101以降を実行しない。その結果、実行履歴記憶部13には、実行されたチェックポイントごとに1が記憶され、以降の実行に応じて実行回数の更新は行われない。こうすることで、実行履歴記憶部13に対するアクセス回数を減少させることができ、実行履歴の書き込みによる性能の劣化の可能性を低減することができる。
また、チェックポイントにおける特定の変数の値が実行履歴に含まれるようにしてもよい。この場合、適用条件は、当該変数の値に関して設定されてもよい。そうすることで、関数の実行状況等に応じて、修正モジュールの適用の要否を判定することができる。
また、関数の引数の値が実行履歴に含まれるようにしてもよい。この場合、適用条件は、当該引数の値に関して設定されてもよい。そうすることで、関数の引数の値に応じて、修正モジュールの適用の要否を判定することができる。引数のデータ型が文字列であれば、当該文字列の文字種別(全角、半角、英数字等)を示す値が実行履歴に含まれてもよい。
また、実行履歴には、「ON」又は「OFF」等、適用条件の充足の有無を示す値が含まれてもよい。この場合、適用情報ファイルf1の各エントリにおいて、適用条件は設けられなくてもよい。実行履歴記憶部13において、チェック番号に対して「ON」が記憶されていれば、適用条件は満たされたと判定可能であるからである。このような実行履歴は、或るチェックポイントが実行された場合に、修正モジュールの適用を回避したい場合等に有効である。この場合、当該チェックポイントでは、「OFF」という実行履歴が実行履歴記憶部13に記憶されるようにすればよい。
上述したように、本実施の形態によれば、各モジュールに含まれる関数等に関して、実行履歴を記憶し、当該実行履歴が所定の条件を満たすか否かに応じて、修正モジュールの適用の要否が判定される。したがって、関数の実行状況に応じて修正モジュールの適用の要否を判定可能とすることができる。
また、本実施の形態によれば、複数の修正モジュールのうち、実行されたことを示す実行履歴が記憶されている関数を含むモジュールに対応する修正モジュールが、適用対象とされる。したがって、実行されている関数を含まないモジュール、すなわち、利用されていないモジュールに対応する修正モジュールが適用されることによって、ソフトウェア製品SW1の動作が不安定になる可能性を低減することができる。
なお、一つの情報処理装置10に複数のソフトウェア製品がインストールされており、各ソフトウェア製品が、同一のコンポーネントを別個に有する場合、例えば、同一のコンポーネントのうち、パッチの適用対象の特定を可能とするために、パッチ適用ファイルは、ソフトウェア製品ごと作成されてもよい。また、チェック番号や修正IDに、ソフトウェア製品の識別情報及びコンポーネントの識別情報が含まれるようにしてもよい。
なお、本実施の形態において、実行履歴記憶部13は、記憶部の一例である。適用判定部123は、判定部の一例である。情報処理装置10は、適用判定装置の一例である。モジュールは、実行ファイルの一例である。修正モジュールは、修正ファイルの一例である。
以上、本発明の実施例について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
以上の説明に関し、更に以下の項を開示する。
(付記1)
実行ファイルに含まれる複数のプログラムについてそれぞれの実行履歴を記憶部に記憶し、
前記実行ファイルの修正に用いられる修正ファイルの適用により、前記実行ファイルに含まれる前記複数のプログラムのうち一部のプログラムが変更される場合に、該一部のプログラムについての実行履歴として、所定の条件に合致する実行履歴が前記記憶部に記憶されているか否かに応じて前記修正ファイルを適用するか否かを判定する、
処理をコンピュータに実行させる修正ファイルの適用判定プログラム。
(付記2)
前記記憶する処理は、前記実行ファイルに含まれる複数のプログラムについてそれぞれの実行回数を前記記憶部に記憶し、
前記判定する処理は、前記一部のプログラムについての実行回数として、所定回数以上の実行回数が前記記憶部に記憶されているか否かに応じて前記修正ファイルを適用するか否かを判定する、
ことを特徴とする付記1記載の適用判定プログラム。
(付記3)
前記記憶する処理は、前記実行ファイルごとの実行履歴を前記記憶部に記憶し、
前記実行ファイルについての実行履歴として、所定の条件に合致する実行履歴が前記記憶部に記憶されているか否かに応じて前記修正ファイルを適用するか否かを判定する、
ことを特徴とする付記1又は2記載の適用判定プログラム。
(付記4)
前記判定する処理は、第一のプログラムから呼び出される第二のプログラム及び第三のプログラムのうち、前記第二のプログラムが実行されたことを示す実行履歴が前記記憶部に記憶されており、前記第三のプログラムが実行されたことを示す実行履歴が前記記憶部に記憶されてない場合に、前記第三のプログラムについて修正された修正ファイルを、前記第一のプログラム、前記第二のプログラム、及び前記第三のプログラムを含む実行ファイルに適用すると判定する、
ことを特徴とする付記1乃至3いずれか一項記載の適用判定プログラム。
(付記5)
前記記憶する処理は、複数の実行ファイルに含まれる複数のプログラムのそれぞれの実行履歴を前記記憶部に記憶し、
前記判定する処理は、複数の実行ファイルのそれぞれに対する複数の修正ファイルのうち、実行されたことを示す実行履歴が前記記憶部に記憶されているプログラムを含む実行ファイルに対応する修正ファイルについて、適用すると判定する、
ことを特徴とする付記1乃至4いずれか一項記載の適用判定プログラム。
(付記6)
実行ファイルに含まれる複数のプログラムについてそれぞれの実行履歴を記憶部に記憶し、
前記実行ファイルの修正に用いられる修正ファイルの適用により、前記実行ファイルに含まれる前記複数のプログラムのうち一部のプログラムが変更される場合に、該一部のプログラムについての実行履歴として、所定の条件に合致する実行履歴が前記記憶部に記憶されているか否かに応じて前記修正ファイルを適用するか否かを判定する、
処理をコンピュータが実行することを特徴とする修正ファイルの適用判定方法。
(付記7)
前記記憶する処理は、前記実行ファイルに含まれる複数のプログラムについてそれぞれの実行回数を前記記憶部に記憶し、
前記判定する処理は、前記一部のプログラムについての実行回数として、所定回数以上の実行回数が前記記憶部に記憶されているか否かに応じて前記修正ファイルを適用するか否かを判定する、
ことを特徴とする付記6記載の適用判定方法。
(付記8)
前記記憶する処理は、前記実行ファイルごとの実行履歴を前記記憶部に記憶し、
前記実行ファイルについての実行履歴として、所定の条件に合致する実行履歴が前記記憶部に記憶されているか否かに応じて前記修正ファイルを適用するか否かを判定する、
ことを特徴とする付記6又は7記載の適用判定方法。
(付記9)
前記判定する処理は、第一のプログラムから呼び出される第二のプログラム及び第三のプログラムのうち、前記第二のプログラムが実行されたことを示す実行履歴が前記記憶部に記憶されており、前記第三のプログラムが実行されたことを示す実行履歴が前記記憶部に記憶されてない場合に、前記第三のプログラムについて修正された修正ファイルを、前記第一のプログラム、前記第二のプログラム、及び前記第三のプログラムを含む実行ファイルに適用すると判定する、
ことを特徴とする付記6乃至8いずれか一項記載の適用判定方法。
(付記10)
前記記憶する処理は、複数の実行ファイルに含まれる複数のプログラムのそれぞれの実行履歴を前記記憶部に記憶し、
前記判定する処理は、複数の実行ファイルのそれぞれに対する複数の修正ファイルのうち、実行されたことを示す実行履歴が前記記憶部に記憶されているプログラムを含む実行ファイルに対応する修正ファイルについて、適用すると判定する、
ことを特徴とする付記6乃至9いずれか一項記載の適用判定方法。
(付記11)
実行ファイルに含まれる複数のプログラムについてそれぞれの実行履歴を記憶する記憶部と、
前記実行ファイルの修正に用いられる修正ファイルの適用により、前記実行ファイルに含まれる前記複数のプログラムのうち一部のプログラムが変更される場合に、該一部のプログラムについての実行履歴として、所定の条件に合致する実行履歴が前記記憶部に記憶されているか否かに応じて前記修正ファイルを適用するか否かを判定する判定部と、
を有することを特徴とする修正ファイルの適用判定装置。
(付記12)
前記記憶部は、前記実行ファイルに含まれる複数のプログラムについてそれぞれの実行回数を前記記憶部に記憶し、
前記判定部は、前記一部のプログラムについての実行回数として、所定回数以上の実行回数が前記記憶部に記憶されているか否かに応じて前記修正ファイルを適用するか否かを判定する、
ことを特徴とする付記11記載の適用判定装置。
(付記13)
前記記憶部は、前記実行ファイルごとの実行履歴を前記記憶部に記憶し、
前記実行ファイルについての実行履歴として、所定の条件に合致する実行履歴が前記記憶部に記憶されているか否かに応じて前記修正ファイルを適用するか否かを判定する、
ことを特徴とする付記11又は12記載の適用判定装置。
(付記14)
前記判定部は、第一のプログラムから呼び出される第二のプログラム及び第三のプログラムのうち、前記第二のプログラムが実行されたことを示す実行履歴が前記記憶部に記憶されており、前記第三のプログラムが実行されたことを示す実行履歴が前記記憶部に記憶されてない場合に、前記第三のプログラムについて修正された修正ファイルを、前記第一のプログラム、前記第二のプログラム、及び前記第三のプログラムを含む実行ファイルに適用すると判定する、
ことを特徴とする付記11乃至13いずれか一項記載の適用判定装置。
(付記15)
前記記憶部は、複数の実行ファイルに含まれる複数のプログラムのそれぞれの実行履歴を前記記憶部に記憶し、
前記判定部は、複数の実行ファイルのそれぞれに対する複数の修正ファイルのうち、実行されたことを示す実行履歴が前記記憶部に記憶されているプログラムを含む実行ファイルに対応する修正ファイルについて、適用すると判定する、
ことを特徴とする付記11乃至14いずれか一項記載の適用判定装置。
10 情報処理装置
11 実行履歴書込部
12 パッチ処理部
13 実行履歴記憶部
14 インストール情報記憶部
20 パッチ管理サーバ
100 ドライブ装置
101 記録媒体
102 補助記憶装置
103 メモリ装置
104 CPU
105 インタフェース装置
121 照会部
122 適用情報取得部
123 適用判定部
124 修正モジュール取得部
125 修正モジュール適用部
B バス

Claims (7)

  1. 実行ファイルに含まれる複数のプログラムについてそれぞれの実行履歴を記憶部に記憶し、
    前記実行ファイルの修正に用いられる修正ファイルの適用により、前記実行ファイルに含まれる前記複数のプログラムのうち一部のプログラムが変更される場合に、該一部のプログラムについての実行履歴として、所定の条件に合致する実行履歴が前記記憶部に記憶されているか否かに応じて前記修正ファイルを適用するか否かを判定する、
    処理をコンピュータに実行させる修正ファイルの適用判定プログラム。
  2. 前記記憶する処理は、前記実行ファイルに含まれる複数のプログラムについてそれぞれの実行回数を前記記憶部に記憶し、
    前記判定する処理は、前記一部のプログラムについての実行回数として、所定回数以上の実行回数が前記記憶部に記憶されているか否かに応じて前記修正ファイルを適用するか否かを判定する、
    ことを特徴とする請求項1記載の適用判定プログラム。
  3. 前記記憶する処理は、前記実行ファイルごとの実行履歴を前記記憶部に記憶し、
    前記実行ファイルについての実行履歴として、所定の条件に合致する実行履歴が前記記憶部に記憶されているか否かに応じて前記修正ファイルを適用するか否かを判定する、
    ことを特徴とする請求項1又は2記載の適用判定プログラム。
  4. 前記判定する処理は、第一のプログラムから呼び出される第二のプログラム及び第三のプログラムのうち、前記第二のプログラムが実行されたことを示す実行履歴が前記記憶部に記憶されており、前記第三のプログラムが実行されたことを示す実行履歴が前記記憶部に記憶されてない場合に、前記第三のプログラムについて修正された修正ファイルを、前記第一のプログラム、前記第二のプログラム、及び前記第三のプログラムを含む実行ファイルに適用すると判定する、
    ことを特徴とする請求項1乃至3いずれか一項記載の適用判定プログラム。
  5. 前記記憶する処理は、複数の実行ファイルに含まれる複数のプログラムのそれぞれの実行履歴を前記記憶部に記憶し、
    前記判定する処理は、複数の実行ファイルのそれぞれに対する複数の修正ファイルのうち、実行されたことを示す実行履歴が前記記憶部に記憶されているプログラムを含む実行ファイルに対応する修正ファイルについて、適用すると判定する、
    ことを特徴とする請求項1乃至4いずれか一項記載の適用判定プログラム。
  6. 実行ファイルに含まれる複数のプログラムについてそれぞれの実行履歴を記憶部に記憶し、
    前記実行ファイルの修正に用いられる修正ファイルの適用により、前記実行ファイルに含まれる前記複数のプログラムのうち一部のプログラムが変更される場合に、該一部のプログラムについての実行履歴として、所定の条件に合致する実行履歴が前記記憶部に記憶されているか否かに応じて前記修正ファイルを適用するか否かを判定する、
    処理をコンピュータが実行することを特徴とする修正ファイルの適用判定方法。
  7. 実行ファイルに含まれる複数のプログラムについてそれぞれの実行履歴を記憶する記憶部と、
    前記実行ファイルの修正に用いられる修正ファイルの適用により、前記実行ファイルに含まれる前記複数のプログラムのうち一部のプログラムが変更される場合に、該一部のプログラムについての実行履歴として、所定の条件に合致する実行履歴が前記記憶部に記憶されているか否かに応じて前記修正ファイルを適用するか否かを判定する判定部と、
    を有することを特徴とする修正ファイルの適用判定装置。
JP2014076071A 2014-04-02 2014-04-02 適用判定プログラム、適用判定方法、及び適用判定装置 Expired - Fee Related JP6379599B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2014076071A JP6379599B2 (ja) 2014-04-02 2014-04-02 適用判定プログラム、適用判定方法、及び適用判定装置
EP15152653.0A EP2927808A1 (en) 2014-04-02 2015-01-27 Application determination method, application determination device
US14/608,229 US20150286476A1 (en) 2014-04-02 2015-01-29 Application determination method, application determination device
CN201510082612.4A CN104978216A (zh) 2014-04-02 2015-02-15 应用确定方法和应用确定装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014076071A JP6379599B2 (ja) 2014-04-02 2014-04-02 適用判定プログラム、適用判定方法、及び適用判定装置

Publications (2)

Publication Number Publication Date
JP2015197841A true JP2015197841A (ja) 2015-11-09
JP6379599B2 JP6379599B2 (ja) 2018-08-29

Family

ID=52434587

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014076071A Expired - Fee Related JP6379599B2 (ja) 2014-04-02 2014-04-02 適用判定プログラム、適用判定方法、及び適用判定装置

Country Status (4)

Country Link
US (1) US20150286476A1 (ja)
EP (1) EP2927808A1 (ja)
JP (1) JP6379599B2 (ja)
CN (1) CN104978216A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017138917A (ja) * 2016-02-05 2017-08-10 富士通株式会社 プログラム、情報処理方法および情報処理装置
JP2019057217A (ja) * 2017-09-22 2019-04-11 コニカミノルタ株式会社 情報処理装置、ファームウェア更新プログラム

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000010766A (ja) * 1998-06-18 2000-01-14 Fujitsu Ltd プログラム修正抽出適用システムおよび修正抽出適用プログラムを格納した記憶媒体
JP2001147815A (ja) * 1999-11-19 2001-05-29 Canon Inc 画像形成装置及び画像形成システム
JP2005157509A (ja) * 2003-11-21 2005-06-16 Hitachi Ltd 通信端末
WO2007105274A1 (ja) * 2006-03-10 2007-09-20 Fujitsu Limited 適用パッチ選別装置及び適用パッチ選別方法
JP2008269394A (ja) * 2007-04-23 2008-11-06 Konica Minolta Business Technologies Inc 画像形成装置、プログラム更新システム、プログラム更新方法およびプログラム更新プログラム

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7134121B2 (en) * 2003-06-12 2006-11-07 International Business Machines Corporation Installing fixes based on usage
JP3838243B2 (ja) * 2003-09-04 2006-10-25 ソニー株式会社 画像処理方法、および画像処理装置、並びにコンピュータ・プログラム
US7526771B2 (en) * 2003-11-12 2009-04-28 Ntt Docomo, Inc. Method and apparatus for configuring an application while the application is running
US7568195B2 (en) * 2003-12-16 2009-07-28 Microsoft Corporation Determining a maximal set of dependent software updates valid for installation
CN100442901C (zh) * 2005-10-25 2008-12-10 华为技术有限公司 在设备管理中监控和升级软件的方法及装置
JP5081113B2 (ja) * 2008-09-17 2012-11-21 キヤノン株式会社 画像符号化装置及び画像復号装置、並びにそれらの制御方法
JP5200974B2 (ja) * 2009-02-05 2013-06-05 オムロンヘルスケア株式会社 管理装置、管理システム、および管理方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000010766A (ja) * 1998-06-18 2000-01-14 Fujitsu Ltd プログラム修正抽出適用システムおよび修正抽出適用プログラムを格納した記憶媒体
JP2001147815A (ja) * 1999-11-19 2001-05-29 Canon Inc 画像形成装置及び画像形成システム
JP2005157509A (ja) * 2003-11-21 2005-06-16 Hitachi Ltd 通信端末
WO2007105274A1 (ja) * 2006-03-10 2007-09-20 Fujitsu Limited 適用パッチ選別装置及び適用パッチ選別方法
JP2008269394A (ja) * 2007-04-23 2008-11-06 Konica Minolta Business Technologies Inc 画像形成装置、プログラム更新システム、プログラム更新方法およびプログラム更新プログラム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017138917A (ja) * 2016-02-05 2017-08-10 富士通株式会社 プログラム、情報処理方法および情報処理装置
JP2019057217A (ja) * 2017-09-22 2019-04-11 コニカミノルタ株式会社 情報処理装置、ファームウェア更新プログラム

Also Published As

Publication number Publication date
CN104978216A (zh) 2015-10-14
US20150286476A1 (en) 2015-10-08
JP6379599B2 (ja) 2018-08-29
EP2927808A1 (en) 2015-10-07

Similar Documents

Publication Publication Date Title
US9038059B2 (en) Automatically targeting application modules to individual machines and application framework runtimes instances
US20180150306A1 (en) Systems and methods for eliminating reboot during initial machine configuration of operating systems
US9280338B1 (en) Dynamic application updates
US8234359B2 (en) System and method for remotely re-imaging a computer system
KR101643022B1 (ko) 카탈로그-기반 소프트웨어 컴포넌트 관리
US9552201B2 (en) System and method for incremental software installation
US8918776B2 (en) Self-adapting software system
CN109614167B (zh) 一种管理插件的方法和系统
US20130346957A1 (en) Auto-update while running client interface with handshake
US9542173B2 (en) Dependency handling for software extensions
CN103345411A (zh) 卸载应用程序的方法及装置
EP2805233B1 (en) Installation engine and package format for parallelizable, reliable installations
US7818557B2 (en) Method for re-imaging a computer system
JP6379599B2 (ja) 適用判定プログラム、適用判定方法、及び適用判定装置
US8806477B2 (en) Space efficient software package management
US8533446B2 (en) On-demand database server startup and shutdown
CN109766131B (zh) 基于多线程技术实现软件智能化自动升级的系统及方法
US9792130B2 (en) Rebooting to a UEFI application from a UEFI supported system
US20160162365A1 (en) Storing difference information in a backup system
CN116339908A (zh) 虚拟机启动方法、装置、计算机设备和存储介质
CN110673930B (zh) 虚拟机迁移方法、虚拟化设备、存储介质及装置
US11354138B1 (en) Optimizing plugin loading
CN111008035B (zh) 一种软件运维方法、电子设备及存储介质
JP6135193B2 (ja) プログラム実行装置、プログラム実行方法、及びプログラム実行プログラム
KR101224382B1 (ko) 업데이트 장치 및 방법

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170110

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20171107

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171221

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180213

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180323

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180417

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180614

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: 20180703

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180716

R150 Certificate of patent or registration of utility model

Ref document number: 6379599

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees