JP7320443B2 - 互換性のあるモジュールを特定するシステムおよび方法 - Google Patents

互換性のあるモジュールを特定するシステムおよび方法 Download PDF

Info

Publication number
JP7320443B2
JP7320443B2 JP2019227519A JP2019227519A JP7320443B2 JP 7320443 B2 JP7320443 B2 JP 7320443B2 JP 2019227519 A JP2019227519 A JP 2019227519A JP 2019227519 A JP2019227519 A JP 2019227519A JP 7320443 B2 JP7320443 B2 JP 7320443B2
Authority
JP
Japan
Prior art keywords
recovery
computing system
requirements
model
recovery method
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.)
Active
Application number
JP2019227519A
Other languages
English (en)
Other versions
JP2020109636A (ja
Inventor
エー. エフレモフ アンドレイ
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.)
Kaspersky Lab AO
Original Assignee
Kaspersky Lab AO
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 Kaspersky Lab AO filed Critical Kaspersky Lab AO
Publication of JP2020109636A publication Critical patent/JP2020109636A/ja
Application granted granted Critical
Publication of JP7320443B2 publication Critical patent/JP7320443B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/566Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0721Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment within a central processing unit [CPU]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/079Root cause analysis, i.e. error or fault diagnosis
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/033Test or assess software

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Business, Economics & Management (AREA)
  • Computer Security & Cryptography (AREA)
  • Health & Medical Sciences (AREA)
  • Strategic Management (AREA)
  • Accounting & Taxation (AREA)
  • Development Economics (AREA)
  • Finance (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Biomedical Technology (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Entrepreneurship & Innovation (AREA)
  • General Business, Economics & Management (AREA)
  • Game Theory and Decision Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Virology (AREA)
  • General Health & Medical Sciences (AREA)
  • Signal Processing (AREA)
  • Debugging And Monitoring (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)

Description

本開示は、デバイスおよびシステムにおいて、既存のまたは予想される状況(condition)または状態(state)を処理するための方法およびシステムに関する。
企業や起業家は、自社の製品を宣伝するために広告サービスを利用する。広告とは、非パーソナライズされていて通常は有料の説得性のある広告主の商品およびサービスまたはアイデアに関する情報の、様々な媒体を介した配信である。インターネットの発展に伴い広告もインターネット上に進出している。最新のデータによると、広告の20%以上がインターネット上で行われている。
広告は、通常、個人向けにカスタマイズされておらず、広告のターゲットを不特定多数の人々にしているため、有効性が実際に得られ得るものよりも低くなっている。このため、生産者は、ユーザ群全体から個々のグループを選び出し、グループごとに計算された自社の広告を各グループに提示するよう努めている。これは、ターゲット広告として知られている。ターゲット広告は、ウェブページのコンテンツではなく、ユーザの過去の行動または調査データに基づいて特定された特定のユーザグループに紐づけられた広告ステートメント(プレゼンテーション)である。適応ランタイム広告に対する既知のアプローチでは、検索クエリ、プロファイル、ユーザのネットワークアプリケーションからのデータなどの分析に基づいて広告メッセージを示す。しかしこの場合、広告は、実際のユーザの需要ではなく、その需要可能性に適応させたものである。このため、広告ステートメントの種類は、製品又はサービスの消費者の数よりも著しく少ない。
インターネットが発展していく中で、ユーザに対する広告配信方法自体も変化した。ユーザは、ネットサーフィン中だけでなく、ネットワークや情報ボードにアクセス可能なアプリケーションにおいて、通勤途中や帰宅途中にも広告に遭遇する。広告には、その広告されている製品を必要としないユーザには煩わしいものであるために、ユーザが広告を伴うアプリケーションおよびウェブリソースを回避しようとする、という重大な欠点がある。ユーザが実際に製品を必要とする場合でも、広告があまりにも侵襲的だと、ユーザは競合他社製品にリダイレクトするかもしれない。
このように既存の広告は効率が悪いため、ユーザに関する情報の収集および送信ならびにプロファイリングが行われているが、こうした行為は法的リスクを伴う可能性がある。広告はユーザを煩わせるため、ユーザは広告を伴うアプリケーションを避けようとするが、これは広告を通じて収益を得るアプリケーションにとって深刻な問題である。
本開示の態様は、状況(condition)を安定化するか、または要求される状態(state)にすることを可能にする製品を決定するように構成される。
本開示の技術的成果は、互換性のあるモジュールを検出する方法の実行結果として、システムと互換性のあるサードパーティモジュールを識別することであり、システムパラメータはシステムの機能を実現する要素から取得され、取得されたパラメータはシステムの状態モデルを問い合わせるために使用される(特定の例では、問い合わせ中に、収集されたパラメータとシステムの想定される状態との対応関係が確立される)。パラメータはリアルタイムで取得することができる。または、パラメータはシステムの要素のうちの1つ(基本要素)にインストールされたクライアントによって取得される。システムの要素は、ソフトウェア、ハードウェア、ハードウェア/ソフトウェア、および有機体であってもよい。1つの特定の例における基本要素は、システムのコンテキストにおいてIoTデバイスとインタラクトするパーソナルコンピュータデバイスであってもよい。1つの特定の例では、パラメータが取得されているシステムは、動的であり、無線ネットワークによって統合された要素から構成されている。基本要素に接続される要素の数は、特定の時点および基本要素の空間内の位置によって決定され、その時の無線ネットワークへのアクセスを提供する無線局のカバレッジのゾーン半径に依存する。状態モデルを問い合わせることによって、システムおよびその要素における状態およびプロセスの要件間の対応関係が評価される。モデルは、以下を検出するために一連の規則を制定することができる:
・要素のパラメータの関数である、要素の異常状態;
・システムの要素の異常状態を決定するパラメータの関数である、システムの異常状態;
・要素の状態の時間関数である、要素の異常なプロセス;
・システムの状態の時間関数である、システムの異常なプロセス。
別の例では、システムの状態モデルは、使用および信頼性の変形のモデルを集約したものである。
モデルの問い合わせの結果として、異常が検出され、異常の関数であるシステムパラメータも識別され得る。異常は少なくとも以下のものであってもよい:
・要求される状態から逸脱し、要素のパラメータの関数である要素の状態;
・要求される状態から逸脱し、要素の状態の関数であるシステムの状態;
・要求されるプロセスから逸脱し、要素の状態の時間関数である要素のプロセス;
・要求されるプロセスから逸脱し、システムの状態の時間関数であるシステムのプロセス;
・システムがインタラクトしている環境の状態であって、要求される状態から逸脱し、システムのパラメータによって記述可能な状態;
・システムがインタラクトしている環境のプロセスであり、要求されるプロセスから逸脱し、システムのパラメータによって記述可能なプロセス。
異常は例えば、そのパラメータが異常を定義するシステムのクラスまたは要素によって追加的に記述されてもよい。検出された異常は機能の異常に関連してもよい。ここでいう機能の異常とは、所定の機能を実行するシステムまたはシステムの要素の能力が低下または喪失することである。
異常を検出した後、検出された異常に関する情報を使用して複数の回復方法のモデルが検査され、モデル検査の結果として1つの回復方法が決定される。特定の回復方法は、システムおよび要素が要件を満たすことを保証する。特定の場合、モデルの検査は、異常と回復方法との対応関係の決定を含む。別の場合では、システムの回復はシステム設計要件の遵守を保証する。回復は、異常な状態またはプロセスを安定化させることによっても達成することができる。動作中に異常が検出された場合、モデル検査の結果として1つの方法が決定される。この方法は、実施されると、異常発生時に必要なシステム機能が回復することを保証する。検出された方法は、実施されると、要素またはシステムを、異常な状態またはプロセスから、要求される状態またはプロセスへ移行すること(異常の排除)により回復を実行する。特定の場合、要求される状態またはプロセスは、FURPS+(すなわち、「FURPS Plus」)の分類に従ったシステムの要件に準拠する。少なくとも2つの特定の方法がユーザプロファイルに対応する方法の要素を選択した場合、回復方法モデルは、記述モデルを参照することができる。
回復方法を決定した後、この回復方法を実施することができるサードパーティのシステム互換ツールが定義される。このツールは、回復方法がテーブルの名称であるツールデータベースから選択することができる。これ以降の選択のための回復方法と回復モジュールとの対応付けは、モジュールの仕様を作成するときに実行することができ、対応付け自体は、異常に相当する特性があるファシリティに関する情報をテーブルに入力することによって確立される。少なくとも2つのモジュールが決定された場合、ユーザプロファイル、モジュールの製造者の評判、またはモジュールの供給者の評判に応じてモジュールを選択する。
上記の例示的な態様の簡略化された概略は、本開示の基本的な理解に役立つ。この概要は、すべての企図された態様の包括的な概観ではなく、すべての態様の重要なまたは重大な要素を識別することも、本開示のいずれかまたはすべての態様の範囲を画することも意図していない。その唯一の目的は、以下のより詳細な開示の説明の前置きとして、1つまたは複数の態様を単純化された形態で提示することである。前述のことを達成するために、本開示の1つまたは複数の態様は、特許請求の範囲に記載され例示的に指摘された特徴を含む。
本明細書に組み込まれ、その一部を構成する添付の図面は、本開示の1つまたは複数の例示的な態様を示し、詳細な説明とともに、それらの原理および実装を説明するものである。
図1は、観察可能な動的システムの変形例を示す図である。 図2Aは、ユーザとの予防的インタラクションのシステムを示す図である。 図2Bは、ユーザとの予防的インタラクションのシステムと観察可能な動的システムとの間の関係を示す図である。 図3Aは、異常があるシステムと互換性のあるモジュールを決定する方法を示す図である。 図3Bは、互換性のあるモジュールの検出方法を示す図である。 図4は、本開示の例示的な実施形態を示す図である。 図5は、コンピュータシステムの一例を示す図である。
本開示は、広告のランダムな性質を放棄し、課題および課題解決のための最も効果的な方法として、広告メッセージをユーザ通知に変換する。本開示の態様により、不確定性および蓋然性を回避することができる。このため、本提案は広告というよりも、ユーザ通知予防システムであり、とりわけ、情報提供に費やされるリソースを低減し、情報を実際に必要とする人々のために実行する。広告はユーザの好みや見込まれるニーズを決定し、ユーザが関心を持ち、必要としそうな製品またはサービスに関する情報をユーザに送信する。本開示は、ユーザの環境を監視し、実際の問題(または今にも発生しそうな問題)および実際のニーズを発見し、これに関する情報を提供し、特定の製品またはサービスの取得を含む、実施できる可能な解決策を提案する。
平均的なユーザはデバイスに関する多くの技術的な問題を予測することができない。このようなユーザは、発生している又は発生した問題を解決するために製品の特性を評価できる程の十分な技術的知識がないが、製造業者はこのような情報を持っている。しかし、製造業者は、製品を必要とするユーザを把握していないため、確率的・統計的手法で市場調査を行って調査モデルを構築しなければならない。本開示は、デバイスおよびその環境(モノのインターネット(IoT)を含む)における問題を検出することができ、その問題に対する有効な予防的解決策を見つけることができる。このシステムは、追加モジュールのインストールを必要とせず、例えばアンチウィルスソフトウェアなどの実際のクライアントによって実現される。
本解決策は少なくとも、エレクトロニクス、情報技術(IT)プロバイダ、ITサービス、医療製品、ヘルスケア・プロバイダ、ヘルスケア製品およびサービスプロモーション、労働市場製品およびサービス、修理および建設の材料およびサービス、清掃サービス、ならびに食料品を販売促進するために使用することができる。
「システム」とは、互いに関係し接続された要素の集合であり、明確な全体または一体を形成する。システムは、設計上インタラクトする要素のセットであり、システムの要素はサブシステムとして知られる別のシステムであってもよい。システムは制御するシステムであっても制御されるシステムであってもよく、ハードウェア(例えばデバイス)、ソフトウェア(例えばプログラム)、および人間とのインタラクション(つまり人間はシステムの要素でありうる)または他の生物学的有機体とのインタラクションを含んでもよい。これらの要素は、全体としての機能的タスクを実行するように統合される。設計上、(例えば、FURPS+分類ごとに)システムに要件が課される:
・機能性または機能要件:特性、性能、セキュリティ。これらは、ユースケース図を構築するために使用される主要な要件である。
・ユーザビリティまたは利便性(UX)に関する要件:ヒューマンファクター、美的外観、一貫性、文書化。
・信頼性またはディペンダビリティに関する要件:起こり得るクラッシュの頻度、故障に対する耐性、回復可能性、安定性の予測可能性。
・性能または生産性に関する要件:応答時間、資源使用、有効性、パワー、スケーラビリティ。
・サポート可能性またはサポートに関する要件:サポートの可能性、修復可能性、柔軟性、変更可能性、モジュール性、拡張可能性、ローカライゼーションの可能性。
設計に従って実現されるシステムは、その機能中に設計要件を満たさなければならない。要件の特定の例は、システム/要素が所与の時間に提供すべき性能(例えば、FPSに対する要件、または少なくとも10人のユーザから毎秒100個のリクエスト等)である。
「システムの要素の状態」は、所与の時間におけるシステムの要素の属性セットであり、要素のパラメータの関数である。
「システムの状態」は、所与の時間におけるシステムの属性セットであり、システムのパラメータの関数である。これはまた、所与の時間におけるシステムの要素の状態の集合として定義される。
「プロセス」は、所定の時間間隔におけるシステムの要素の属性の変化、または、システム全体の属性の変化であり、状態の時間関数である。
(要素、システム、またはプロセスの)「パラメータ」は、プロセス、現象、(デバイス、ソフトウェア、有機物を含む)要素、またはシステムの特定の属性を特徴付ける量である。定量的には、全ての所与のシステムは、2つのクラスに分類可能な定量の集合によって記述できる。2つのクラスとは、すなわち、システムの一次属性を記述する、システムの調査のための初期データであるパラメータ(п)と、システムの二次属性を記述する、システムのパラメータの関数として決定される特性(X)と、である:X=f(п)。システムのパラメータは、システムの構造的及び機能的構成を記述するシステムの内部パラメータと、システムと(システムに関する)環境とのインタラクションを記述するシステムの外部パラメータとに細分される。内部パラメータは、システムの要素の構成およびその実際の構造を記述する構造パラメータと、システムの機能構成(機能プロセス)を記述する機能パラメータと、を含む。外部パラメータには、例えば、システムのリソースの使用頻度および使用量を示す作業負荷パラメータが含まれる。一般的な場合、これらが、システムとその環境とのインタラクションのパラメータである。
システムの特性は、システム全体としての機能の有効性を示すグローバル特性と、システムの個々の要素の機能の質を記述するローカル特性とに分けられる。システムのグローバル特性は、システムの所望の目的を達成する速度を示すパワー特性または生産性特性と、システムの機能の時間的側面を記述する時間特性と、システムの機能の信頼性を定義する信頼性特性と、システムの使用の経済的実現可能性を示すコスト指標による経済特性とを含むことができる。
上述したことから、実際にはパラメータと特性とが区別されることは明らかである。特性は、少なくとも1つのパラメータの関数である。本出願では、パラメータおよび特性の双方に「パラメータ」という用語を使用しこれらを区別しないものとする。
「異常」とは、要件からの逸脱である。要件は例えば、ハードウェア/ソフトウェア複合体の設計要件、または公衆衛生要件とすることができる。要件からの逸脱は、状態またはプロセスであってもよい。したがって、異常な状態とプロセスとを区別する。異常なプロセスの特定の例は漸進的な故障であり、一方、異常な状態は、突然の故障またはクラッシュである。異常は、少なくとも1つのパラメータの要件からの逸脱によって引き起こされてもよく、そのパラメータはまた、異常または異常パラメータである。
「モデル」とは、特定の形式(例えば、数学的、物理的、記号的、図像的、または記述的な形式)での現実の抽象表現であり、その現実の特定の態様を表すように構成され、検討中である質問に対する答えを生成することができる。モデルは、状態、プロセス、異常(異常な状態、プロセス、およびパラメータ)、当業者(ユーザ)、および製品(デバイス、ソフトウェア、サービス)を記述することができる。この形式は、テンプレート、従来の式、規則(入力の出力へのマッピング)、ニューラルネット、決定木などを使用して表現することができる。
「動的システム」とは、その要素の数が一定ではなく、基準点(基本要素)としてとらえられる空間内の要素の位置、および、時分によって決定されるシステムである。例えば、動的システムは、無線ネットワークにより統合される(ハードウェア/ソフトウェアの形態で実現される)要素から構成され、基本要素に接続される要素の数は、時分と空間内の基本要素の位置とによって決定され、その時の無線ネットワークへのアクセスを提供する無線局のカバレッジのゾーン半径に依存する。動的システム100の一例を示す図1については以下で説明する。
図2Aは、ユーザとの予防的インタラクションのシステム200を示す図である。システム200は、クライアント側201、サーバ側202、および第3の側203を含む。クライアント側には、観察対象であるシステム100が配置される。システム100は、システムの少なくとも1つの要素210と、インストールされたクライアント205(基本要素204)とを含む。クライアント205は、システムのパラメータを収集し、サーバ側とインタラクトするように構成されてもよい。第3の側には、モデル開発、製品説明/仕様等のためのソフトウェア/ハードウェアが配置される。サーバ側は、クライアント205とインタラクトし、第3の側から開発されたモデルを取得する。サーバ側では、取得したモデルのテストとそのランク付け、クライアントに関する統計の収集、設定ファイルの生成とクライアントのためのその更新、および、モデルの開発のためのインフラストラクチャの提供が行われる。
クライアント205は、収集モジュール206と、分析モジュール207と、データベース208とを含む。クライアントは、インストールモジュール209を含んでもよい。収集モジュール206は、システム100のパラメータ、特定の一例ではテレメトリを収集するように構成することができる。分析モジュール207は、パラメータを状態およびプロセスに変換し、パラメータ、状態、およびプロセスを分析して異常を発見する。分析モジュール207による分析は、状態モデルなどのモデルを問い合わせるモジュールによって行われる。このモジュール207はまた、異常を分析して回復方法を決定し、回復方法が実行されることを可能にするモジュールを発見し、そのためにモデルも問い合わせられる。分析モジュール207は、任意に、サーバ側に配置することができる。インストールモジュール209は、回復方法を実現するソフトウェアを実装するように構成されてもよい。データベース208はパラメータ及び状態を格納し、プロセスは時間に伴う状態の変化であるため、要素及びシステムにおけるプロセスに関する情報を分析モジュール207が取得することを可能にする。
第3の側では、開発モジュールは製品(サービスを含む)の説明を作成し、モデルを生成し、結果をサーバ側に送信する。開発モジュールは、サーバ側およびクライアント側のモジュールによってサポートされるフォーマットで人間によって容易に理解される製品の記述を形式化し、形式化された記述に基づくモデルを含むモデルを生成し、結果をサーバ側に送信するためのフレームワーク212および他のソフトウェアを含むことができる。
サーバ側は、クライアント側との通信のためのインタフェース214およびサードパーティ開発モジュールとの通信のためのインタフェース(216)を提供する。開発インフラストラクチャ218は、サーバ側で実現され、少なくとも、ランキングモジュール220、テストモジュール222、および統計収集モジュール224を含む。
ランキングモジュール220は、特定のクライアントに送信され、分析モジュール207によって問い合わせられるモデルを決定するように構成されてもよい。テストモジュール222は、開発モジュールから取得された新しいモデルをチェックするように構成されてもよい。モデルはモデルデータベース225に保持される。統計収集モジュール224は、収集されたパラメータ、問い合わせられたモデル、およびモデルの問い合わせの結果に従って、クライアントからデータを受信し、統計データベース226に保持される統計を生成する。累積された統計は、新しいモデルを開発したり、既存のモデルをデバッグしたりするために使用され、インタフェースを介して開発者がアクセスできる。
図1は、1つまたは複数のセンサ108によって観察される動的システム100の変形例を示す図であり、その中核は、クライアントがインストールされる基本要素(BE)104(図2Aの基本要素と同様)である。基本要素104は、ノートブック、スマートウォッチ、スマートフォン、パーソナルコンピュータ等であってもよい。基本要素104は、この例ではアクセスポイント106を介して他の要素にリンクされている。したがって、システムの要素の数は、そのカバレッジエリア内で基本要素が見つけられるアクセスポイント106の動作半径によって決定される。所与のシステム100の場合、特定の例では人間は、制御/診断/監視の主体又は客体としてシステムの要素であると考えることができる。人間が制御/診断/監視(例えば、心電図の記録)の客体であると考えられる場合、システムの他の要素は制御の主体である。人間がシステムの要素である場合の異常の概念は、医療要件の場面においてプロセスが正常状態から逸脱することとして定義することができる。
別の場合には、人間及び環境の双方が制御/診断/監視の客体であると考えられるが、この場合これらはシステム100に対して外部にある。所与の例では、システムの要素は示された分類に従って外部にあるパラメータを収集し、これらのパラメータに基づいて、制御/診断/監視の客体の状態およびプロセスが決定され、一方、回復の方法は、人間または環境のいずれかであり得る制御/診断/監視の客体に関して決定される。
システム200と観察可能な動的システム100との関係を図2Bで説明する。動的システム100は、システム200のサブシステムであってもよく、システム200と要素が交差していてもよい。例えば、基本要素104は、(図2Bに示すように)システム200の全体及びシステム100の一部であってもよい。
システム200は、異常を有するシステムのための互換性のあるモジュールを選択する方法を実施するように構成されてもよい(図3A参照)。この場合、クライアント205の収集モジュール206はステップ310において、このシステム100の指定された機能を実現する要素からシステム100のパラメータを収集する。収集はまたリアルタイムで行われてもよい。収集されたパラメータはクライアントデータベースに保存され、ステップ320において、収集されたパラメータはシステムの状態モデルの問い合わせのために、クライアント205の分析モジュール207によって使用される。分析モジュール207は状態モデルを問い合わせる際に、システム100およびその要素の状態の、システムの要件に対する適合性を評価する。状態モデルは、プロセスおよび状態がその要件を満たす場合は正常とし、例えば故障状態または故障プロセスを記述する場合は異常として記述することができる。状態モデルは、クライアントデータベース208に保持することができる。別の特定の例では、状態モデルはサーバ側によってオンデマンドでクライアントの分析モジュールに提示されてもよい。状態を記述するモデルは回帰、分類、カテゴリ化、および他のモデルなど、可能な限り多様であってもよい。状態を記述するモデルは、意思決定ツリー、ニューラルネット、またはIF(or/and/xor)THEN型の論理規則などに基づくことができる。
ステップ330において、モデルの問い合わせの結果として、システムにおいて異常が検出される。異常は少なくとも、要求される状態から逸脱し、要素のパラメータの関数である要素の状態、要求される状態から逸脱し、要素の状態の関数であるシステムの状態、要求されるプロセスから逸脱し、要素の状態の時間関数である要素のプロセス、要求されるプロセスから逸脱し、システムの状態の時間関数であるシステムのプロセス、システムがインタラクトする環境であって、要求される状態から逸脱し、システムのパラメータによって記述可能である環境の状態、およびシステムがインタラクトする環境であって、要求されるプロセスから逸脱し、システムのパラメータによって記述可能である環境のプロセスであってもよい。
異常を発見した後、発見された異常に関する情報は、さらなる処理のために形式化され、異常のクラス(および/または名称)と、異常が関数であるシステムパラメータとによって特徴付けることができる。さらに、パラメータが異常を決定するシステムの要素は、特性として示されてもよい。異常のクラスおよび名称は、どの要件から逸脱しているかに依存する。異常の例は、ルータの弱い信号、要素(CPU、HDD、SSD、RAMなど)の性能の劣化、不十分なRAM空間、データ損失/破損などであり得る。異常が漸進的な障害を伴う場合、異常は、特定された実際のデータ損失またはメモリ量不足ではなく、それらの発生が差し迫っていることをいう。特定の例では、異常には(FURPS+分類における)機能クラスがあり、例えば、システムの機能を含む。機能異常は、システムの設計または目的によって定められる機能を実行するシステムまたはシステムの要素の性能の低下または損失である。
ステップ340で異常を検出し、異常に関する情報を使用して、回復方法のモデルが問い合わせられる。状態モデルと同様に、回復方法の異なるモデルが存在し得る。特定の例では、記述モデルが使用される。さらに、モデルの問い合わせの結果として、ステップ350において、実施されたときに、例えば、システムの要求された機能の回復を保証するなど、システムおよび要素の要件への適合性を保証する回復方法が決定される。このようにして発見された回復方法は、異常な状態またはプロセスを安定化させる(異常の進行を止める、これは漸進的な故障に有用である)とともに、異常な状態またはプロセスから要求される状態またはプロセスに要素またはシステムを切り替える(異常の排除)ことによってシステムの回復をもたらすことができる。要求される状態またはプロセスは、FURPS+分類によるシステムの要件に適合する。回復方法が2つ以上検出される場合があるが、その場合は、性別、年齢、場所、マーケティングクラス、購買力(支払能力)、ITリテラシーのレベルなどの様々な特性を含み得る基本要素のユーザプロファイルに基づいて最終的な方法が選択される。
ステップ360では、サードパーティ互換モジュールが選択され(一例では、本方法はモジュールではなく製品を選択することができる。)、回復方法のモデルの問い合わせの結果として見出される回復方法の機能性を実現する。このために、モデルおよびデータベースの両方を使用することができ、回復方法の名称は、回復方法を実現することが保証されるモジュールに対応する。回復方法に関しては、利用可能な回復モジュールが複数あってもよい。その場合、モジュールはユーザのプロファイルに基づいて選択され、さらに、回復モジュールの製造者(ベンダ)の評判が考慮されてもよい。選択されたモジュールは、システム内の様々な方法によって実施することができ、方法の一つとして、クライアントのインストールモジュールによるソフトウェアのインストール方法がある。適合性は、システムまたはモジュールの仕様の分析に基づいて決定される。
特定の例では、回復方法は決定されず(ステップ340および350をスキップする)、モジュールは異常に関する情報に基づいて決定される。この場合、ステップ330を実行した後、ステップ360にジャンプする。
上述の方法は、システム200によって他の方法で実行されてもよい(図3B参照)。ステップ310からステップ330までは上述の方法を繰り返すが、その後の処理は変化する。異常が関数である少なくとも要素またはシステムのパラメータによって特徴付けられる異常を検出した後、ステップ360aにおいて、利用可能なサードパーティのシステムまたはモジュールのデータベースまたは少なくとも1つのモジュールに関する情報が取得される。次に、ステップ320aにおいて、再度、システムの状態モデルが、ステップ310において収集されたパラメータセットを使用して問い合わせられるが、このパラメータセット中、異常が関数であるシステムのパラメータは、利用可能なサードパーティモジュールのデータベースのモジュールと同等のパラメータによって置き換えられる。ステップ330aにおける状態モデルの問い合わせに基づいて、サードパーティモジュールのデータベースから少なくとも1つのモジュールを見出す。このモジュールは、システムと互換性があり、そのモジュールの置換パラメータを使用して状態モデルを問い合わせるときに異常が見出されない。
ステップ330aでは、指示された基準を満たすモジュールを複数見つけることができ、その場合は、見つかったモジュールのうち一つのモジュールがステップ360bで選択される。例えば、特定の例では、基本要素のユーザのプロファイルおよび/または見つかったモジュールの製造業者/プロバイダの評判に基づいて、1つのモジュールが選択される。別の特定の例では、発見されたすべてのモジュールについてユーザに通知する(リストを最初にランク付けすることができる)。そのパラメータによって異常が決定されたシステムの要素を実現するモジュールの代わりに、またはそれに加えて、選択されたモジュールをインストールすることができる。
より良く理解するために、単純化された例(図4)を考える。クライアント402(クライアントソフトウェア)は、ノートブック400にインストールされ、ノートブック400はルータ401に接続されている。本開示の用語では、ノートブックは基本要素であり、他の要素、すなわちルータ401と共に、調査されるシステムを形成する。さらに、基本要素自体が要素から構成されており、調査されるシステムにおいてノートブックはサブシステムである。クライアント402は、システムおよび要素のパラメータを収集し、要素は、少なくとも中央処理装置410、RAM412、不揮発性記憶装置(NVRAM)414、無線通信モジュール416、およびルータ401である。本例では、NVRAMはSSD(solid state drive)によって実現され、ルータ401はWPA2ソフトウェア暗号化方式の外部ルータによって実現される。クライアント402は、以下のパラメータを収集する: NVRAM(再割り当てセクタカウントなど)のS.M.A.R.T(自己監視、分析、および報告技術)属性;トラフィック暗号化に関するデータ(たとえば、yes/no、暗号化の種類);両方向のトラフィック量、トラフィック密度(単位時間当たりの量);チャネル速度;ルータ信号パワー;およびNVRAM(種類(Type)、量(Value)、フォームファクタ(FF)、インタフェース(Interface))などのモジュールの仕様;およびルータ(Wi-Fi(IEEE)規格、Wi-Fiデバイスの周波数範囲(Spectr)、ハードウェア暗号化サポート(HBE))。
以下の表1では、収集されたパラメータを集約している。この表から、プロセスSn→Sn+1 →...→Sn+...と、所与の時間Snにおける状態と、を得ることができる。
Figure 0007320443000001
収集されたパラメータは、システムの状態モデルを問い合わせるためにクライアントの分析モジュール207によって使用される。分析モジュール207は状態モデルの問い合わせの際に、システム100とその要素の状態の、システムの要件に対する適合性を評価する。この例では、以下のように要素の異常状態を記述する単純な論理モデルが使用される。
例えば、状態モデルは、所与の状態(Vn)におけるチャネル速度がしきい値速度Vkより著しく低いか、またはしきい値Vkより著しく高い場合に、ネットワークチャネルの劣化の状態を記述する異常状態SPEED_DEGRを使用するよう指定することができる(すなわち、IF Vn << Vk or Vn >> Vk THEN SPEED_DEGR)。
1つの例では、状態モデルは、所与の状態(RSCn)での再割り当てセクタ数がしきい値RSCk未満であり、第2の状態(RSCm)での再割り当てセクタ数未満である場合、ディスク表面の漸進的な欠陥という形でNVRAMの劣化を記述する、異常状態NVRAM_Sector_DEGRを使用するよう指定することができる。こうした劣化は、表面の摩耗の証拠となるセクタ再割り当て操作数の増加によって示される(すなわち、IF RSCn < RSCk < RSCm WHERE Tn < Tk < Tm THEN NVRAM_Sector_DEGR)。
別の例では、状態モデルは、再割り当てされたセクタ数が20より大きい場合、再割り当てセクタ数の臨界値20に達したことによるNVRAMの障害を記述する異常状態NVRAM_FAULTを使用するよう指定することができる(すなわち、IF RSC > 20 THEN NVRAM_FAULT)。
別の例では、所与の状態(Pn)での信号パワーがしきい値信号パワー値よりも大きく、別の状態(Pm)つまり第2の状態での信号パワーが15dBm未満であると判定されたことに応じて、信号パワーの劣化の状態を記述する異常状態POWER_DEGRが使用され、臨界レベルである15dBmまで時間の経過により信号レベルが低下したことを示す(すなわち、IF Pn > Pk > Pm and Pm < 15 WHERE Tn < Tk < Tm THEN POWER_DEGR)。
以上のようなモデルの問い合わせの結果、クライアントは以下の様な特定の時点での異常を発見する:時刻T3でのネットワークチャネルの劣化、時刻T6でのNVRAMの劣化、時刻T9でのNVRAMの故障、時刻T5での信号パワーの劣化。
劣化は異常なプロセスであり、故障は異常な状態である。異常についての情報を有すると、回復方法のモデルが問い合わせられ(この例では論理モデルによっても表される)、回復方法は以下のように決定される:
・IF POWER_DEGR THEN AREA_EXTEND
信号パワーの回復のためには、ルータの有効カバレッジの半径を拡大することが推奨される。
・IF SPEED_DEGR WHERE ENCn = 1 and HBEi = 0 THEN HBE
接続速度の回復のためには、ハードウェア暗号化サポートを提供することが推奨される。
・IF SSD_FAULT THEN NVRAM_CHANGE
NVRAMの故障は、モジュール交換により対処するべきである。この例ではSSDを交換することで要素を実現する。
・IF ROM_Sector_DEGR THEN NVRAM_CHANGE or BACKUP
表面劣化を特定した場合、その要素を実現しているモジュールがまだ動作可能であれば、モジュールの交換を検討しバックアップコピーを準備することが推奨される。
回復方法が決定されると、推奨される回復方法を実現可能なモジュールが決定される。この例では、これはデータベース227へのクエリによって行われ、データベース227では回復方法に従ってテーブルが指定される。推奨される方法を実現するだけでなく、問題のシステムと互換性があるモジュールを選択するため、クエリには問題のシステムのパラメータに基づいて形成された特定の条件(演算子WHERE)を含めている。クエリを実行した結果は、クエリ自体と共に提示される:
Figure 0007320443000002
2つ以上のモジュールが見つかった場合、次に、ユーザの財務支払能力、ユーザのITリテラシーのレベル(すべてのモジュールが容易にインストールできるわけではない)、専門家に電話をかけるユーザの意欲、消費者間でのソリューションの認知度、製造者/供給者の評判などの追加の特徴を考慮して、見つかったモジュールに追加のフィルタを適用する。
特定の例では、回復方法のモデルは問い合わせられないことがある。例えば、再割り当てセクタ数が臨界値20に達することによるNVRAMの障害を記述するモデル、IF RSC > 20 THEN NVRAM_FAULTのトリガ時などである。
クエリは、モジュールのデータベースに対して行うことができ、ここで、テーブル属性は上記の例のように、回復方法ではなく、次のように異常に対応する:
Figure 0007320443000003
図3Bに記載された方法を実行する場合、次の異常を検出した後:
Figure 0007320443000004
パラメータが異常を決定しているシステム要素を実現することができる等、システム100と互換性のあるサードパーティモジュールに関する情報が得られる:
Figure 0007320443000005
見つかった互換性のあるモジュールの中で、モジュールの置換パラメータを使用して状態モデル(IF RSC > 20 THEN NVRAM_FAULT)に問い合わせると、異常(RSC > 20 = False)が見つからないモジュールが選択される。この例では、明らかに、選択されるモジュールは、再割り当てセクタが存在しないという特性を有するようなモジュール、すなわち、RSC==0であるような、任意の適切に動作するモジュールである。
システム200のモジュールとは、集積マイクロ回路(特定用途向け集積回路、ASIC)またはフィールドプログラマブルゲートアレイ(FPGA)などのハードウェアを使用して、あるいは例えば、マイクロプロセッサシステムおよびプログラム命令のセットなどのソフトウェアおよびハードウェアの組合せの形態で、また神経シナプスチップに基づいて実現される、実際のデバイス、システム、コンポーネント、コンポーネントのグループを意味する。示されたモジュールの機能は、ハードウェアによってのみ実現されてもよく、また、機能の一部がソフトウェアによって実現され、一部がハードウェアによって実現される組み合わせの形態で実現されてもよい。特定の変形実施形態では、モジュールをコンピュータのプロセッサ(図5に示すものなど)上に実装することができる。データベースは全ての可能な方法によって実現することができ、単一の物理的媒体上に、またはローカルまたはリモートのいずれかに位置する様々な媒体上に含めることができる。
図5は、例示的な態様に従って、異常を有するシステムのための互換性のあるモジュールを検出するシステムおよび方法の態様が実装され得るコンピュータシステム20を示すブロック図である。コンピュータシステム20は例えば、先に説明した基本要素104のいずれにも対応し得ることに留意されたい。コンピュータシステム20は複数のコンピューティングデバイスの形態、または単一のコンピューティングデバイス、例えば、デスクトップコンピュータ、ノートブックコンピュータ、ラップトップコンピュータ、モバイルコンピューティングデバイス、スマートフォン、タブレットコンピュータ、サーバ、メインフレーム、埋め込みデバイス、および他の形態のコンピューティングデバイスの形態とすることができる。
図示のように、コンピュータシステム20は、中央処理装置(CPU)21と、システムメモリ22と、中央処理装置21に関連するメモリを含む様々なシステムコンポーネントを接続するシステムバス23とを含む。システムバス23は、バスメモリまたはバスメモリコントローラ、周辺バス、および他の任意のバスアーキテクチャとインタラクトすることができるローカルバスを含むことができる。バスの例は、PCI、ISA、PCI-Express、HyperTransport(登録商標)、InfiniBand(登録商標)、シリアルATA、I2C、および他の好適な相互接続を含むことができる。中央処理装置21(プロセッサとも呼ばれる)は、単一または複数のコアを有するプロセッサの単一または複数のセットを含むことができる。プロセッサ21は、本開示の技法を実施する1つまたは複数のコンピュータ実行可能コードを実行することができる。システムメモリ22は、本明細書で使用されるデータおよび/またはプロセッサ21によって実行可能なコンピュータプログラムを記憶するための任意のメモリとすることができる。システムメモリ22は、ランダムアクセスメモリ(RAM)25などの揮発性メモリ、および読取り専用メモリ(ROM)24、フラッシュメモリなどの不揮発性メモリ、またはそれらの任意の組合せを含むことができる。基本入出力システム(BIOS)26は、ROM24を使用してオペレーティングシステムをロードするときのような、コンピュータシステム20の要素間で情報を転送するための基本手順を記憶することができる。
コンピュータシステム20は、1つまたは複数のリムーバブル記憶装置27、1つまたは複数の非リムーバブル記憶装置28、またはそれらの組合せなどの1つまたは複数の記憶装置を含むことができる。1つまたは複数のリムーバブル記憶装置27および非リムーバブル記憶装置28は、ストレージインタフェース32を介してシステムバス23に接続される。一態様では、記憶装置および対応するコンピュータ可読記憶媒体がコンピュータシステム20のコンピュータ命令、データ構造、プログラムモジュール、および他のデータを記憶するための独立電源型モジュールである。システムメモリ22、リムーバブル記憶装置27、および非リムーバブル記憶装置28は、様々なコンピュータ可読記憶媒体を使用することができる。コンピュータ可読記憶媒体の例は、キャッシュ、スタティックランダムアクセスメモリ(SRAM)、ダイナミックランダムアクセスメモリ(DRAM)、ゼロキャパシタRAM、ツイントランジスタRAM、強化ダイナミックランダムアクセスメモリ(eDRAM)、拡張データ出力ランダムアクセスメモリ(EDO RAM)、ダブルデータレートランダムアクセスメモリ(DDR RAM)、電気的消去可能プログラマブルリードオンリメモリ(EEPROM)、NRAM、抵抗性ランダムアクセスメモリ(RRAM(登録商標))、シリコン酸化物窒化物シリコン(SONOS)ベースのメモリ、相変化ランダムアクセスメモリ(PRAM)などの機械メモリ、ソリッドステートドライブ(SSD)またはフラッシュドライブなどのフラッシュメモリまたは他のメモリ技術、ハードディスクドライブまたはフロッピーディスクなどの磁気カセット、磁気テープ、および磁気ディスクストレージ、コンパクトディスク(CD-ROM)またはデジタル多用途ディスク(DVD)などの光ストレージ、ならびに所望のデータを格納するために使用され、コンピュータシステム20によってアクセスされ得る任意の他の媒体を含む。
コンピュータシステム20のシステムメモリ22、リムーバブル記憶装置27、および非リムーバブル記憶装置28を使用して、オペレーティングシステム35、追加のプログラムアプリケーション37、他のプログラムモジュール38、およびプログラムデータ39を記憶することができる。コンピュータシステム20はキーボード、マウス、スタイラス、ゲーム・コントローラ、音声入力装置、タッチ入力装置などの入力装置40からデータを通信する周辺インタフェース46、または、シリアルポート、パラレルポート、ユニバーサルシリアルバス(USB)などの1つまたは複数のI/Oポートを経由するプリンタもしくはスキャナなどの他の周辺デバイス、または他の周辺インタフェースを含むことができる。1つまたは複数のモニタ、プロジェクタ、または統合ディスプレイなどのディスプレイ装置47も、ビデオアダプタなどの出力インタフェース48を介してシステムバス23に接続することができる。コンピュータシステム20は、ディスプレイ装置47に加え、ラウドスピーカ及び他のオーディオビジュアル装置のような他の周辺出力装置(図示せず)を装備することができる。
コンピュータシステム20は、1つまたは複数のリモートコンピュータ49へのネットワーク接続を使用して、ネットワーク環境で動作することができる。リモートコンピュータ49は、コンピュータシステム20の性質を説明する上述の要素の大部分またはすべてを含むローカルコンピュータワークステーションまたはサーバとすることができる。ルータ、ネットワーク局、ピアデバイス、または他のネットワークノードなどの他のデバイスも、コンピュータネットワーク内に存在し得るが、これらに限定されない。コンピュータシステム20は、ローカルエリアコンピュータネットワーク(LAN)50、ワイドエリアコンピュータネットワーク(WAN)、イントラネット、およびインターネットなどの1つまたは複数のネットワークを介してリモートコンピュータ49と通信する1つまたは複数のネットワークインタフェース51またはネットワークアダプタを含むことができる。ネットワークインタフェース51としては、例えば、イーサネット(登録商標)インタフェース、フレームリレーインタフェース、SONETインタフェース、無線インタフェース等が挙げられる。
本開示の態様は、システム、方法、および/またはコンピュータプログラム製品であってもよい。コンピュータプログラム製品は、プロセッサに本開示の態様を実行させるためのコンピュータ可読プログラム命令を含むコンピュータ可読記憶媒体(1つ又は複数)を含むことができる。
コンピュータ可読記憶媒体は、コンピューティングシステム20などのコンピューティングデバイスのプロセッサによってアクセスすることができる命令またはデータ構造の形態のプログラムコードを保持し、記憶することができる有形デバイスとすることができる。コンピュータ可読記憶媒体は、電子記憶デバイス、磁気記憶デバイス、光記憶デバイス、電磁記憶デバイス、半導体記憶デバイス、またはそれらの任意の適切な組合せとすることができる。例として、そのようなコンピュータ可読記憶媒体は、ランダムアクセスメモリ(RAM)、リードオンリメモリ(ROM)、EEPROM、ポータブルコンパクトディスクリードオンリメモリ(CD-ROM)、デジタル多用途ディスク(DVD)、フラッシュメモリ、ハードディスク、ポータブルコンピュータディスケット、メモリスティック、フロッピー(登録商標)ディスク、またはパンチカードまたは命令が記録された溝内の隆起構造などの機械的に符号化されたデバイスを含むことができる。本明細書で使用されるように、コンピュータ可読記憶媒体は、電波または他の自由に伝播する電磁波、導波管または伝送媒体を通って伝播する電磁波、または有線で伝送される電気信号など、一時的な信号そのものであると解釈されるべきではない。
本明細書で説明するコンピュータ可読プログラム命令は、例えば、インターネット、ローカルエリアネットワーク、ワイドエリアネットワーク、および/またはワイヤレスネットワークなどのネットワークを介して、コンピュータ可読記憶媒体からそれぞれのコンピューティングデバイスに、または外部コンピュータもしくは外部記憶デバイスにダウンロードすることができる。ネットワークは、銅線伝送ケーブル、光伝送ファイバ、無線伝送、ルータ、ファイアウォール、スイッチ、ゲートウェイコンピュータ、および/またはエッジサーバを含むことができる。各コンピューティング装置内のネットワークインタフェースは、ネットワークからコンピュータ可読プログラム命令を受信し、それぞれのコンピューティング装置内のコンピュータ可読記憶媒体に記憶するために、コンピュータ可読プログラム命令を転送する。
本開示の動作を実行するためのコンピュータ可読プログラム命令は、アセンブリ命令、命令セットアーキテクチャ(ISA)命令、機械命令、機械依存命令、マイクロコード、ファームウェア命令、状態設定データ、またはオブジェクト指向プログラミング言語および従来の手続き型プログラミング言語を含む1つまたは複数のプログラミング言語の任意の組合せで書かれたソースコードまたはオブジェクトコードのいずれかとすることができる。コンピュータ可読プログラム命令は、完全にユーザのコンピュータ上で、部分的にユーザのコンピュータ上で、スタンドアロンソフトウェアパッケージとして、部分的にユーザのコンピュータ上で、部分的にリモートコンピュータ上で、または完全にリモートコンピュータまたはサーバ上で実行することができる。後者のシナリオでは、リモートコンピュータは、LANまたはWANを含む任意のタイプのネットワークを介してユーザのコンピュータに接続されてもよく、または(例えば、インターネットを介して)外部コンピュータに接続されてもよい。いくつかの実施形態では、例えば、プログラマブル論理回路、フィールドプログラマブルゲートアレイ(FPGA)、またはプログラマブル論理アレイ(PLA)を含む電子回路は本開示の態様を実行するために、電子回路をパーソナル化するためにコンピュータ可読プログラム命令の状態情報を利用することによって、コンピュータ可読プログラム命令を実行することができる。
様々な態様では、本開示で説明されるシステムおよび方法がモジュールの観点から対処することができる。本明細書で使用される「モジュール」という用語は例えば、特定用途向け集積回路(ASIC)またはFPGAなどのハードウェアを使用して実装される、あるいは、マイクロプロセッサシステムおよび(実行されている間に)マイクロプロセッサシステムを専用デバイスに変換するモジュールの機能を実装するための命令セットなどのハードウェアおよびソフトウェアの組合せとして実装される、現実世界のデバイス、コンポーネント、または構成要素の構成を指す。また、モジュールは2つの組み合わせとして実装されてもよく、特定の機能はハードウェアのみによって促進され、他の機能はハードウェアとソフトウェアとの組み合わせによって促進される。いくつかの実装形態ではモジュールの少なくとも一部、および場合によってはすべてが、コンピュータシステムのプロセッサ(上記の図5でより詳細に説明したものなど)上で実行され得る。したがって、各モジュールは、様々な適切な構成で実現されてもよく、本明細書で例示される任意の特定の実装形態に限定されるべきではない。
明確にするために、態様のルーチンの特徴のすべてが本明細書に開示されるわけではない。本開示の任意の実際の実装の開発において、開発者の特定の目標を達成するために、多数の実装固有の決定が行われなければならず、これらの特定の目標は、異なる実装および異なる開発者によって異なることが理解されるのであろう。そのような開発努力は複雑で時間がかかる可能性があるが、それにもかかわらず、本開示の恩恵を受ける当業者にとっては日常的なエンジニアリングの仕事であることが理解される。
さらに、本明細書で使用される語法または用語は説明を目的としたものであり、限定を目的としたものではない。したがって、本明細書の語法または用語は、関連技術の当業者の知識と組み合わせて、本明細書で提示される教示およびガイダンスに照らして、当業者によって解釈されるべきであることを理解されたい。さらに、明細書または特許請求の範囲におけるいかなる用語も、そのように明示的に記載されていない限り、一般的ではない意味または特別な意味に帰することを意図していない。
本明細書で開示される様々な態様は、例示として本明細書で言及される既知のモジュールに対する現在および将来の既知の同等物を包含する。さらに、態様および用途が示され、説明されてきたが、本明細書に開示された発明概念から逸脱することなく、上記よりも多くの変形例が可能であることは本開示の恩恵を受ける当業者には明らかであろう。

Claims (20)

  1. システム異常を検出するためのコンピュータにより実行される方法であって、
    第1のコンピューティングシステムの機能を特定するシステムパラメータを受信することと、
    受信したシステムパラメータを使用して、前記第1のコンピューティングシステム内の異常を検出するために、状態モデルをクエリすることと、
    前記状態モデルに基づく前記第1のコンピューティングシステム内の異常の検出に応じて、
    回復方法モデルと、検出された前記異常に関する情報と、に基づき、前記第1のコンピューティングシステムの要件を満たすことを保証するように構成された回復方法を決定することと、
    ツールデータベースから、決定された前記回復方法を実現するよう構成された、サードパーティのシステム互換性のあるツールを選択することと、
    を含む方法。
  2. 前記回復方法モデルに基づいて前記回復方法を決定するステップは、
    前記回復方法モデル内の前記検出された異常との対応関係に基づいて前記回復方法を決定することを含む、請求項1に記載の方法。
  3. 前記決定された回復方法は、前記第1のコンピューティングシステムのシステム設計要件の遵守を保証するように構成される、請求項1に記載の方法。
  4. 前記決定された回復方法は、前記第1のコンピューティングシステムの要素が、異常状態または異常プロセスから、前記第1のコンピューティングシステムの要件によって定義される状態またはプロセスに移行することにより回復を実行するように構成される、請求項1に記載の方法。
  5. 前記第1のコンピューティングシステムの前記要件は、機能要件、ユーザビリティ要件、信頼性要件、性能要件、およびサポート可能性要件を含む、複数の予め定義されたソフトウェア属性を含む、請求項4に記載の方法。
  6. 記回復方法を決定すること、前記第1のコンピューティングシステムのユーザプロファイルに基づいて複数の回復方法のうちの1つを選択すること、
    をさらに含む、請求項1に記載の方法。
  7. 前記回復方法モデルは、数学的記述モデルを含む、請求項1に記載の方法。
  8. 前記ツールを選択することは、前記ツールデータベース内のテーブルをクエリすることを含み、前記決定された回復方法は前記テーブルの名称である、請求項1に記載の方法。
  9. 前記回復方法モデルと、前記検出された異常に関する情報と、に基づいて前記回復方法を決定するステップはさらに、
    信号パワー劣化の異常状態を特定する、前記検出された異常に関する情報に基づき、前記回復方法を決定することを含み、前記決定された回復方法は、前記第1のコンピューティングシステムのルータの有効カバレッジ半径を拡大することにより、前記第1のコンピューティングシステムの無線ネットワークインタフェースの信号パワーを回復するよう構成される、請求項1に記載の方法。
  10. 前記回復方法モデルと、前記検出された異常に関する情報と、に基づいて前記回復方法を決定するステップはさらに、
    チャネル速度劣化の異常状態を特定する、前記検出された異常に関する情報に基づき、前記回復方法を決定することを含み、前記決定された回復方法は、ハードウェア暗号化サポートを可能にすることによって、前記第1のコンピューティングシステムのネットワーク接続のチャネル速度を回復するように構成される、請求項1に記載の方法。
  11. 前記回復方法モデルと、前記検出された異常に関する情報と、に基づいて前記回復方法を決定するステップはさらに、
    ストレージセクタ劣化の異常状態を特定する、前記検出された異常に関する情報に基づき、前記回復方法を決定することを含み、前記決定された回復方法は、前記第1のコンピューティングシステムの不揮発性ストレージデバイス上でバックアップ動作を実行し、当該不揮発性ストレージデバイスを置換するように構成される、請求項1に記載の方法。
  12. システム異常を検出するシステムであって、
    状態モデルと、回復方法モデルと、を記憶するメモリデバイスと、
    当該メモリデバイスに接続されるハードウェアプロセッサと、を含み、
    前記ハードウェアプロセッサは、
    第1のコンピューティングシステムの機能を特定するシステムパラメータを受信し、
    受信したシステムパラメータを使用して、前記第1のコンピューティングシステム内の異常を検出するために、状態モデルをクエリし、
    前記状態モデルに基づく前記第1のコンピューティングシステム内の異常の検出に応じて、
    回復方法モデルと、検出された前記異常に関する情報と、に基づき、前記第1のコンピューティングシステムの要件を満たすことを保証するように構成された回復方法を決定し、
    ツールデータベースから、決定された前記回復方法を実現するよう構成された、サードパーティのシステム互換性のあるツールを選択すること
    を実行するよう構成される、システム。
  13. 前記決定された回復方法は、前記第1のコンピューティングシステムのシステム設計要件の遵守を保証するように構成される、請求項12に記載のシステム。
  14. 前記決定された回復方法は、前記第1のコンピューティングシステムの要素が、異常状態または異常プロセスから、前記第1のコンピューティングシステムの要件によって定義される状態またはプロセスに移行することにより回復を実行するように構成される、請求項12に記載のシステム。
  15. 前記第1のコンピューティングシステムの前記要件は、機能要件、ユーザビリティ要件、信頼性要件、性能要件、およびサポート可能性要件を含む、複数の予め定義されたソフトウェア属性を含む、請求項14に記載のシステム。
  16. 記回復方法を決定することは、前記第1のコンピューティングシステムのユーザプロファイルに基づいて複数の回復方法のうちの1つを選択することをさらに含む、請求項12に記載のシステム。
  17. 前記回復方法モデルは、数学的記述モデルを含む、請求項12に記載のシステム。
  18. 前記ツールを選択することは、前記ツールデータベース内のテーブルをクエリすることを含み、前記決定された回復方法は前記テーブルの名称である、請求項12に記載のシステム。
  19. 前記回復方法モデルと、前記検出された異常に関する情報と、に基づいて前記回復方法を決定することは、
    信号パワー劣化の異常状態を特定する、前記検出された異常に関する情報に基づき、前記回復方法を決定することであって、前記決定された回復方法は、前記第1のコンピューティングシステムのルータの有効カバレッジ半径を拡大することにより、前記第1のコンピューティングシステムの無線ネットワークインタフェースの信号パワーを回復するように構成されることと、
    チャネル速度劣化の異常状態を特定する、前記検出された異常に関する情報に基づき、前記回復方法を決定することであって、前記決定された回復方法は、ハードウェア暗号化サポートを可能にすることによって、前記第1のコンピューティングシステムのネットワーク接続のチャネル速度を回復するように構成されることと、
    ストレージセクタ劣化の異常状態を特定する、前記検出された異常に関する情報に基づき、前記回復方法を決定することであって、前記決定された回復方法は、前記第1のコンピューティングシステムの不揮発性ストレージデバイス上でバックアップ動作を実行し、当該不揮発性ストレージデバイスを置換するように構成されること、
    のうち少なくとも一つをさらに含む、請求項12に記載のシステム。
  20. システム異常を検出するためのコンピュータ実行可能命令を含む非一時的コンピュータ可読媒体であって、前記命令は、
    第1のコンピューティングシステムの機能を特定するシステムパラメータを受信し、
    受信したシステムパラメータを使用して、前記第1のコンピューティングシステム内の異常を検出するために、状態モデルをクエリし、
    前記状態モデルに基づく前記第1のコンピューティングシステム内の異常の検出に応じて、
    回復方法モデルと、検出された前記異常に関する情報と、に基づき、前記第1のコンピューティングシステムの要件を満たすことを保証するように構成された回復方法を決定し、
    ツールデータベースから、決定された前記回復方法を実現するよう構成された、サードパーティのシステム互換性のあるツールを選択する
    ための命令である、媒体。
JP2019227519A 2018-12-28 2019-12-17 互換性のあるモジュールを特定するシステムおよび方法 Active JP7320443B2 (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
RU2018147243 2018-12-28
RU2018147243A RU2739866C2 (ru) 2018-12-28 2018-12-28 Способ обнаружения совместимых средств для систем с аномалиями
US16/429,172 2019-06-03
US16/429,172 US11113143B2 (en) 2018-12-28 2019-06-03 System and method of determining compatible modules

Publications (2)

Publication Number Publication Date
JP2020109636A JP2020109636A (ja) 2020-07-16
JP7320443B2 true JP7320443B2 (ja) 2023-08-03

Family

ID=71124253

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2019227518A Pending JP2020109635A (ja) 2018-12-28 2019-12-17 異常があるシステムと互換性のあるシステムを検出する方法
JP2019227519A Active JP7320443B2 (ja) 2018-12-28 2019-12-17 互換性のあるモジュールを特定するシステムおよび方法

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2019227518A Pending JP2020109635A (ja) 2018-12-28 2019-12-17 異常があるシステムと互換性のあるシステムを検出する方法

Country Status (4)

Country Link
US (3) US11113143B2 (ja)
JP (2) JP2020109635A (ja)
CN (2) CN111383044B (ja)
RU (1) RU2739866C2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2747474C2 (ru) * 2019-03-29 2021-05-05 Акционерное общество "Лаборатория Касперского" Способ асинхронного выбора совместимых продуктов
CN112328674B (zh) * 2020-11-17 2024-05-14 深圳力维智联技术有限公司 跨数据格式的模型转化加速方法及装置

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002366388A (ja) 2001-06-05 2002-12-20 Nec Corp カスタマサポート支援方法、カスタマサポート支援システム及びカスタマサポート支援プログラム
JP2009087136A (ja) 2007-10-01 2009-04-23 Nec Corp 障害修復システムおよび障害修復方法
US20110107137A1 (en) 2009-11-05 2011-05-05 Sony Corporation System and method for providing automated support to electronic devices
JP2012174232A (ja) 2011-02-24 2012-09-10 Fujitsu Ltd 監視装置、監視システムおよび監視方法
JP2012208659A (ja) 2011-03-29 2012-10-25 Tokyo Electron Ltd 情報処理装置、処理システム、処理方法、及びプログラム
WO2014171047A1 (ja) 2013-04-17 2014-10-23 日本電気株式会社 障害復旧手順生成装置、障害復旧手順生成方法および障害復旧手順生成プログラム
JP2018518762A (ja) 2015-05-28 2018-07-12 オラクル・インターナショナル・コーポレイション 自動異常検出および解決システム

Family Cites Families (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1141643A (ja) * 1997-07-04 1999-02-12 Internatl Business Mach Corp <Ibm> 無線情報処理端末及びその制御方法
JP2002150699A (ja) * 2000-11-06 2002-05-24 Sony Corp 情報処理装置、情報処理方法及び情報処理方法を記録した記録媒体
CN1567857A (zh) * 2003-06-24 2005-01-19 华为技术有限公司 数据链路层故障处理方法
US7225440B2 (en) * 2003-08-14 2007-05-29 International Business Machines Corporation System and method for manufacturing and updating insertable portable operating system module
US7290166B2 (en) * 2004-07-28 2007-10-30 Intel Corporation Rollback of data
US7373552B2 (en) * 2004-09-30 2008-05-13 Siemens Aktiengesellschaft Model based diagnosis and repair for event logs
US20070028219A1 (en) 2004-10-15 2007-02-01 Miller William L Method and system for anomaly detection
US8001527B1 (en) * 2004-12-21 2011-08-16 Zenprise, Inc. Automated root cause analysis of problems associated with software application deployments
US8266473B2 (en) * 2005-03-10 2012-09-11 Telecom Italia S.P.A. Disaster recovery architecture
CN101022633B (zh) * 2007-02-14 2011-02-09 华为技术有限公司 一种配置数据恢复方法、系统及装置
CN101369241A (zh) * 2007-09-21 2009-02-18 中国科学院计算技术研究所 一种机群容错系统、装置及方法
US20090299817A1 (en) 2008-06-03 2009-12-03 Qualcomm Incorporated Marketing and advertising framework for a wireless device
US8832256B2 (en) * 2008-11-28 2014-09-09 Red Hat, Inc. Providing a rescue Environment in a software provisioning environment
US8166348B1 (en) * 2010-03-29 2012-04-24 Emc Corporation Method of debugging a software system
US9600824B2 (en) 2010-06-02 2017-03-21 Universal Electronics Inc. System and method for recommending home appliances to a consumer
JP2012230451A (ja) * 2011-04-25 2012-11-22 Nec Casio Mobile Communications Ltd ネットワーク端末故障対応システム、端末装置、サーバ装置、ネットワーク端末故障対応方法及びプログラム
CN102855174B (zh) * 2011-06-28 2016-06-01 北京奇虎科技有限公司 自动化测试中可自动恢复的目标程序运行控制方法及装置
RU2011138462A (ru) * 2011-09-20 2013-04-10 Закрытое акционерное общество "Лаборатория Касперского" Использование решений пользователей для обнаружения неизвестных компьютерных угроз
US9691081B2 (en) * 2011-09-23 2017-06-27 International Business Machines Corporation Error-specific advertisement display in electronic device
CN102387511B (zh) * 2011-11-03 2014-08-06 富春通信股份有限公司 多阵元天线基站的无线网络覆盖的优化系统和装置
US20130218725A1 (en) 2012-02-22 2013-08-22 Quixby, Llc Multi-component selection system and method
JP5854132B2 (ja) * 2012-05-31 2016-02-09 富士通株式会社 情報処理方法、装置及びプログラム
US10416205B2 (en) * 2013-11-15 2019-09-17 Apple Inc. Monitoring of resource consumption patterns in an automated environment including detecting variance in resource consumption
US9552249B1 (en) 2014-10-20 2017-01-24 Veritas Technologies Systems and methods for troubleshooting errors within computing tasks using models of log files
US9699205B2 (en) * 2015-08-31 2017-07-04 Splunk Inc. Network security system
US9772898B2 (en) * 2015-09-11 2017-09-26 International Business Machines Corporation Identifying root causes of failures in a deployed distributed application using historical fine grained machine state data
US9922541B2 (en) * 2015-11-16 2018-03-20 Google Llc Systems and methods for detecting anomalies in a hazard detection system
WO2017094267A1 (ja) * 2015-12-01 2017-06-08 株式会社Preferred Networks 異常検出システム、異常検出方法、異常検出プログラム及び学習済モデル生成方法
US10133657B2 (en) * 2016-02-23 2018-11-20 Fujitsu Limited Textual similarity based software program repair
CN105635694A (zh) * 2016-03-09 2016-06-01 和县公安局 基于wifi局域网组建的远距离无线视频监控系统
US10129118B1 (en) 2016-03-29 2018-11-13 Amazon Technologies, Inc. Real time anomaly detection for data streams
RU2634181C1 (ru) * 2016-06-02 2017-10-24 Акционерное общество "Лаборатория Касперского" Система и способ обнаружения вредоносных компьютерных систем
US10796242B2 (en) 2016-08-25 2020-10-06 Oracle International Corporation Robust training technique to facilitate prognostic pattern recognition for enterprise computer systems
CN106340861A (zh) * 2016-10-24 2017-01-18 扬州科宇电力有限公司 一种微电网保护方法
US10332212B2 (en) 2016-10-26 2019-06-25 International Business Machines Corporation Automation and validation of insurance claims for infrastructure risks and failures in multi-processor computing environments
JP2018116795A (ja) * 2017-01-17 2018-07-26 株式会社デンソー スイッチ異常検出装置、スイッチ異常検出方法
US10915390B2 (en) * 2017-02-03 2021-02-09 Hewlett-Packard Development Company, L.P. Fault determination via telemetry data and state changes
US11237939B2 (en) 2017-03-01 2022-02-01 Visa International Service Association Predictive anomaly detection framework
JP7009771B2 (ja) * 2017-04-28 2022-01-26 富士フイルムビジネスイノベーション株式会社 情報処理装置及び情報処理プログラム
US10929232B2 (en) * 2017-05-31 2021-02-23 Intel Corporation Delayed error processing
RU2673711C1 (ru) * 2017-06-16 2018-11-29 Акционерное общество "Лаборатория Касперского" Способ обнаружения аномальных событий на основании набора сверток безопасных событий
CN107329877B (zh) * 2017-06-29 2020-10-23 南京途牛科技有限公司 机票业务监控执行系统及方法
RU2659473C1 (ru) * 2017-08-03 2018-07-02 Юрий Иванович Осипов Система передачи интернет-трафика между пользователями

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002366388A (ja) 2001-06-05 2002-12-20 Nec Corp カスタマサポート支援方法、カスタマサポート支援システム及びカスタマサポート支援プログラム
JP2009087136A (ja) 2007-10-01 2009-04-23 Nec Corp 障害修復システムおよび障害修復方法
US20110107137A1 (en) 2009-11-05 2011-05-05 Sony Corporation System and method for providing automated support to electronic devices
JP2012174232A (ja) 2011-02-24 2012-09-10 Fujitsu Ltd 監視装置、監視システムおよび監視方法
JP2012208659A (ja) 2011-03-29 2012-10-25 Tokyo Electron Ltd 情報処理装置、処理システム、処理方法、及びプログラム
WO2014171047A1 (ja) 2013-04-17 2014-10-23 日本電気株式会社 障害復旧手順生成装置、障害復旧手順生成方法および障害復旧手順生成プログラム
JP2018518762A (ja) 2015-05-28 2018-07-12 オラクル・インターナショナル・コーポレイション 自動異常検出および解決システム

Also Published As

Publication number Publication date
JP2020109636A (ja) 2020-07-16
RU2018147243A (ru) 2020-06-29
CN111382436A (zh) 2020-07-07
US10970156B2 (en) 2021-04-06
US11113143B2 (en) 2021-09-07
US20200210262A1 (en) 2020-07-02
US20200210271A1 (en) 2020-07-02
RU2739866C2 (ru) 2020-12-29
RU2018147243A3 (ja) 2020-10-07
CN111383044A (zh) 2020-07-07
JP2020109635A (ja) 2020-07-16
US20210365314A1 (en) 2021-11-25
CN111383044B (zh) 2023-10-31
CN111382436B (zh) 2023-06-23
US11614992B2 (en) 2023-03-28

Similar Documents

Publication Publication Date Title
JP7520519B2 (ja) 検索条件に基づいてユーザを識別してターゲティングするシステムおよび方法
US11023325B2 (en) Resolving and preventing computer system failures caused by changes to the installed software
JP7369630B2 (ja) 互換性のあるコンポーネントの非同期選択のシステムおよび方法
US11093289B2 (en) Provisioning disaster recovery resources across multiple different environments based on class of service
US9137110B1 (en) Availability risk assessment, system modeling
US9741005B1 (en) Computing resource availability risk assessment using graph comparison
US9619772B1 (en) Availability risk assessment, resource simulation
RU2699054C2 (ru) Восстановление доступа для использования основанной на облаке услуги после отказа системы
US20180307575A1 (en) Automated test generation for multi-interface and multi-platform enterprise virtualization management environment
JP7320443B2 (ja) 互換性のあるモジュールを特定するシステムおよび方法
US11237890B2 (en) Analytics initiated predictive failure and smart log
US10353620B2 (en) Lifecycle management of memory devices
US20220035691A1 (en) Techniques for utilizing disruptions to enterprise systems
EP3675017A1 (en) System and method of determining compatible modules
EP3675018A1 (en) Method of detecting compatible systems for systems with anomalies
EP3693913A1 (en) System and method of identifying and targeting users based on search requirements
CN112416700B (zh) 分析启动的预测性故障和smart日志
RU2712409C1 (ru) Способ определения совместимых средств
Eyers et al. Configuring large‐scale storage using a middleware with machine learning

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220614

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230428

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230606

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230621

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230724

R150 Certificate of patent or registration of utility model

Ref document number: 7320443

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150