図面 (/)

技術 プロセス異常復旧装置及びプロセス異常復旧方法

出願人 日本電気株式会社
発明者 安田滋
出願日 2009年12月24日 (11年0ヶ月経過) 出願番号 2009-291929
公開日 2011年7月7日 (9年5ヶ月経過) 公開番号 2011-134044
状態 特許登録済
技術分野 エラー時の再試行 計算機におけるファイル管理 エラーの検出 検索装置
主要キーワード 終了要因 プロセス終了処理 エラー診断 プロセス監視システム 復旧装置 空間管理情報 資源不足 テーブル行
関連する未来課題
重要な関連分野

この項目の情報は公開日時点(2011年7月7日)のものです。
また、この項目は機械的に抽出しているため、正しく解析できていない場合があります

図面 (13)

課題

プロセスの異常終了時に共有リソース復旧も含めたプロセスの復旧処理が正常に行うこと

解決手段

オペレーティングシステム1は、プロセス12のロード対象となるロード対象ファイル121と、復旧処理実行部30と、を備える。ロード対象ファイル121は、プロセス12終了の際に実行する復旧処理が記述された復旧コマンドファイル42を配置した位置情報を含む復旧処理情報1211を有する。復旧処理実行部30は、プロセス12の終了を検出した場合に、終了したプロセス12にロードされていたロード対象ファイル121を取得し、取得したロード対象ファイル121内の位置情報1211を参照して復旧コマンドファイル42を取得する。復旧処理実行部30は、取得した復旧コマンドファイル42をロードして復旧処理を実行する。

概要

背景

近年では、高速化や拡張性向上を目的として複数のプロセスによりシステム稼働させることが多い。この場合において、複数のプロセスがファイルメモリ共有して使用することがある(以後の説明では複数のプロセスにおいて共有されうるファイル、メモリ等を共有リソースと記載する。)。

規模なシステム等は連続稼働が要求されることが多い。連続稼働が必要なシステムでは、あるプロセスが異常終了した場合に速やか、かつ、正確にシステムが提供していたサービス再開することが要求される。ここで、異常終了したプロセスが共有リソースを使用していた場合、当該プロセスが当該共有リソースの値を不正な状態に書き換えていた恐れがある。そのためプロセスの異常終了時には、異常終了したプロセスが使用していた共有リソースを復旧してから当該プロセスを再起動する必要がある。共有リソースの復旧の後に、プロセスの再起動を行うことにより正常なシステム動作が再開される。

共有リソースの復旧を含むプロセスの再起動の方法としては、主に以下の二つの方法がある。第一の方法は、異常終了したプロセスが復旧後に共有リソースにアクセスする場合、当該共有リソースに対するアクセス実行をする前に当該共有リソースの整合性を確認し、問題がないことを確認してからアクセス処理を行うという方法である。しかし当該方法では、共有リソースにアクセスするたびに整合性チェックを行う必要があるため、性能が劣化する恐れがある。

第二の方法は、プロセスの動作状況監視する監視プロセスを用意し、監視プロセスが監視対象プロセスの異常終了を検出した場合、異常終了したプロセスが使用していた共有リソースの内容を修復するという方法である。しかしこの方法では、共有ライブラリが共有リソースを使用していた場合に問題が生じる。共有ライブラリファイルは複数のプロセスにおいて共通する処理を記載したファイルであり、共有ライブラリファイルは共有ライブラリにロードされる。すなわち、共有ライブラリは、各プロセスで共通する処理を行う処理主体である。

複数のプロセスが共有ライブラリを使用し、その共有ライブラリが共有リソースを使用する場合、プロセスの異常終了時に共有リソースを復旧するために、共有ライブラリを使用する複数のプロセス全てを監視対象とする必要がある。すなわち、各プロセスが共有ライブラリを介して共有リソースを使用する恐れがあるため、全てのプロセスを監視しなければならない。またそれらの複数のプロセスに対応する復旧処理実装する必要がある。この場合、実装すべき復旧処理は共有ライブラリによる共有リソースの使用にかかるものであるにもかかわらず、共有ライブラリを使用するプログラム各々において復旧処理を実装する必要がある。そのため、実装の手間が大きい。

また、上述の二つの方法では、共有リソースの復旧処理をメモリ上またはプロセスにロードする必要がある。そのため、システム改編等に応じて、プロセス異常終了時の復旧処理の内容を変更する必要がある場合に、一旦システムを停止したうえで、処理内容の変更を行う。その後に、変更を反映した復旧処理を再度メモリ上またはプロセスにロードする必要がある。このため、常時稼働が求められるシステムでは、上記の2つの方法を適用することが困難である。

さらに、当該技術に関連する文献として以下のものが挙げられる。

特開2000-311099(特許文献1)公報には、名前が設定された任意のプロセスに対して復旧処理を設定し、プロセスの異常終了時に当該プロセスに設定された処理を実行するプロセス監視システムが開示されている。当該プロセス監視システムは、図12に示すような監視プロセス定義ファイルを保持する。監視プロセス定義ファイルには、プロセス名と、終了コードと、連動処理とが記述される。当該プロセス監視システムは、プロセス異常終了時に検出されたプロセス名とプロセス終了時の終了コードとを取得し、監視プロセス定義ファイルを検索して連動処理を取得し、当該連動処理を実行する。当該連動処理内には共有リソースの復旧処理等を記述する。連動処理内に共有リソースの復旧処理が記載されていることにより、プロセスの異常終了時に共有リソースの復旧処理が実行される。

特開平11-110258(特許文献2)公報には、プロセスの異常終了等により発行されたエラーメッセージ解析し、解析結果を用いてエラー状態を復旧するエラー診断装置が開示されている。当該エラー診断装置には、予めシステム復旧を要するエラーを認識するためのエラーメッセージと、その復旧コマンド登録されている。エラー発生時には、エラー診断装置はエラーメッセージを解析し、エラーメッセージに対応づけられた復旧コマンドを実行する。

概要

プロセスの異常終了時に共有リソースの復旧も含めたプロセスの復旧処理が正常に行うことオペレーティングシステム1は、プロセス12のロード対象となるロード対象ファイル121と、復旧処理実行部30と、を備える。ロード対象ファイル121は、プロセス12終了の際に実行する復旧処理が記述された復旧コマンドファイル42を配置した位置情報を含む復旧処理情報1211を有する。復旧処理実行部30は、プロセス12の終了を検出した場合に、終了したプロセス12にロードされていたロード対象ファイル121を取得し、取得したロード対象ファイル121内の位置情報1211を参照して復旧コマンドファイル42を取得する。復旧処理実行部30は、取得した復旧コマンドファイル42をロードして復旧処理を実行する。

目的

本発明はこのような問題点を解決するためになされたものであり、プロセスの異常終了の際に共有リソースの復旧も含めたプロセスの復旧処理が正常に行うことができ、当該復旧処理に関する設定も簡易なプロセス異常復旧装置及びプロセス異常復旧方法を提供する

効果

実績

技術文献被引用数
0件
牽制数
0件

この技術が所属する分野

ライセンス契約や譲渡などの可能性がある特許掲載中! 開放特許随時追加・更新中 詳しくはこちら

請求項1

プロセスのロード対象となるロード対象ファイルに対して、当該プロセス終了の際に実行する復旧処理記述された復旧コマンドファイルを配置した位置情報を含む復旧処理情報を記述して記憶しておき、プロセス終了を検出した場合に、当該プロセスにロードされていた前記ロード対象ファイルを全て取得し、取得した前記ロード対象ファイル内の前記位置情報を参照して前記復旧コマンドファイルを全て取得し、取得した前記復旧コマンドファイルをロードして前記復旧処理を実行する、プロセス異常復旧方法

請求項2

前記復旧処理情報内には、どの順序で前記復旧コマンドファイルをロードして実行するかを示す実行順情報が設定されており、プロセス終了検出の際、複数の前記復旧コマンドファイルが取得された場合に、前記実行順情報の順序で復旧処理を実行することを特徴とする請求項1に記載のプロセス異常復旧方法。

請求項3

前記復旧処理情報内に、前記プロセスの終了状態種別である終了種別条件と、前記復旧コマンドファイルの位置情報を関連付けて記述し、前記プロセス終了検出において、当該プロセスの終了状態を検出し、検出した前記終了状態の種別と、前記終了種別条件と、が一致した場合に、前記復旧コマンドファイルを取得することを特徴とする請求項1または請求項2に記載のプロセス異常復旧方法。

請求項4

前記位置情報は、ファイルシステム上のファイルパス名で記述することを特徴とする請求項1乃至請求項3のいずれか1項に記載のプロセス異常復旧方法。

請求項5

前記プロセス終了の検出処理プロセス状態監視する監視プロセスにより実行されることを特徴とする請求項1乃至請求項4のいずれか1項に記載のプロセス異常復旧方法。

請求項6

プロセスのロード対象となるロード対象ファイルと、プロセスの終了の際に、終了にかかる前記プロセスに関する処理を行う復旧処理実行部と、を備え、前記ロード対象ファイルは、当該ファイルをロードしたプロセスが終了した際に実行する復旧処理が記述された復旧コマンドファイルを配置した位置情報、を含む復旧処理情報を有し、前記復旧処理実行部は、プロセスの終了を検出した場合に、終了したプロセスにロードされていた前記ロード対象ファイルを全て取得し、取得した前記ロード対象ファイル内の前記位置情報を参照して前記復旧コマンドファイルを全て取得し、取得した前記復旧コマンドファイルをロードして前記復旧処理を実行する、プロセス異常復旧装置

請求項7

前記ロード対象ファイルは、前記復旧処理情報内に、複数の前記復旧コマンドファイルが取得された場合に、どの順序で前記復旧コマンドファイルをロードして実行するかを示す実行順情報を有し、前記復旧処理実行部は、プロセス終了検出時に、前記実行順情報の順序で復旧処理を実行することを特徴とする請求項6に記載のプロセス異常復旧装置。

請求項8

前記ロード対象ファイルは、前記復旧処理情報内に、前記プロセスの終了状態の種別である終了種別条件と、前記復旧処理とを関連付けた情報を有し、前記復旧処理実行部は、前記プロセス終了検出において、当該プロセスの終了状態を検出し、検出した前記終了状態の種別と、前記終了種別条件と、が一致した場合に、前記終了種別条件と関連付けられた前記復旧コマンドファイルのみを取得することを特徴とする請求項6または請求項7に記載のプロセス異常復旧装置。

請求項9

前記位置情報は、ファイルシステム上のファイルパス名で記載することを特徴とする請求項6乃至請求項8のいずれか1項に記載のプロセス異常復旧装置。

請求項10

前記復旧処理実行部は、オペレーティングシステムカーネル部に設けられたことを特徴とする請求項6乃至請求項9のいずれか1項に記載のプロセス異常復旧装置。

技術分野

0001

本発明はプロセス異常復旧装置及びプロセス異常復旧方法に関する。

背景技術

0002

近年では、高速化や拡張性向上を目的として複数のプロセスによりシステム稼働させることが多い。この場合において、複数のプロセスがファイルメモリ共有して使用することがある(以後の説明では複数のプロセスにおいて共有されうるファイル、メモリ等を共有リソースと記載する。)。

0003

規模なシステム等は連続稼働が要求されることが多い。連続稼働が必要なシステムでは、あるプロセスが異常終了した場合に速やか、かつ、正確にシステムが提供していたサービス再開することが要求される。ここで、異常終了したプロセスが共有リソースを使用していた場合、当該プロセスが当該共有リソースの値を不正な状態に書き換えていた恐れがある。そのためプロセスの異常終了時には、異常終了したプロセスが使用していた共有リソースを復旧してから当該プロセスを再起動する必要がある。共有リソースの復旧の後に、プロセスの再起動を行うことにより正常なシステム動作が再開される。

0004

共有リソースの復旧を含むプロセスの再起動の方法としては、主に以下の二つの方法がある。第一の方法は、異常終了したプロセスが復旧後に共有リソースにアクセスする場合、当該共有リソースに対するアクセス実行をする前に当該共有リソースの整合性を確認し、問題がないことを確認してからアクセス処理を行うという方法である。しかし当該方法では、共有リソースにアクセスするたびに整合性チェックを行う必要があるため、性能が劣化する恐れがある。

0005

第二の方法は、プロセスの動作状況監視する監視プロセスを用意し、監視プロセスが監視対象プロセスの異常終了を検出した場合、異常終了したプロセスが使用していた共有リソースの内容を修復するという方法である。しかしこの方法では、共有ライブラリが共有リソースを使用していた場合に問題が生じる。共有ライブラリファイルは複数のプロセスにおいて共通する処理を記載したファイルであり、共有ライブラリファイルは共有ライブラリにロードされる。すなわち、共有ライブラリは、各プロセスで共通する処理を行う処理主体である。

0006

複数のプロセスが共有ライブラリを使用し、その共有ライブラリが共有リソースを使用する場合、プロセスの異常終了時に共有リソースを復旧するために、共有ライブラリを使用する複数のプロセス全てを監視対象とする必要がある。すなわち、各プロセスが共有ライブラリを介して共有リソースを使用する恐れがあるため、全てのプロセスを監視しなければならない。またそれらの複数のプロセスに対応する復旧処理実装する必要がある。この場合、実装すべき復旧処理は共有ライブラリによる共有リソースの使用にかかるものであるにもかかわらず、共有ライブラリを使用するプログラム各々において復旧処理を実装する必要がある。そのため、実装の手間が大きい。

0007

また、上述の二つの方法では、共有リソースの復旧処理をメモリ上またはプロセスにロードする必要がある。そのため、システム改編等に応じて、プロセス異常終了時の復旧処理の内容を変更する必要がある場合に、一旦システムを停止したうえで、処理内容の変更を行う。その後に、変更を反映した復旧処理を再度メモリ上またはプロセスにロードする必要がある。このため、常時稼働が求められるシステムでは、上記の2つの方法を適用することが困難である。

0008

さらに、当該技術に関連する文献として以下のものが挙げられる。

0009

特開2000-311099(特許文献1)公報には、名前が設定された任意のプロセスに対して復旧処理を設定し、プロセスの異常終了時に当該プロセスに設定された処理を実行するプロセス監視システムが開示されている。当該プロセス監視システムは、図12に示すような監視プロセス定義ファイルを保持する。監視プロセス定義ファイルには、プロセス名と、終了コードと、連動処理とが記述される。当該プロセス監視システムは、プロセス異常終了時に検出されたプロセス名とプロセス終了時の終了コードとを取得し、監視プロセス定義ファイルを検索して連動処理を取得し、当該連動処理を実行する。当該連動処理内には共有リソースの復旧処理等を記述する。連動処理内に共有リソースの復旧処理が記載されていることにより、プロセスの異常終了時に共有リソースの復旧処理が実行される。

0010

特開平11-110258(特許文献2)公報には、プロセスの異常終了等により発行されたエラーメッセージ解析し、解析結果を用いてエラー状態を復旧するエラー診断装置が開示されている。当該エラー診断装置には、予めシステム復旧を要するエラーを認識するためのエラーメッセージと、その復旧コマンド登録されている。エラー発生時には、エラー診断装置はエラーメッセージを解析し、エラーメッセージに対応づけられた復旧コマンドを実行する。

先行技術

0011

特開2000−311099号公報
特開平11−110258号公報
特開平11−327913号公報

発明が解決しようとする課題

0012

しかしながら、上述の特許文献に記載の技術にも以下の問題点がある。特許文献1に記載のプロセス監視システムでは、プロセス名に対応づけて連動処理を設定している。一般にオペレーティングシステム上で動作するプロセスの名前は、ロードした実行ファイル名と同じとなることが多い。しかし異なる処理を実行するための複数の実行ファイルに対して同じ名前を付けてシステム上に配置した場合、異なる処理を実行し、かつ同じ名前を持つ複数のプロセスが存在することになる。また、プロセスの動作中にプロセス名を変更できるオペレーティングシステムも存在する。この場合、実行中の一方のプロセスのプロセス名に合わせるように、他方のプロセスのプロセス名を変更することが可能である。

0013

つまり、異なる処理を実行するプロセスであるにもかかわらず、同じプロセス名を持つプロセスがシステム上に複数存在する可能性がある。言い換えると、プロセス名によってプロセスを識別することができない。この場合、プロセス異常終了時にプロセス名をキーとして監視プロセス定義ファイルから連動処理の検索を行ったとしても、複数の連動処理が検索結果として得られる可能性がある。これにより、異常終了したプロセスに対応する連動処理とは異なる連動処理も検索結果として取得され、当該連動処理が行われてしまう恐れがある。すなわち、プロセス異常終了時に適切な連動処理が行われない恐れがある。

0014

また特許文献1に記載のプロセス監視システムでは、共有ライブラリに対する考慮が不十分である。実行ファイルをロードしたプロセスは、複数のプロセス間で共通する処理を使用するために、共有ライブラリファイルをロードした共有ライブラリとリンクする。共有ライブラリが共有リソースを使用する場合、あるプロセスが異常終了した際に当該共有リソースの復旧処理が必要になることがある。これは、共有ライブラリにおいて共有リソースを更新している最中に、共有ライブラリとリンクしているプロセスが異常終了した場合、共有ライブラリの処理も中断されることにより、共有リソースが異常値となる可能性があるためである。ここで、共有ライブラリとリンクしたプロセスが複数存在する場合、その全てのプロセスに対する連動処理を監視プロセス定義ファイルに定義して、当該共有リソースの復旧処理を行う必要がある。このため、連動処理を監視プロセス定義ファイルに定義する作業が煩雑となる。

0015

特許文献2に記載のエラー診断装置では、エラーメッセージに基づいてエラーの復旧処理が行われる。当該エラーメッセージにはエラー内容と、エラーを引き起こしたプロセスが記述されうる。ここで、異常終了したプロセスがリンクしていた共有ライブラリに対して他のプロセスもリンクしていた場合、当該他のプロセスに関する復旧処理を行う必要がある。これは、当該他のプロセスが共有ライブラリを介して共有リソースを使用している可能性があり、当該使用を中断する等の復旧処理を行う必要があるためである。しかし、エラーメッセージには異常終了したプロセスの情報しか含まれないため、当該他のプロセスに対する復旧処理を行うことができない。これにより、プロセス異常終了時に適切な復旧処理が行われない恐れがある。

0016

すなわち、特許文献1及び2に記載の技術によっては、プロセスの異常終了時に共有リソースの復旧も含めたプロセスの復旧処理が正常に行われない恐れがある。

0017

本発明はこのような問題点を解決するためになされたものであり、プロセスの異常終了の際に共有リソースの復旧も含めたプロセスの復旧処理が正常に行うことができ、当該復旧処理に関する設定も簡易なプロセス異常復旧装置及びプロセス異常復旧方法を提供することを目的とする。

課題を解決するための手段

0018

本発明にかかるプロセス異常復旧装置の一態様は、プロセスのロード対象となるロード対象ファイルと、プロセスの終了時に終了にかかる前記プロセスにかかる処理を行う復旧処理実行部と、を備え、前記ロード対象ファイルは、プロセス終了時に実行する復旧処理が記述された復旧コマンドファイルを配置した位置情報を含む復旧処理情報を有し、
前記復旧処理実行部は、プロセスの終了を検出した場合に、終了したプロセスにロードされていた前記ロード対象ファイルを全て取得し、取得した前記ロード対象ファイル内の前記位置情報を参照して前記復旧コマンドファイルを全て取得し、取得した前記復旧コマンドファイルをロードして前記復旧処理を実行するものである。

0019

本発明にかかるプロセス異常復旧方法の一態様は、プロセスのロード対象となるロード対象ファイルに対して、当該プロセス終了時に実行する復旧処理が記述された復旧コマンドファイルを配置した位置情報を含む復旧処理情報を記述して記憶しておき、プロセス終了を検出した場合に、当該プロセスにロードされていた前記ロード対象ファイルを全て取得し、取得した前記ロード対象ファイル内の前記位置情報を参照して前記復旧コマンドファイルを全て取得し、取得した前記復旧コマンドファイルをロードして前記復旧処理を実行するものである。

発明の効果

0020

本発明によれば、プロセスの異常終了の際に共有リソースの復旧も含めたプロセスの復旧処理が正常に行うことができる。

図面の簡単な説明

0021

実施の形態1にかかるオペレーティングシステムの構成を示すブロック図である。
実施の形態1にかかる復旧処理情報を示す図である。
実施の形態1にかかる復旧コマンドリストを示す図である。
実施の形態1にかかる実行ファイル及び共有ライブラリファイルの例を示す図である。
実施の形態1にかかるプロセス終了処理の詳細を示すフローチャートである。
実施の形態1にかかる復旧コマンドリスト生成の詳細を示すフローチャートである。
実施の形態1にかかる復旧処理情報からの復旧コマンド情報の抽出処理を示すフローチャートである。
実施の形態1にかかる復旧コマンドの実行処理を示すフローチャートである。
実施の形態2にかかるプロセス異常復旧装置の構成を示すブロック図である。
実施の形態2にかかる復旧処理の実行を示すフローチャートである。
実施の形態1にかかるプロセス異常復旧装置の概要構成を示すブロック図である。
本発明が解決しようとする課題の1つに関連するプロセス監視システムの監視プロセス定義ファイルの図である。

実施例

0022

実施の形態1
以下、図面を参照して本発明の実施の形態について説明する。図1は、本実施の形態にかかるオペレーティングシステム1の構成を示す図である。以下にオペレーティングシステム1の各構成要素について説明する。

0023

オペレーティングシステム1は、コンピュータにおいて、ハードウェア抽象化したインターフェイスアプリケーションソフトウェアに提供するソフトウェアであり、基本ソフトウェア一種である。

0024

プロセス10は、実行ファイル101をロードすることにより起動されたプロセスである。同様にプロセス11は、実行ファイル111をロードすることにより起動されたプロセスである。実行ファイル101及び実行ファイル111は、プログラマにより記述された処理をコンピュータ上で実行可能な形式に書き換えたファイルである。共有ライブラリファイル201は、複数のプロセスで共通する処理が記載されたファイルである。

0025

実行ファイル101及び実行ファイル111は共有ライブラリファイル201をリンクする。実行ファイル101が共有ライブラリファイル201とリンクしていることにより、プロセス10には共有ライブラリ20がロードされている。また実行ファイル111が共有ライブラリファイル201をリンクしていることにより、プロセス11には共有ライブラリ20がロードされている。プロセス10及びプロセス11は、共有メモリ50を共有して使用している。また、共有ライブラリ20は、共有ファイル60を使用している。

0026

実行ファイル101には復旧処理情報1011が定義されている。同様に実行ファイル111には復旧処理情報1111が定義されている。復旧処理情報1011及び復旧処理情報1111は実行ファイルをロードして起動されたプロセスが終了した場合において、どのような復旧処理を行うかを定義した情報である。図2に復旧処理情報の詳細を示す。図2では、復旧処理情報1011、復旧処理情報1111、復旧処理情報2011の形式を復旧処理情報70を代表例として説明する。

0027

図2に示すように復旧処理情報70はテーブル形式になっており、実行順701、復旧コマンドパス702、及び動作指定703の項目を含む構成である。一つのテーブル行が一つの復旧コマンド情報を表している。テーブル行を複数定義することにより、一つの実行ファイルまたは共有ライブラリファイルに対して複数の復旧コマンド情報を設定することが可能である。

0028

実行順701は、複数の復旧コマンド情報が抽出された際に、どのような順序で復旧コマンドを実行するかを指定するものである。復旧コマンドとは、プロセス終了時に実行される復旧処理である。複数の復旧コマンド情報が抽出された場合、各復旧コマンドに対応して設定されている実行順701の値が小さい順に実行していく。

0029

復旧コマンドパス702は、復旧処理が実装されている復旧コマンドファイルのファイルシステム上の位置を指定するものである。復旧コマンドファイルは実行ファイルの一種である。プロセス終了検出時に、復旧コマンドパス702にて指定された位置にある復旧コマンドファイルがロードされ、実行される。

0030

動作指定703は、プロセス終了検出の際に復旧コマンドを実行するかどうかの条件を指定するものである。動作指定703には、「常に実行」、「異常終了時のみ実行」、「正常終了時のみ実行」のいずれかが設定される。動作指定703に「常に実行」が指定された場合、プロセス終了の際に、同じ行の復旧コマンドパス702に指定されている復旧コマンドファイルが正常終了、異常終了に関係なく必ずロードされ、実行されることを意味する。動作指定703に「異常終了時のみ実行」が指定された場合、プロセスの異常終了の際に、同じ行の復旧コマンドパス702に指定されている復旧コマンドファイルがロードされ、実行されることを意味する。動作指定703に「異常終了時のみ実行」が指定された場合、プロセスの異常終了の際に、同じ行の復旧コマンドパス702に指定されている復旧コマンドファイルがロードされ、実行されることを意味する。なお、プロセスがシグナル等の外部要因によって強制終了させられた場合も、プロセスが異常終了したとして扱われる。

0031

図2では、復旧処理情報70に3つの行が設定されている。行711には、実行順701として"10"、復旧コマンドパス702として"/usr/bin/command1"、動作指定703として「常に実行」が設定されている。 行712には、実行順701として"20"、復旧コマンドパス702として"/usr/bin/command2"、動作指定703として「異常終了時のみ実行」が設定されている。 行713には、実行順701として"30"、復旧コマンドパス702として"/usr/bin/command3"、動作指定703として「正常終了時のみ実行」が設定されている。

0032

復旧処理情報70が設定されている実行ファイルをロードして起動したプロセスが正常に終了した場合、行711と行713が抽出される。行711の実行順("10")が行703の実行順("30")よりも小さいので、"/usr/bin/command1"、"/usr/bin/command3"の順に復旧コマンドファイルがロードされ、実行される。

0033

復旧処理情報70が設定されている実行ファイルをロードして起動したプロセスが異常終了した場合、行711と行712が抽出される。行711の実行順("10")が行712の実行順("30")よりも小さいので、"/usr/bin/command1"、"/usr/bin/command2" の順に復旧コマンドファイルがロードされ、実行される。

0034

図1において、復旧処理情報1011及び復旧処理情報1111には、復旧コマンドファイル40の位置が設定されている。なお、復旧処理情報1011と復旧処理情報1111は、プロセスの仮想空間にはロードされない位置に配置されている。

0035

復旧コマンドファイル40は、共有メモリ50に関する復旧処理が実装された実行ファイルである。復旧コマンドファイル40をロードして起動されるプロセスは、共有メモリ50の状態を検査し、不正な状態の修復を行う。 例えば、共有メモリ50内に排他制御情報を書き込んだ状態でプロセスが異常終了してしまうと、その後共有メモリ50を使用するプロセスにてデッドロックが発生する。この場合、復旧コマンドファイル40をロードして起動されたプロセスが共有メモリ50内の不正な排他制御情報を削除することで、共有メモリ50を使用するプロセスにおけるデッドロック発生を防止する。

0036

また、復旧コマンドファイル40をロードして起動されるプロセスには、終了したプロセスの実行ファイル、およびプロセス起動時に指定された引数が指定される。当該指定は後述のプロセス終了処理部30によってなされる。このため、共有メモリ50の復旧処理終了後、復旧コマンドファイル40をロードして起動されるプロセスは、終了したプロセスを再起動することができる。

0037

共有ライブラリファイル201には復旧処理情報2011が定義されている。復旧処理情報2011には、復旧コマンドファイル41の位置が設定されている。なお、復旧処理情報2011は、プロセスの仮想空間にはロードされない位置に配置されている。

0038

復旧コマンドファイル41には、共有ファイル60を復旧する処理が実装された実行ファイルである。復旧コマンドファイル41をロードして起動されるプロセスは、共有ファイル60の状態を検査し、不正な状態の修復を行う。たとえば、共有ファイル60の内容の一貫性を検査し、不正な状態であれば共有ファイル60の内容を変更する。

0039

プロセス終了処理部30は、オペレーティングシステム1上で動作するプロセスを終了させるための処理を実行する処理部である。プロセス終了処理部30は、カーネル部2における一部機能を実現する処理部である。プロセス終了処理部30は、復旧処理実行部301を備える。復旧処理実行部301は、復旧コマンド抽出部3011と復旧コマンド実行部3012を備える。

0040

オペレーティングシステム1上で動作する任意のプロセスが終了する場合、 その終了要因に関係なくプロセス終了処理部30が当該プロセスを消去する処理を行う。具体的には以下の処理を行う。

0041

プロセス終了処理部30がプロセスの終了処理を行う場合、当該プロセスに含まれる全てのスレッドが停止した後、復旧処理実行部301を呼び出す。復旧処理実行部301内の復旧コマンド抽出部3011は、終了したプロセスにロードされているファイル(実行ファイル、共有ライブラリファイル)を全て抽出し、それらのファイルに含まれている復旧処理情報を参照する。復旧コマンド抽出部3011は、プロセスの終了種別(異常終了か、正常終了か)をキーとして、ファイル(実行ファイル、共有ライブラリファイル)内の復旧処理情報を検索し、必要な復旧コマンド情報を全て抽出する。復旧コマンド抽出部3011は、抽出された復旧コマンド情報から必要な情報を抽出し、実行順に基づいて並べ替えた復旧コマンドリストを生成する。

0042

復旧コマンドリストには、復旧コマンド実行部3012が実行すべき復旧コマンドに関する情報がリスト形式で記載される。復旧コマンドリストには、終了したプロセスにロードされているファイルのファイル名、復旧コマンドパス、実行順の情報が含まれる。復旧コマンドリストは、実行順が昇順となるように並べ替えられている。生成された復旧コマンドリストの例を図3に示す。

0043

復旧コマンドリストの生成の後、復旧処理実行部301は終了したプロセスの終了要因、終了種別(正常終了、異常終了)、及びプロセス起動時の引数を抽出して保存する。そして、復旧処理実行部301は、当該プロセスの消滅処理を行った後に、復旧コマンド実行部3012を呼び出す。復旧コマンド実行部3012は、復旧コマンドリストに記述された復旧コマンドを実行順の順序で全て実行する。すなわち、復旧コマンド実行部3012は、復旧コマンドリストの復旧コマンドパスからファイルを取得してロードし、プロセスを生成する。この生成したプロセスにより復旧処理を実行する。この際に、復旧コマンド実行部3012は、保存しておいたプロセスの終了要因等の情報を生成するプロセスの実行の引数に用いることにより終了要因等に応じた復旧処理を実行できる。

0044

図1の構成においてプロセス10またはプロセス11が異常終了した場合、復旧処理実行部301によって復旧コマンドファイル40と復旧コマンドファイル41とがロードされて実行される。復旧コマンドファイル40をロードして実行することにより、共有メモリ50に関する復旧処理が実行される。復旧コマンドファイル41をロードして実行することにより、共有ファイル60に関する復旧処理が実行される。ここで共有メモリ50を使用するプログラムを新規に作成する場合、そのプログラムの実行ファイル内に復旧処理情報を作成し、内部に復旧コマンドファイル40の情報を設定する。これにより、共有メモリ50に関する復旧処理が実行される。共有ファイル60を使用するプログラムを新規に作成する場合、共有ライブラリファイル201を新規プログラムの実行ファイルにリンクする。これにより、共有ライブラリファイル201内の復旧処理情報2011を参照することができる。復旧処理情報2011を参照できることにより、復旧コマンドファイル41が復旧処理として実行されることとなる。すなわち、共有ファイル60に関する復旧処理が実行される。

0045

次に、プロセスが異常終了した場合の、オペレーティングシステム1の動作例を説明する。オペレーティングシステム1内の実行ファイル101、実行ファイル111、及び共有ライブラリファイル201の復旧処理情報は図4に示すように設定されている。

0046

図4を参照すると、実行ファイル101及び実行ファイル111をロードしたプロセスが異常終了した場合、復旧コマンドファイル40をロードして実行するように設定されている。また、共有ライブラリファイル201をロードした共有ライブラリが異常終了した場合、復旧コマンドファイル41をロードして実行するように設定されている。

0047

当該設定(図4)がなされた場合において、プロセス10が外部要因によって強制終了されたこと、すなわちプロセス10が異常終了したことを考える。プロセス10には共有ライブラリ20がロードされている。そのため、プロセス10の異常終了時に、実行ファイル101内の復旧処理情報1011に設定されている復旧コマンドファイル40と、共有ライブラリファイル201内の復旧処理情報2011に設定されている復旧コマンドファイル41が抽出される。

0048

抽出された復旧コマンドファイル40に関連付けられた実行順(20)と、復旧コマンドファイル41に関連付けられた実行順(10)とを比較すると、復旧コマンドファイル41に関連付けられた実行順の方が値が小さい。そのため、復旧コマンドファイル41、復旧コマンドファイル40の順序で復旧コマンドファイルがロードされ、実行される。この順序で復旧コマンドファイルがロードされ、実行されることにより、復旧コマンドファイル41による共有メモリ50の修復が行われた後に、復旧コマンドファイル40による共有ファイル60の修復が行われる。

0049

次に、プロセス終了時のオペレーティングシステム1の処理の詳細についてフローチャートを用いて説明する。図5は、プロセス終了処理の詳細を示すフローチャートである。プロセスが明示的に終了した場合(正常終了)、またはプロセスがシグナル等の外部要因によって強制終了した場合(異常終了)、プロセス終了処理部30は、終了したプロセス内に含まれる全てのスレッドを停止する(S1)。続いて、復旧コマンド抽出部3011により当該プロセスにロードされている全ての実行ファイル及び共有ライブラリファイルに関する復旧処理情報から復旧コマンドリストを生成する(S2)。復旧コマンドリスト生成(S2)の詳細を図6のフローチャートを用いて説明する。

0050

復旧コマンド抽出部3011は、空の復旧コマンドリストを作成する(S21)。復旧コマンド抽出部3011は、終了したプロセスの仮想空間管理情報を参照し、当該プロセスの仮想空間にロードされている全てのファイルを抽出する(S22)。復旧コマンド抽出部3011は、抽出したファイルから最初のファイルを処理対象として選択する(S23)。

0051

選択したファイルが実行ファイルまたは共有ライブラリファイルである場合(S24:Yes)、選択したファイル内に復旧処理情報が存在するか否かを判定する(S25)。復旧処理情報が存在する場合(S25:Yes)、復旧コマンド抽出部3011は、復旧処理情報からプロセスの終了要因に対応する情報を抽出して復旧コマンドリストに追加する(S26)。S26の処理詳細を図7のフローチャートを用いて説明する。

0052

復旧コマンド抽出部3011は、ファイル内の復旧処理情報のテーブルを読み込み、そのテーブルの最初の行を処理対象として選択する(S261)。最初の行に記載の動作指定703が「常に実行」の場合(S262:Yes)、選択中のファイル名、復旧コマンドパス702、実行順701の情報を抽出し、抽出した情報を復旧コマンドリストに追加する(S266)。

0053

最初の行に記載の動作指定703が「常に実行」でない場合であっても(S262:No)、当該プロセスが正常終了であり(S263:Yes)、かつ動作指定703が「正常終了時のみ実行」である(S264:Yes)場合、または、当該プロセスが異常終了であり(S263:No)、かつ動作指定703が「異常終了時のみ実行」である(S265:Yes)場合、復旧コマンドリストへの追加処理を行う(S266)。

0054

一方、最初の行に記載の動作指定703が「常に実行」でない場合であり(S262:Yes)、かつ当該プロセスが正常終了であり(S263:Yes)、かつ、動作指定703が「正常終了時のみ実行」ではない(S265:Yes)場合、復旧コマンドリストへの追加処理(S266)は行わない。同様に、最初の行に記載の動作指定703が「常に実行」でない場合であり(S262:Yes)、かつ当該プロセスが異常終了であり(S263:No)、かつ、動作指定703が「異常終了時のみ実行」ではない(S265:No)場合、復旧コマンドリストへの追加処理(S266)は行わない。

0055

上述のS262からS266の処理を抽出した全ての行に対して実行し、処理を終了する(S267、S268)。

0056

以上、図7を用いて説明したように、あるファイルに記載の復旧処理情報に基づいて復旧コマンドリストに復旧コマンドの情報を追加する処理(S26)が実行される。一のファイルからの復旧コマンドの情報の追加が終わった後に、復旧コマンド抽出部3011は、全てのファイルに対して処理を行ったか否かを判定する(S27)。全てのファイルに対して処理を終了していなかった場合(S27:No)、次のファイルが選択され(S28)、復旧コマンドリストに対する復旧コマンドの情報の追加処理は継続される(S24〜S26)。

0057

全てのファイルに対する処理が終わった場合(S27:Yes)、復旧コマンド抽出部3011は、作成された復旧コマンドリストの各行を実行順の値が昇順となるようにソートする(S29)。作成された復旧コマンドリストの一例は図3のようになる。

0058

以上、図6図7を用いて説明したように、復旧コマンド抽出部3011は復旧コマンドリストを生成する(図5のS2)。続いて、復旧処理実行部301は、終了したプロセスの終了要因、プロセスの識別子、及び当該プロセスが起動された際に指定された引数を記憶する(S3)。これらの値は、復旧コマンド実行部3012が復旧コマンドファイルをロードして実行する際の引数として使用される。

0059

次に、プロセス終了処理部30は、終了したプロセスに割り当てられた仮想空間等の資源を全て解放する(S4)。プロセス終了処理部30は、当該プロセスの管理情報を削除し、当該プロセスを消滅させる(S5)。消滅処理の後に、復旧コマンド実行部3012は、S2の処理で生成された復旧コマンドリストの各行に記載された復旧コマンドパスの位置から復旧コマンドファイルを取得し、ロードすることによって復旧処理を実行する(S6)。復旧コマンド実行部3012による復旧処理の実行処理を図8を用いて説明する。

0060

復旧コマンド実行部3012は、復旧コマンド抽出部3011により生成された復旧コマンドリストが空か否かを判定する(S61)。復旧コマンドリストが空ではない場合(S61:No)、復旧コマンド実行部3012は復旧コマンドリストの先頭行を取り出す(S62)。取り出された行は、復旧コマンドリストから削除される。

0061

復旧コマンド実行部3012は取り出された行の復旧コマンドパスに記載された位置に復旧コマンドファイルが存在するか否かを判定する(S63)。存在する場合(S63:Yes)、復旧コマンド実行部3012は当該復旧コマンドファイルをロードしてプロセスを生成する(S64)。プロセス生成後に復旧コマンド実行部3012は、生成したプロセスの終了を待ち合わせる(S65)。復旧コマンドファイルが存在しない場合(S63:No)、復旧コマンド実行部3012は、復旧コマンドリストが空か否かの判定から処理(S61)に戻り、処理を継続する。

0062

なお、S64において、資源不足等の理由により、プロセスの生成が失敗する可能性がある。 しかし、復旧コマンド実行用の資源を前もって予約しておく等の技術を用いることにより、ステップS64におけるプロセス生成失敗を回避することができる。 それでも何らかの理由により復旧コマンド用プロセスの生成に失敗する場合、システム全体を停止させる、またはプロセスを生成可能となるまで待ち合わせる等の処理をシステム全体の方針に従って実装してもよい。

0063

復旧コマンド実行部3012により生成されたプロセスは、S62において抽出された復旧コマンドの情報を示す行の復旧コマンドパスにおいて指定される復旧コマンドファイルを当該プロセスの仮想空間上にロードする(S641)。そして、当該プロセスは、復旧処理を実行する(S642)。

0064

ここで、復旧処理の実行(S642)に際して、終了したプロセスがロードした実行ファイルの位置、復旧処理情報が設定されていたファイルの位置、終了したプロセスの識別子、終了したプロセスの終了要因、及び終了したプロセスが起動された際に指定された引数が、復旧コマンド実行時の引数として指定される。これらの情報(終了したプロセスの識別子等)は、S3において予め記憶されている。

0065

復旧コマンドリストが空になった時点で、復旧コマンド実行部3012は処理を終了する(S61:No)。

0066

続いて、本実施の形態にかかるプロセス異常復旧装置の効果について説明する。上述のように、実行ファイル、共有ライブラリファイル等のプロセスにロードされるファイル毎に、プロセス終了時の復旧処理が記述された復旧コマンドファイルを関連付ける。プロセス終了時には、復旧コマンドファイルがロードされ、復旧処理が実行される。そのため、実行ファイルと復旧コマンドファイルを関連付けることのみで、共有リソースの復旧処理等を実現できる。これにより、複数の実行ファイルにおいてある一つの復旧コマンドファイルを共有することが可能となり、異常状態からの復旧処理を共通化できる。

0067

共有ライブラリファイルに対して復旧処理情報を定義できることにより、共有ライブラリが使用する共有リソースの復旧処理が実現される。そのため、共有ライブラリを使用する処理を含む実行ファイルが新規に作成される場合であっても、共有ライブラリが使用する共有リソースの復旧処理を考慮する必要がない。

0068

特許文献1に記載の技術ではプロセス名が同じ複数のプロセスが存在する場合、復旧処理が正しく行われない恐れがあった。しかし本実施の形態にかかるオペレーティングシステムでは、実行ファイル、共有ライブラリファイルのファイル毎に復旧処理を関連付けるため、同じプロセス名を持つプロセスが複数存在する場合であっても各プロセスに対応する所望の復旧処理が実現できる。

0069

実行ファイル、共有ライブラリファイル等のファイル毎に復旧処理を関連付けるので、プロセス毎に復旧処理を関連付ける特許文献1の方式と比べて設定作業が簡易である。

0070

また、上記のように復旧コマンドファイルはプロセス終了時にのみロードされ、復旧処理が常にメモリ上に常駐しているわけではない。このため、システム稼働中に復旧コマンドファイルを修正した場合であっても、システムを再起動することなく当該修正が復旧コマンドファイルのロード時に反映される。

0071

実行ファイルの復旧処理情報、または共有ライブラリファイルの復旧処理情報には、復旧コマンドファイルの位置を指定するのみである。したがって、実行ファイル、または共有ライブラリファイルのファイルシステム上の位置を変更した場合であっても、復旧コマンドファイルの位置が変更されなければ復旧処理が正常に実行される。

0072

実施の形態2
本発明の実施の形態2は、共有ライブラリにより復旧処理を実行する点を特徴とする。図9を参照して、本実施の形態にかかるプロセス異常復旧装置の基本構成、及び動作について、実施の形態1と異なる部分を説明する。なお、図9において、同一名及び同一符号を付した処理部は実施の形態1と基本的に同じ処理を行う。

0073

実行ファイル101には復旧処理情報1011が定義されている。同様に実行ファイル111には復旧処理情報1111が定義されている。復旧処理情報1011及び復旧処理情報1111には、復旧ライブラリファイル80の位置が設定されている。復旧ライブラリファイル80は、共有メモリ50を使用しているプロセスが異常終了した際に実行すべき処理が記述された共有ライブラリファイルである。

0074

実行ファイル201には復旧処理情報2011が定義されている。復旧ライブラリファイル81は、共有ファイル60を使用しているプロセスが異常終了した際に実行すべき処理が記述された共有ライブラリファイルである。

0075

監視プロセス90は、他のプロセス(監視対象プロセス)の状況を監視するプロセスである。監視プロセス90は、プロセス監視部901と、復旧処理実行部902と、を備える。監視プロセス90は、カーネル部2とは独立したプロセスとして存在する。

0076

プロセス監視部901は、既存の技術を用いてプロセス10、及びプロセス11を監視する。またプロセス監視部901は、監視対象プロセスがロードしているファイル(実行ファイル、共有ライブラリファイル)の一覧を定期的に取得し、その一覧を保持しておく。当該ファイルの一覧取得はオペレーティングシステム1の機能を用いることで実現できる。

0077

プロセス監視部901が監視対象プロセスの終了を検出した場合、当該プロセスの終了種別(異常終了か、正常終了か)をオペレーティングシステム1の機能を用いて取得する。そののち、プロセス監視部901は復旧処理実行部902を呼び出す。復旧処理実行部902は、復旧ライブラリ抽出部9021を呼び出す。呼び出された復旧ライブラリ抽出部9021は復旧ライブラリリストの作成を行う。なお、復旧ライブラリリストとは、実施形態1の復旧コマンドリストと対応するものである。復旧ライブラリリストの作成方法は、前述の第1の実施形態における図6、及び図7に示した手順とほぼ同様である。

0078

但し、本実施の形態においては、図6のステップS22において当該プロセスにロードされている全ファイルを抽出する場合に、プロセス監視部901が保持しているファイル一覧を使用する。

0079

復旧ライブラリ抽出部9021による復旧ライブラリリストの作成の後、復旧処理実行部9022が復旧ライブラリリストを基に復旧処理の実行を行う。復旧ライブラリ実行部9022による復旧処理の実行の処理手順について、図10を用いて説明する。

0080

復旧処理実行部9022は、復旧ライブラリ抽出部9021により生成された復旧ライブラリリストが空か否かを判定する(S71)。復旧ライブラリリストが空ではない場合(S71:No)、復旧処理実行部9022は復旧ライブラリリストの先頭行を取り出す(S72)。取り出された行は、復旧ライブラリリストから削除される。

0081

取り出された行に含まれる復旧ライブラリパスに記載された位置に復旧ライブラリファイルが存在するか否かを判定し(S73)、存在する場合(S73:Yes)にはその復旧ライブラリを監視プロセス90の仮想空間にロードする(S74)。そして、復旧ライブラリ内の復旧処理を実行する(S75)。

0082

ここで、復旧処理の実行(S75)に際して、終了したプロセスの実行ファイルの位置、復旧処理情報が設定されていたファイルの位置、終了したプロセスの識別子、終了したプロセスの終了要因、及び終了したプロセスが起動された際に指定された引数が、復旧ライブラリの引数として指定される。

0083

復旧処理が実行された後に(S75)、復旧ライブラリを監視プロセス90の仮想空間からアンロードする(S76)。

0084

一方、復旧ライブラリファイルが存在しない場合(S73:No)、復旧処理実行部9022は、復旧ライブラリリストが空か否かの判定から処理(S71)に戻り、処理を継続する。

0085

上記の処理(S71〜S76)は、復旧ライブラリリストが空になる(S71:No)まで継続される。

0086

続いて、本実施の形態にかかるプロセス異常復旧装置の効果について説明する。上述のように、復旧処理を共有ライブラリとして実現している。これにより、オペレーティングシステム1のカーネル部2を変更することなく、プロセス異常に関する復旧処理を実現できる。また、復旧処理を実行する際に、新たなプロセスを生成する必要がなくなる。

0087

なお、図11は本発明の実施の形態1にかかるプロセス異常復旧装置の最小構成を示す図である。プロセス12によるロード対象となる実行ファイル、共有ライブラリファイル等のロード対象ファイル121内に復旧処理情報1211が備えられている。復旧処理情報1211は、ロート対象ファイル121をロードすることにより生成されたプロセス12が終了した場合に実行する復旧コマンドファイル42の位置が記述されている。

0088

プロセス12が終了した場合、復旧処理実行部30は終了したプロセス12がロードしているロード対象ファイル121を選択し、当該ロード対象ファイル121内の復旧処理情報1211を参照して復旧コマンドファイル42を抽出する。復旧処理実行部30は、抽出した復旧コマンドファイル42をロードして復旧処理を行う。

0089

なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。

0090

(付記1)
プロセスのロード対象となるロード対象ファイルと、
プロセスの終了の際に、終了にかかる前記プロセスに関する処理を行う復旧処理実行部と、を備え、
前記ロード対象ファイルは、当該ファイルをロードしたプロセスが終了した際に実行する復旧処理が記述された復旧コマンドファイルを配置した位置情報、を含む復旧処理情報を有し、
前記復旧処理実行部は、プロセスの終了を検出した場合に、終了したプロセスにロードされていた前記ロード対象ファイルを全て取得し、
取得した前記ロード対象ファイル内の前記位置情報を参照して前記復旧コマンドファイルを全て取得し、
取得した前記復旧コマンドファイルをロードして前記復旧処理を実行する、プロセス異常復旧装置。

0091

(付記2)
前記復旧処理実行部は、プロセスの終了を監視する監視プロセス内に設けられたことを特徴とする付記1に記載のプロセス異常復旧装置。

0092

1オペレーティングシステム
2カーネル部
10 プロセス
11 プロセス
20共有ライブラリ
30プロセス終了処理部
40復旧コマンドファイル
41 復旧コマンドファイル
42 復旧コマンドファイル
50共有メモリ
60共有ファイル
70復旧処理情報
80復旧ライブラリ
81 復旧ライブラリ
90監視プロセス
101実行ファイル
111 実行ファイル
121ロード対象ファイル
201共有ライブラリファイル
301復旧処理実行部
901プロセス監視部
902 復旧処理実行部
1011 復旧処理情報
1111 復旧処理情報
1211 復旧処理情報
2011 復旧処理情報
3011復旧コマンド抽出部
3012 復旧コマンド実行部
9021 復旧ライブラリ抽出部
9022 復旧ライブラリ実行部

ページトップへ

この技術を出願した法人

この技術を発明した人物

ページトップへ

関連する挑戦したい社会課題

関連する公募課題

ページトップへ

技術視点だけで見ていませんか?

この技術の活用可能性がある分野

分野別動向を把握したい方- 事業化視点で見る -

(分野番号表示ON)※整理標準化データをもとに当社作成

ページトップへ

おススメ サービス

おススメ astavisionコンテンツ

新着 最近 公開された関連が強い技術

この 技術と関連性が強い人物

関連性が強い人物一覧

この 技術と関連する社会課題

関連する挑戦したい社会課題一覧

この 技術と関連する公募課題

関連する公募課題一覧

astavision 新着記事

サイト情報について

本サービスは、国が公開している情報(公開特許公報、特許整理標準化データ等)を元に構成されています。出典元のデータには一部間違いやノイズがあり、情報の正確さについては保証致しかねます。また一時的に、各データの収録範囲や更新周期によって、一部の情報が正しく表示されないことがございます。当サイトの情報を元にした諸問題、不利益等について当方は何ら責任を負いかねることを予めご承知おきのほど宜しくお願い申し上げます。

主たる情報の出典

特許情報…特許整理標準化データ(XML編)、公開特許公報、特許公報、審決公報、Patent Map Guidance System データ