JPH10509258A - コンピュータプロセスのリソースのモデル化方法及び装置 - Google Patents
コンピュータプロセスのリソースのモデル化方法及び装置Info
- Publication number
- JPH10509258A JPH10509258A JP8507384A JP50738496A JPH10509258A JP H10509258 A JPH10509258 A JP H10509258A JP 8507384 A JP8507384 A JP 8507384A JP 50738496 A JP50738496 A JP 50738496A JP H10509258 A JPH10509258 A JP H10509258A
- Authority
- JP
- Japan
- Prior art keywords
- resource
- state
- statement
- predicate
- component
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Prevention of errors by analysis, debugging or testing of software
- G06F11/362—Debugging of software
- G06F11/366—Debugging of software using diagnostics
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
- Stored Programmes (AREA)
- Injection Moulding Of Plastics Or The Like (AREA)
- Devices For Executing Special Programs (AREA)
- Multi-Process Working Machines And Systems (AREA)
Abstract
Description
Claims (1)
- 【特許請求の範囲】 1.電子計算機用プログラムの1つ若しくは複数のステートメントからなるコン ポーネントのプログラミングエラーの検出方法であって、 (a)リソース状態を有するリソースに対する1つ若しくは複数の有効な状態 を定義する過程と、 (b)前記1つ若しくはステートメントを通る制御流れ経路を通過する過程と 、 (c)前記制御流れ経路に沿って前記1つ若しくは複数のステートメントの各 々に対して、(1)前記リソースの前記リソース状態に対する前記ステートメン トの効果を評価する過程と、(2)前記効果に基づいて前記リソース状態から前 記リソース状態の新たなリソース状態への遷移をモデル化する過程とを実施する 過程と、 (d)前記新たな状態が、前記有効な状態のうちの1つの状態であるか否かを 判定する過程とを有することを特徴とするプログラミングエラーの検出方法。 2.前記コンポーネントが関数からなることを特徴とする請求項1に記載の方法 。 3.前記通過する過程が、 前記1つ若しくは複数のステートメントのうち選択されたステートメントが、 述語の値に基づいて前記制御流れ経路の一部を決定しているか否かを判定する過 程と、 前記制御流れ経路を決定するために前記述語を評価する過程とを有することを 特徴とする請求項1に記載の方法。 4.前記述語を評価する過程が、 前記述語の前記値が未知であるか否かを判定する過程と、 前記述語に想定した値を代入する過程とを有することを特徴する請求 項3に記載の方法。 5.前記述語を評価する過程が、 前記想定した値から前記リソースの前記状態に関する情報を推論する過程を更 に有することを特徴とする請求項4に記載の方法。 6.前記述語を評価する過程が、 前記想定した値から前記述語の1つ若しくは複数のオペランドの各々の値を推 論する過程を更に有することを特徴とする請求項4に記載の方法。 7.前記通過する過程が、 前記1つ若しくは複数のステートメントのうちの第2の選択されたステートメ ントが、前記第1の述語の前記1つ若しくは複数のオペランドからなる第2の述 語の第2の値に基づいて前記制御流れ経路の第2の部分を決定しているか否かを 判定する過程と、 前記第1の述語の前記1つ若しくは複数のオペランドの前記推論された各々の 値を用いて前記制御流れ経路の前記第2の部分を求めるために前記第2の述語を 評価する過程とを更に有することを特徴とする請求項6に記載の方法。 8.前記過程(c)の前記前記(1)が、 前記ステートメントが、呼び出されたコンポーネントに対する呼び出しである か否かを判定する過程と、 前記ステートメントが、呼び出されたコンポーネントに対する呼び出しである 場合、前記リソースの前記リソース状態に対する前記呼び出されたコンポーネン トの効果を評価するために、前記呼び出されたコンポーネントの実行をエミュレ ートする過程とを更に有することを特徴とする請求項1に記載の方法。 9.前記呼び出されたコンポーネントの実行をエミュレートする前記過 程が、 前記リソースが、前記呼び出されたコンポーネントのエクスターナルに関連し ているか否かを判定する過程と、 前記呼び出されたコンポーネントのモデルから、前記エクスターナルと関連す る前記リソースに対する前記呼び出されたコンポーネントの実行の前記効果を判 定する過程とを有することを特徴とする請求項8に記載の方法。 10.前記リソースが前記有効な状態のうちの何れでもないことをユーザに通知 する過程を更に有することを特徴とする請求項1に記載の方法。 11.前記リソースの状態に対するその効果が、前記有効な状態の何れでもない 新たなリソース状態への遷移を引き起こすという効果である、前記ステートメン トを、ユーザに対して特定する過程を更に有することを特徴とする請求項1に記 載の方法。 12.1つ若しくは複数のステートメントを有する電子計算機用プログラムのコ ンポーネントのプログラミングエラーの検出方法であって、 (a)リソース状態を有する1つのリソースに対する1つ若しくは複数の有効 な状態を定義する過程と、 (b)各々が前記有効な状態の第1の状態から前記有効な状態の第2の状態へ の状態遷移である1つ若しくは複数の有効な状態遷移を定義する過程と、 (c)前記1つ若しくは複数のステートメントを通る制御流れ経路を通過する 過程と、 (d)前期制御流れ経路に沿った前記1つ若しくは複数のステートメントの各 々に対して、(1)前記リソースの前記リソース状態に対する前記ステートメン トの効果を評価する過程と、(2)前記効果に基づいて前記リソースの前記リソ ース状態の変化をモデル化する過程とを実行 する過程と、 (e)前記変化が、前記有効な状態遷移のうちの1つではないことを検知する 過程とを有することを特徴とする方法。 13.前記通過する過程が、 前記1つ若しくは複数のステートメントのうちの選択されたステートメントが 、述語の値に基づいて前記制御流れ経路の一部分を決定しているか否かを判定す る過程と、 前記制御流れ経路を決定するために、前記述語を評価する過程とを有すること を特徴とする請求項12に記載の方法。 14.前記述語を評価する前記過程が、 前記述語の前記値が未知の値であるか否かを判定する過程と、 前記述語に想定した値を代入する過程とを有することを特徴とする請求項13 に記載の方法。 15.前記述語を評価する前記過程が、 前記想定した値から前記リソースの前記状態に関する情報を推論する過程を更 に有することを特徴とする請求項14に記載の方法。 16.前記述語を評価する前記過程が、 前記想定した値から、前記述語の1つ若しくは複数の要素の各々の値を推論す る過程を更に有することを特徴とする請求項14に記載の方法。 17.前記通過する過程が、 前記1つ若しくは複数のステートメントのうちの第2の選択されたステートメ ントが、前記第1の述語の前記1つ若しくは複数の要素を有する第2の述語の第 2値に基づいて前記制御流れ経路の第2の部分を判定する過程と、 前記第1の述語の前記1つ若しくは複数の要素の前記推論された各々の値を用 いて、前記制御流れ経路の前記第2の部分を決定するために、 前記第2の述語を評価する過程とを更に有することを特徴とする請求項16に記 載の方法。 18.前記過程(d)の前記過程(1)が、 前記ステートメントが、呼び出されたコンポーネントに対する呼び出しである か否かを判定する過程と、 前記ステートメントが呼び出されたコンポーネントに対する呼び出しである場 合、前記リソースの前記リソース状態に対する前記呼び出されたコンポーネント の前記効果を評価するために、前記呼び出されたコンポーネントの実行をエミュ レートする過程とを有することを特徴とする請求項12に記載の方法。 19.前記呼び出されたコンポーネントの実行をエミュレートする前記過程が、 前記リソースが、前記呼び出されたコンポーネントのエクスターナルに関連す るか否かを判定する過程と、 前記呼び出されたコンポーネントのモデルから、前記エクスターナルに関連す る前記リソースに対する前記コンポーネントの前記実行の前記効果を求める過程 とを有することを特徴とする請求項18に記載の方法。 20.前記リソース状態が前記有効な状態の何れでもないことをユーザに通知す る過程を更に有することを特徴とする請求項12に記載の方法。 21.前記リソース状態に対するその効果が、前記有効な状態の何れでもない新 たなリソース状態への遷移を引き起こす効果である前記ステートメントを、ユー ザに対して特定する過程とを更に有することを特徴とする請求項12に記載の方 法。 22.エクスターナルを含む電子計算機用プログラムのコンポーネントの振る舞 いのモデル化方法であって、 (a)前記エクスターナルに対して、エクスターナル状態を含む1つ 若しくは複数の有効な状態を定義する過程と、 (b)前記コンポーネントの1つ若しくは複数のステートメントを有する制御 流れ経路を通過する過程と、 (c)前記1つまたは複数のステートメントの各々に対して、(1)前記ステ ートメントの実行が、前記エクスターナルの前記エクスターナル状態に対する効 果を有するか否かを判定する過程と、(2)前記効果に基づいて前記エクスター ナル状態から前記エクスターナル状態の新たなエクスターナル状態への遷移をモ デル化する過程とを実行する過程と、 (d)前記エクスターナルに対する前記コンポーネントの前記ステートメント の共通の効果を表すモデルを構築する過程とを有することを特徴とする電子計算 機用プログラムのコンポーネントの振る舞いのモデル化方法。 23.前記通過する過程が、 前記1つ若しくは複数のステートメントの内の選択されたステートメントが、 述語の値に基づいて前記制御流れ経路の一部を決定するか否かを判定する過程と 、 前記制御流れ経路を決定するために、前記述語を評価する過程とを有すること を特徴とする請求項22に記載の方法。 24.前記述語を評価する過程が、 前記述語の前記値が未知の値であるか否かを判定する過程と、 前記述語に想定した値を代入する過程とを有することを特徴とする請求項23 に記載の方法。 25.前記述語を評価する前記過程が、 前記想定した値から前記リソースの前記状態に関する情報を推論する過程を更 に有することを特徴とする請求項24に記載の方法。 26.前記述語を評価する前記過程が、 前記想定した値から、前記述語の1つ若しくは複数のコンポーネントの各々の 値を推論する過程を更に有することを特徴とする請求項24に記載の方法。 27.前記通過する過程が、 前記1つ若しくは複数のステートメントのうちの第2の選択されたステートメ ントが、前記第1の述語の前記1つ若しくは複数の要素を有する第2の述語の第 2の値に基づいて前記制御流れ経路の第2の部分を決定するか否かを判定する過 程と、 前記第1の述語の前記1つ若しくは複数の要素の前記推論された各々の値を用 いて、前記制御流れ経路の前記第2の部分を決定するために、前記第2の述語を 評価する過程とを更に有することを特徴とする請求項26に記載の方法。 28.前記述語を評価する前記過程が、 前記想定した値から、前記エクスターナルの前記状態に関する情報を推論する 過程を更に有することを特徴とする請求項24に記載の方法。 29.前記過程(C)の前記過程(1)が、 前記ステートメントが、呼び出されたコンポーネントに対する呼び出しである か否かを判定する過程と、 前記ステートメントが呼び出されたコンポーネントに対する呼び出しである場 合、前記リソースの前記リソース状態に対する前記呼び出されたコンポーネント の前記効果を評価するために、前記呼び出されたコンポーネントの実行をエミュ レートする過程とを有することを特徴とする請求項22に記載の方法。 30.前記呼び出されたコンポーネントの実行をエミュレートする前記過程が、 前記リソースが、前記呼び出されたコンポーネントのエクスターナル に関連しているか否かを判定する過程と、 前記呼び出されたコンポーネントのモデルから、前記エクスターナルに関連す る前記リソースに対する前記コンポーネントの実行の前記効果を求める過程とを 有することを特徴とする請求項29に記載の方法。 31.(e)1つ若しくは複数のステートメントの第2の集合を有する第2の制 御流れ経路を通過する過程と、 (f)前記1つ若しくは複数のステートメントからなる第2の集合の各々のステ ートメントに対し、(1)前記ステートメントの実行が、前記エクスターナルの 前記エクスターナル状態に対する効果を有するか否かを判定する過程と、(2) 前記効果に基づき、前記エクスターナル状態から前記エスクターナル状態の第2 の新たなエクスターナル状態への遷移をモデル化する過程とを実行する過程と、 (g)前記第1の新たなエクスターナル状態と前記第2の新たなエタスターナ ル状態とから、前記エスクターナルの組合せエクスターナル状態を形成する過程 とを更に有することを特徴とする請求項22に記載の方法。 32.前記通過する過程が、 前記1つ若しくは複数のステートメントのうちの選択されたステートメントが 、述語の値に基づいて前記第2の制御流れ経路の一部を決定するか否かを判定す る過程と、 前記第2の制御流れ経路を決定するために、前記述語を評価する過程とを有す ることを特徴とする請求項31に記載の方法。 33.前記述語を評価する過程が、 前記述語の前記値が未知の値であるか否かを判定する過程と、 前記述語に想定した値を代入する過程を有することを特徴とする請求項32に 記載の方法。 34.前記述語を評価する前記過程が、 前記想定した値から前記リソースの前記状態に関する情報を推論する過程を更 に有することを特徴とする請求項33に記載の方法。 35.前記述語を評価する過程が、 前記想定した値から、前記述語の1つ若しくは複数の要素の各々の値を推論す る過程を更に有することを特徴とする請求項33に記載の方法。 36.前記述語を評価する過程が、 前記想定した値から、前記エクスターナルの前記状態に関する情報を推論する 過程を更に有することを特徴とする請求項33に記載の方法。 37.前記通過する過程が、 前記1つ若しくは複数のステートメントの第2の選択されたステートメントが 、前記第1の述語の前記1つ若しくは複数の要素を有する第2の述語の第2の値 に基づいて前記制御流れ経路の第2の部分を決定するか否かを判定する過程と、 前記第1の述語の前記1つ若しくは複数の要素の前記推論された各々の値を用 いて、前記制御流れ経路の前記第2の部分を決定するために、前記第2の述語を 評価する過程を更に有することを特徴とする請求項35に記載の方法。 38.前記過程(f)の前記過程(1)が、 前記ステートメントが、呼び出されたコンポーネントに対する呼び出しである か否かを判定する過程と、 前記ステートメントが前記呼び出されたコンポーネントに対する呼び出しであ る場合、前記リソースの前記リソース状態に対する前記呼び出されたコンポーネ ントに対する前記効果を評価するために、前記呼び出されたコンポーネントの実 行をエミュレートする過程とを有することを特徴とする請求項31に記載の方法 。 39.前記呼び出されたコンポーネントの実行をエミュレートする過程が、 前記リソースが、前記呼び出されたコンポーネントのエクスターナルと関連す るか否かを判定する過程と、 前記呼び出されたコンポーネントのモデルから、前記エクスターナルと関連す る前記リソースに対する前記コンポーネントの実行の前記効果を求める過程とを 有することを特徴とする請求項38に記載の方法。 40.前記エクスターナルの前記組合せ状態から、前記コンポーネントの前記振 る舞いのモデルを導き出す過程を更に有することを特徴とする請求項31に記載 の方法。 41.前記コンポーネントの前記振る舞いの前記モデル内に、前記エクスターナ ルの前記状態の1つ若しくは複数の遷移を指示する情報を含める過程を更に有す ることを特徴とする請求項40に記載の方法。 42.前記エクスターナルに対する前記第1のコンポーネントの実行の効果を決 定するために、前記第1のコンポーネントへの呼び出しを含む前記電子計算機用 プログラムの呼び出しコンポーネントを分析する間に、前記モデルを用いる過程 を更に有することを特徴とする請求項22に記載の方法。 43.リソースの利用を指示する電子計算機用プログラムのコンポーネントの振 る舞いをモデル化する方法であって、 (a)リソース状態を有する前記リソースに対する1つ若しくは複数の有効な 状態を定義する過程と、 (b)前記コンポーネントの1つ若しくは複数のステートメントを有する制御 流れ経路を通過する過程と、 (c)前記1つ若しくは複数のステートメントの各々に対して、(1)前記ス テートメントの前記実行が、前記リソースの前記リソース状態に 対する効果を有するか否かを判定する過程と、(2)前記効果に基づいて前記リ ソース状態から前記リソース状態の新たなリソース状態への遷移をモデル化する 過程とを実行する過程と、 (d)前記リソースに対する前記コンポーネントの前記ステートメントの共通 の効果を表すモデルを構築する過程とを有することを特徴とする方法。 44.前記通過する過程が、 前記1つ若しくは複数のステートメントの選択されたステートメントが、述語 の値に基づいて前記制御流れ経路の一部を決定するか否かを判定する過程と、 前記制御流れ経路を決定するために、前記述語を評価する過程とを有すること を特徴とする請求項43に記載の方法。 45.前記評価する過程が、 前記述語の前記値が未知の値であるか否かを判定する過程と、 前記述語に想定した値を代入する過程とを有することを特徴とする請求項44 に記載の方法。 46.前記述語を評価する過程が、 前記想定した値から、前記リソースの前記状態に関する情報を推論する過程を 更に有することを特徴とする請求項45に記載の方法。 47.前記述語を評価する過程が、 前記想定した値が、前記述語の前記1つ若しくは複数の要素の各々値を推論す る過程を更に有することを特徴とする請求項45に記載の方法。 48.前記通過する過程が、 前記1つ若しくは複数のステートメントのうちの第2の選択されたステートメ ントが、前記第1の述語の1つ若しくは複数の前記要素を第2の述語の第2の値 に基づいて前期制御流れ経路の第2の部分を決定する か否かを判定する過程と、 前記第1の述語の前記1つ若しくは複数の要素の前記推論された各々の値を用 いて、前記制御流れ経路の前記第2の部分を決定するために、前記第2の述語を 評価する過程とを更に有することを特徴とする請求項47に記載の方法。 49.前記過程(c)の前記過程(1)が、 前記ステートメントが、前記呼び出されたコンポーネントに対する呼び出しで あるか否かを判定する過程と、 前記ステートメントが呼び出されたコンポーネントに対する呼び出しである場 合、前記リソースの前記リソース状態に対する前記呼び出されたコンポーネント の前記効果を評価するために、前記呼び出されたコンポーネントの実行をエミュ レートする過程とを有することを特徴とする請求項43に記載の方法。 50.前記呼び出されたコンポーネントの実行をエミュレートする過程が、 前記リソースが、呼び出されたコンポーネントのエクスターナルに関連するか 否かを判定する過程を、 前記呼び出されたコンポーネントのモデルから、前記エクスターナルと関連す る前記リソースに対する前記コンポーネントの実行の前記効果を決定する過程を 有することを特徴とする請求項49に記載の方法。 51.(e)1つ若しくは複数のステートメントの第2の集合を有する第2の制 御流れ経路を通過する過程と、 (f)前記1つ若しくは複数のステートメントからなる前記第2の集合の各ス テートメントに対して、(1)前記リソースの前記リソース状態に対する前記ス テートメントの効果を評価する過程と、(2)前記効果に基づいて、前記リソー スのステートメントから前記リソースの第2 の新たなリソースのステートメントへの遷移をモデル化する過程とを実行する過 程と、 (g)前記第1の新たなリソースのステートメントと前記第2の新たなリソー スのステートメントとから、前記リソースの共通のリソースのステートメントを 形成する過程とを更に有することを特徴とする請求項43に記載の方法。 52.前記通過する過程が、 前記1つ若しくは複数のステートメントの選択されたステートメントが、述語 の値に基づいて前記制御流れ経路の一部を決定するか否かを判定する過程と、 前記制御流れ経路を決定するために、前記述語を評価する過程とを有すること を特徴とする請求項51に記載の方法。 53.前記述語を評価する過程が、 前記述語の前記値が未知の値であるか否かを判定する過程と、 前記述語に想定した値を代入する過程とを有することを特徴とする請求項52 に記載の方法。 54.前記述語を評価する前記過程が、 前記想定した値から前記リソースが前記状態に関する情報を推論する過程を更 に有することを特徴とする請求項53に記載の方法。 55.前記述語を評価する前記過程が、 前記想定した値から、前記述語の前記1つまたは複数の要素の各々の値を推論 する過程を更に有することを特徴とする請求項53に記載の方法。 56.前記通過する過程が、 前記1つまたは複数のステートメントのうちの第2の選択されたステートメン トが、前記第1の述語の前記1つまたは複数の要素を有する第 2の述語の第2の値に基づいて、前記制御流れ経路の第2の部分を決定するか否 かを判定する過程と、 前記第1の述語の前記1つまたは複数の要素の前記推論されたおのおのの値を 用いて、前記制御流れ経路の前記第2の部分を決定するために、前記第2の述語 を評価する過程とを更に有することを特徴とする請求項55に記載の方法。 57.前記過程(g)の前記過程(1)が、 前記ステートメントが、呼び出されたコンポーネントに対する呼び出しであ るか否かを判定する過程と、 前記ステートメントが呼び出されたコンポーネントに対する呼び出しである場 合、前記リソースの前記リソース状態に対する前記呼び出されたコンポーネント の前記効果を評価するために、前記呼び出されたコンポーネントの実行をエミュ レートする過程を有することを特徴とする請求項51に記載の方法。 58.前記呼び出されたコンポーネントの実行をエミュレートする過程が 前記リソースが前記呼び出されたコンポーネントのエクスターナルと関連して いるか否かを判定する過程と、 前記呼び出されたコンポーネントのモデルから、前記エクスターナルの関連す る前記リソースに対する前記コンポーネントの前記効果を判定する過程とを有す ることを特徴とする請求項57に記載の方法。 59.前記リソースの前記組み合わせ状態から、前記コンポーネントの前記振る 舞いのモデルを導き出す過程を更に有することを特徴とする請求項51に記載の 方法。 60.前記コンポーネントの前記振る舞いの前記モデルに、前記リソースの前記 状態の1つまたは複数の遷移を指示する情報を包含させる過程 を更に有することを特徴とする請求項59に記載の方法。 61.前記リソースの前記第1のコンポーネントの実行の前記効果を求めるため に、前記第1のコンポーネントに対する呼び出しを含む前記電子計算機用プログ ラムのコーリングコンポーネントを解析する間に、前記モデルを用いる過程を更 に有することを特徴とする請求項43に記載の方法。 62.電子計算機用プログラムのコーリングコンポーネントの実行の項目に対す る効果の解析方法であって、 前記コーリングコンポーネントが、エクスターナルからなる前記項目を有する 呼び出されたコンポーネントに対する呼び出しを含むか否かを判定する過程と、 前記呼び出されたコンポーネントの前記実行の前記呼び出されたコンポーネン トの1つ若しくは複数の前記エクスターナルに対する効果を記述しているコンポ ーネントモデルから、前記呼び出されたコンポーネントの実行の前記項目の前記 効果を判定する過程とを有することを特徴とする電子計算機用プログラムのコー リングコンポーネントの実行の項目に対する効果の解析方法。 63.前記項目が状態を有し、 前記呼び出されたコンポーネントの実行の前記項目に対する効果を判定する過 程が、前記呼び出されたコンポーネントによって指示された前記項目の前記状態 の変化を判定する過程を有することを特徴とする請求項62に記載の方法。 64.前記呼び出されたコンポーネントが、前記項目の前記状態に実施されるべ き1つ若しくは複数のオペレーションを特定することによって、前記項目の前記 状態の変化を指示することを特徴とする請求項63に記載の方法。 65.前記呼び出されたコンポーネントが、有効な状態から無効な状態への前記 項目の前記状態の遷移を指示しているか否かを判定する過程を更に有することを 特徴とする請求項63に記載の方法。 66.前記呼び出されたコンポーネントが、第1の有効な状態から第2の有効な 状態への遷移以外の前記項目の前記状態の遷移を指示しているか否かを判定する 過程を更に有することを特徴とする請求項63に記載の方法。 67.電子計算機用プログラムのコンポーネントのプログラミングエラーの検出 方法であって、 前記コンポーネントの1つ若しくは複数のステートメントによってその利用が 指示されているリソースが、1つ若しくは複数のステートメントの何れかの中に あるか否かを検出する過程と、 前記コンポーネントが、前記リソースが前記1つ若しくは複数のステートメン トの特定のステートメントのなかにあることを要求する第1のステートメントを 含むことを検知し、かつ、前記第1のステートメントが、前記コンポーネントを 通過する制御流れ経路において、その実行より前記リソースが前記特定の状態に あることが確実となる第2のステートメントによって先行されていないことを検 知する過程とを有することを特徴とする電子計算機用プログラムのコンポーネン トのプログラミングエラーの検出方法。 68.前記1つ若しくは複数の状態が、確定的にアロケートされた状態と、確定 的にアロケートされていない状態とを有することを特徴とする請求項67に記載 の方法。 69.前記特定の状態が、前記確定的にアロケートされた状態からなることを特 徴とする請求項68に記載の方法。 70.電子計算機用プログラムのコンポーネントのリソースのリークの 検知方法であって、前記コンポーネントは、1つ若しくは複数のリソースの利用 を指示するステートメントと、1つ若しくは複数のエクスターナルとを含み、 前記検出方法が、 前記1つ若しくは複数のリソースのうちのいずれのリソースが前記1つ若しく は複数のエクスターナルの何れかによって到達されるか否かを判定する過程と、 前記エクスターナルによって到達されない前記リソースが、前記コンポーネン トの実行の終了時にアロケートさけた状態にあるか否かを判定する過程とを有す ることを特徴とする方法。 71.前記1つ若しくは複数のリソースのいずれが到達されるかを判定する前記 過程が、 前記コンポーネントのエクスターナルが、前記リソースへ到達するための項目 を含む集群に含まれているか否かを判定する過程を有することを特徴とする請求 項70に記載の方法。 72.電予計算機用プログラムのコンポーネントのデータフロー解析の実行方法 であって、 前記コンポーネントのステートメントが、述語の値に基づいて制御を遷移させ る1つ若しくは複数の要素を有する条件付き分岐ステートメントからなるか否か を判定する過程と、 前記述語が第1の値を有すると仮定する過程と、 前記第1の値から、前記述語の前記1つ若しくは複数の要素のおのおのの値を 推論する過程とを有することを特徴とする方法。 73.前記述語の前記第1の値に基づいて、前記コンポーネントを通って、前記 条件付けられた分岐ステートメントを有する制御流れ経路を通過させる過程を更 に有することを特徴とする請求項72に記載の方法。 74.前記コンポーネントの第2のステートメントが、前記第1の述語の前記1 つ若しくは複数の要素を含むと共に第2の述語の第2の値に基づいて制御を遷移 させる第2の条件付けられた分岐ステートメントであるか否かを判定する過程と 、 前記第1の述語の前記1つ若しくは複数の要素の前記推論されたおのおのの値 から前記第2の値を求める過程とを更に有することを特徴とする請求項72に記 載の方法。 75.電子計算機用プログラムの1つ若しくは複数のステートメントを有するコ ンポーネントのプログラミングエラーを検出するリソースチェッカであって、 リソース状態を有するリソースに対して1つ若しくは複数の有効な状態を定義 するリソース振る舞いモデルと、 前記1つ若しくは複数のステートメントを通る制御流れ経路を通過すると共に 前記1つ若しくは複数のステートメントのおのおのが前記リソースの前記リソー ス状態に対する各々の効果を有するか否かを判定する実行エンジンと、 前記1つ若しくは複数のステートメントの各々の前記効果に基づく前記リソー ス状態から新たなリソース状態への遷移をモデル化し、かつ前記新たな状態が前 記有効な状態のうちのいずれかの状態であるか否かを検出する状態マシンとを有 することを特徴とするリソースチェッカ。 76.前記コンポーネントが関数からなることを特徴とする請求項75に記載の リソースチェッカ。 77.前記実行エンジンが、前記1つ若しくは複数のステートメントのうちの選 択されたステートメントが述語の値に基づく前記制御流れ経路の一部を決定する か否かを判定し、かつ前記制御流れ経路を決定するた めに前記述語を評価することを特徴とする請求項75に記載のリソースチェッカ 。 78.前記実行エンジンが、前記述語の前記値が未知の値であるか否かを判定し 、かつ前記述語に想定した値を代入することによって前記述語を評価することを 特徴とする請求項77に記載のリソースチェッカ。 79.前記実行エンジンが、前記想定した値から、前記リソースの前記状態に関 する情報を推論することを特徴とする請求項78に記載のリソースチェッカ。 80.前記実行エンジンが、前記想定した値から、前記述語の1つ若しくは複数 の要素の各々の値を推論することを特徴とする請求項78に記載のリソースチェ ッカ。 81.前記実行エンジンが、前記1つ若しくは複数のステートメントの第2の選 択されたステートメントが前記第1の述語の1つ若しくは複数の前記要素を有す る第2の述語の第2の値に基づいて前記制御フローバスの第2の部分を決定して いるか否かを判定して前記制御流れ経路を通過し、 前記実行エンジンが、前記第1の述語の前記1つ若しくは複数の要素の前記推 論された各々の値を用いて前記制御流れ経路の前記第2の部分を決定するために 前記第2の述語を評価することを特徴とする請求項80に記載のリソースチェッ カ。 82.前記実行エンジンが、前記1つ若しくは複数のステートメントのうちの選 択されたステートメントが呼び出しされるコンポーネントに対する呼び出しであ るか否かを判定し、 前記実行エンジンが、前記選択されたステートメントが呼び出されたコンポー ネントに対する呼び出しからなる場合に、前記リソースの前記リソース状態に対 する前記呼び出されたコンポーネントの前記効果を評 価するために前記呼び出されたコンポーネントの実行をエミュレートすることを 特徴とする請求項75に記載のリソースチェッカ。 83.前記実行エンジンが、前記リソースが前記呼び出されたコンポーネントの エクスターナルと関係しているか否かを判定し、かつ前記呼び出されたコンポー ネントのモデルから前記リソースの前記エクスターナルと関係する前記コンポー ネントの実行の効果を求めることによって、前記呼び出されたコンポーネントの 実行をエミュレートすることを特徴とする請求項82に記載のリソースチェッカ 。
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US08/289,148 US5694539A (en) | 1994-08-10 | 1994-08-10 | Computer process resource modelling method and apparatus |
| US289,148 | 1994-08-10 | ||
| PCT/US1995/009691 WO1996005556A1 (en) | 1994-08-10 | 1995-08-09 | Computer process resource modelling method and apparatus |
Related Child Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2006159153A Division JP4430043B2 (ja) | 1994-08-10 | 2006-06-07 | プログラムコンポーネントのエラーをチェックするための、コンピュータにおける方法 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH10509258A true JPH10509258A (ja) | 1998-09-08 |
| JP4213203B2 JP4213203B2 (ja) | 2009-01-21 |
Family
ID=23110253
Family Applications (2)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP50738496A Expired - Fee Related JP4213203B2 (ja) | 1994-08-10 | 1995-08-09 | コンピュータプロセスのリソースのモデル化方法及び装置 |
| JP2006159153A Expired - Fee Related JP4430043B2 (ja) | 1994-08-10 | 2006-06-07 | プログラムコンポーネントのエラーをチェックするための、コンピュータにおける方法 |
Family Applications After (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2006159153A Expired - Fee Related JP4430043B2 (ja) | 1994-08-10 | 2006-06-07 | プログラムコンポーネントのエラーをチェックするための、コンピュータにおける方法 |
Country Status (8)
| Country | Link |
|---|---|
| US (5) | US5694539A (ja) |
| EP (1) | EP0775342B1 (ja) |
| JP (2) | JP4213203B2 (ja) |
| AT (1) | ATE182223T1 (ja) |
| AU (1) | AU3235795A (ja) |
| CA (2) | CA2197071C (ja) |
| DE (1) | DE69510801T2 (ja) |
| WO (1) | WO1996005556A1 (ja) |
Families Citing this family (120)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6513154B1 (en) | 1996-10-21 | 2003-01-28 | John R. Porterfield | System and method for testing of computer programs in programming effort |
| US5920716A (en) * | 1996-11-26 | 1999-07-06 | Hewlett-Packard Company | Compiling a predicated code with direct analysis of the predicated code |
| US5822589A (en) * | 1996-12-06 | 1998-10-13 | Hewlett-Packard Company | Method for locating errors in a computer program |
| US5872957A (en) * | 1997-05-01 | 1999-02-16 | International Business Machines Corporation | Method for flexible simulation modeling of multi-component systems |
| US6222537B1 (en) * | 1997-07-29 | 2001-04-24 | International Business Machines Corporation | User interface controls for a computer system |
| US6282701B1 (en) | 1997-07-31 | 2001-08-28 | Mutek Solutions, Ltd. | System and method for monitoring and analyzing the execution of computer programs |
| US6202199B1 (en) | 1997-07-31 | 2001-03-13 | Mutek Solutions, Ltd. | System and method for remotely analyzing the execution of computer programs |
| JP3199013B2 (ja) * | 1998-01-26 | 2001-08-13 | 日本電気株式会社 | 言語処理方法及び言語処理装置並びに言語処理プログラムを記録した記憶媒体 |
| US6104873A (en) * | 1998-02-03 | 2000-08-15 | International Business Machines Corporation | Use of language instructions and functions across multiple processing sub-environments |
| US5995752A (en) * | 1998-02-03 | 1999-11-30 | International Business Machines Corporation | Use of language instructions and functions across multiple processing sub-environments |
| CA2240584C (en) * | 1998-06-12 | 2002-02-12 | Ibm Canada Limited - Ibm Canada Limitee | Compile-time data dependency verification |
| US6378088B1 (en) * | 1998-07-14 | 2002-04-23 | Discreet Logic Inc. | Automated test generator |
| US6189116B1 (en) * | 1998-07-14 | 2001-02-13 | Autodesk, Inc. | Complete, randomly ordered traversal of cyclic directed graphs |
| US6219805B1 (en) * | 1998-09-15 | 2001-04-17 | Nortel Networks Limited | Method and system for dynamic risk assessment of software systems |
| WO2000023863A2 (en) * | 1998-10-16 | 2000-04-27 | Computer Associates Think, Inc. | Determining differences between two or more metadata models |
| US7039495B1 (en) * | 1998-12-08 | 2006-05-02 | Advance Micro Devices, Inc. | Management of multiple types of empty carriers in automated material handling systems |
| US6321378B1 (en) * | 1998-12-10 | 2001-11-20 | International Business Machines Corporation | Automated code replication during application development |
| GB9828794D0 (en) * | 1998-12-29 | 1999-02-17 | Sgs Thomson Microelectronics | Generation of a system model |
| US6782530B1 (en) * | 1999-04-05 | 2004-08-24 | Microsoft Corporation | Method of ranking messages generated in a computer system |
| FR2797963B1 (fr) * | 1999-08-23 | 2002-11-29 | Trusted Logic | Protocole de gestion, procede de verification et de transformation d'un fragment de programme telecharge et systemes correspondants |
| US9916134B2 (en) * | 1999-10-05 | 2018-03-13 | Dietrich Charisius | Methods and systems for accessing distributed computing components through the internet |
| US7734457B2 (en) | 1999-10-16 | 2010-06-08 | Computer Associates Think, Inc. | Method and system for generating dynamic comparison models |
| US6539539B1 (en) * | 1999-11-16 | 2003-03-25 | Lucent Technologies Inc. | Active probes for ensuring software package compatibility |
| US7058928B2 (en) | 1999-12-23 | 2006-06-06 | Identify Software Ltd. | System and method for conditional tracing of computer programs |
| US7024661B2 (en) * | 2000-01-07 | 2006-04-04 | Hewlett-Packard Development Company, L.P. | System and method for verifying computer program correctness and providing recoverable execution trace information |
| US6701513B1 (en) | 2000-01-14 | 2004-03-02 | Measurement Computing Corporation | Program-development environment for use in generating application programs |
| US6425120B1 (en) * | 2000-01-14 | 2002-07-23 | Softwire Technology Llc | Repeating program object for use with a graphical program-development system |
| US6684385B1 (en) | 2000-01-14 | 2004-01-27 | Softwire Technology, Llc | Program object for use in generating application programs |
| US7082599B1 (en) | 2000-01-14 | 2006-07-25 | Measurement Computing Corporation | Method and apparatus for detecting and resolving circularflow paths in graphical programming systems |
| CA2297994A1 (en) * | 2000-02-04 | 2001-08-04 | Ibm Canada Limited-Ibm Canada Limitee | Automated testing computer system components |
| US6996557B1 (en) * | 2000-02-15 | 2006-02-07 | International Business Machines Corporation | Method of optimizing SQL queries where a predicate matches nullable operands |
| US20020087949A1 (en) | 2000-03-03 | 2002-07-04 | Valery Golender | System and method for software diagnostics using a combination of visual and dynamic tracing |
| US6763497B1 (en) | 2000-04-26 | 2004-07-13 | Microsoft Corporation | Method and apparatus for displaying computer program errors as hypertext |
| JP2001343967A (ja) * | 2000-05-31 | 2001-12-14 | Konami Co Ltd | 表示制御方法、ゲーム機、記録媒体 |
| US20030121027A1 (en) * | 2000-06-23 | 2003-06-26 | Hines Kenneth J. | Behavioral abstractions for debugging coordination-centric software designs |
| US20030005407A1 (en) * | 2000-06-23 | 2003-01-02 | Hines Kenneth J. | System and method for coordination-centric design of software systems |
| US7219332B2 (en) * | 2000-07-07 | 2007-05-15 | Microsoft Corporation | Configuring software components(merge) with transformation component using configurable and non-configurable data elements |
| US7120902B2 (en) * | 2000-12-04 | 2006-10-10 | Hewlett-Packard Development Company, L.P. | Method and apparatus for automatically inferring annotations |
| US8312435B2 (en) | 2000-12-26 | 2012-11-13 | Identify Software Ltd. (IL) | System and method for conditional tracing of computer programs |
| US20040015816A1 (en) * | 2001-01-05 | 2004-01-22 | Hines Kenneth Joseph | Coordination synthesis for software systems |
| US7284274B1 (en) * | 2001-01-18 | 2007-10-16 | Cigital, Inc. | System and method for identifying and eliminating vulnerabilities in computer software applications |
| US7539747B2 (en) | 2001-03-14 | 2009-05-26 | Microsoft Corporation | Schema-based context service |
| US7136859B2 (en) * | 2001-03-14 | 2006-11-14 | Microsoft Corporation | Accessing heterogeneous data in a standardized manner |
| US7024662B2 (en) | 2001-03-14 | 2006-04-04 | Microsoft Corporation | Executing dynamically assigned functions while providing services |
| US7302634B2 (en) | 2001-03-14 | 2007-11-27 | Microsoft Corporation | Schema-based services for identity-based data access |
| US7284271B2 (en) | 2001-03-14 | 2007-10-16 | Microsoft Corporation | Authorizing a requesting entity to operate upon data structures |
| US6817014B2 (en) * | 2001-04-11 | 2004-11-09 | Hewlett-Packard Development Company, L.P. | Analysis of executable program code using compiler-generated function entry points and endpoints with other sources of function entry points and endpoints |
| US6842891B2 (en) * | 2001-09-11 | 2005-01-11 | Sun Microsystems, Inc. | Dynamic attributes for distributed test framework |
| US6910158B2 (en) * | 2001-10-01 | 2005-06-21 | International Business Machines Corporation | Test tool and methods for facilitating testing of duplexed computer functions |
| KR100409028B1 (ko) * | 2001-10-29 | 2003-12-06 | 전흥재 | 면역인자흡수체가 그라프트된 백혈구 제거필터 제조방법및 이에 의해 제조된 필터 |
| US7213175B2 (en) * | 2002-01-09 | 2007-05-01 | Microsoft Corporation | Methods and systems for managing an application's relationship to its run-time environment |
| FR2838205B1 (fr) * | 2002-04-09 | 2006-08-18 | Canon Kk | Procede de detection d'erreurs dans un programme informatique |
| US6862682B2 (en) * | 2002-05-01 | 2005-03-01 | Testquest, Inc. | Method and apparatus for making and using wireless test verbs |
| US20030208542A1 (en) * | 2002-05-01 | 2003-11-06 | Testquest, Inc. | Software test agents |
| US6898704B2 (en) * | 2002-05-01 | 2005-05-24 | Test Quest, Inc. | Method and apparatus for making and using test verbs |
| US9886309B2 (en) | 2002-06-28 | 2018-02-06 | Microsoft Technology Licensing, Llc | Identity-based distributed computing for device resources |
| US6957367B2 (en) * | 2002-08-30 | 2005-10-18 | Hewlett-Packard Development Company L.P. | System and method for controlling activity of temporary files in a computer system |
| US7386839B1 (en) | 2002-11-06 | 2008-06-10 | Valery Golender | System and method for troubleshooting software configuration problems using application tracing |
| US7051322B2 (en) * | 2002-12-06 | 2006-05-23 | @Stake, Inc. | Software analysis framework |
| US7401057B2 (en) | 2002-12-10 | 2008-07-15 | Asset Trust, Inc. | Entity centric computer system |
| US8032866B1 (en) | 2003-03-27 | 2011-10-04 | Identify Software Ltd. | System and method for troubleshooting runtime software problems using application learning |
| US20040230959A1 (en) * | 2003-05-14 | 2004-11-18 | Vick Paul A. | Is not operator |
| US7343589B2 (en) * | 2003-06-18 | 2008-03-11 | Microsoft Corporation | Declarative state space reduction in a transactional messaging language |
| US7818729B1 (en) | 2003-09-15 | 2010-10-19 | Thomas Plum | Automated safe secure techniques for eliminating undefined behavior in computer software |
| US7810080B2 (en) * | 2003-09-15 | 2010-10-05 | Thomas Plum | Automated safe secure techniques for eliminating undefined behavior in computer software |
| WO2005029241A2 (en) * | 2003-09-15 | 2005-03-31 | Plum Thomas S | Automated safe secure techniques for eliminating |
| US7856624B2 (en) * | 2003-09-15 | 2010-12-21 | Thomas Plum | Automated safe secure techniques for eliminating undefined behavior in computer software |
| US7421680B2 (en) * | 2003-09-22 | 2008-09-02 | Microsoft Corporation | Persisted specifications of method pre-and post-conditions for static checking |
| JP2005122560A (ja) * | 2003-10-17 | 2005-05-12 | Fujitsu Ltd | デッドロック事前検出プログラム |
| US7505952B1 (en) * | 2003-10-20 | 2009-03-17 | The Board Of Trustees Of The Leland Stanford Junior University | Statistical inference of static analysis rules |
| US7610584B2 (en) * | 2004-01-02 | 2009-10-27 | International Business Machines Corporation | Method, system, and product for defining and managing provisioning states for resources in provisioning data processing systems |
| US20080109785A1 (en) * | 2004-01-16 | 2008-05-08 | Bailey Bendrix L | Graphical Program Having Graphical and/or Textual Specification of Event Handler Procedures for Program Objects |
| US7793271B2 (en) * | 2004-06-17 | 2010-09-07 | State Of Oregon Acting By And Through The State Board Of Higher Education On Behalf Of Portland State University | Bi-directional product development process simulation |
| US7155653B2 (en) * | 2004-08-02 | 2006-12-26 | Comcast Cable Holdings, Llc | System and method for testing electronic device performance |
| US20060136877A1 (en) * | 2004-12-22 | 2006-06-22 | International Business Machines Corporation | Method, system and program product for capturing a semantic level state of a program |
| US9152531B2 (en) * | 2005-02-18 | 2015-10-06 | Green Hills Sofware, Inc. | Post-compile instrumentation of object code for generating execution trace data |
| US8266608B2 (en) * | 2005-02-18 | 2012-09-11 | Green Hills Software, Inc. | Post-compile instrumentation of object code for generating execution trace data |
| US7549144B2 (en) * | 2005-02-22 | 2009-06-16 | Microsoft Corporation | Custom API modeling for source code static analysis simulator |
| US8713025B2 (en) | 2005-03-31 | 2014-04-29 | Square Halt Solutions, Limited Liability Company | Complete context search system |
| WO2007022454A2 (en) | 2005-08-18 | 2007-02-22 | The Trustees Of Columbia University In The City Of New York | Systems, methods, and media protecting a digital data processing device from attack |
| WO2007050667A2 (en) | 2005-10-25 | 2007-05-03 | The Trustees Of Columbia University In The City Of New York | Methods, media and systems for detecting anomalous program executions |
| US7707553B2 (en) * | 2005-12-08 | 2010-04-27 | International Business Machines Corporation | Computer method and system for automatically creating tests for checking software |
| US9489290B1 (en) | 2005-12-30 | 2016-11-08 | The Mathworks, Inc. | Scheduling tests based on a valuation system |
| US8209667B2 (en) * | 2006-01-11 | 2012-06-26 | International Business Machines Corporation | Software verification using hybrid explicit and symbolic model checking |
| US20070174823A1 (en) * | 2006-01-25 | 2007-07-26 | Microsoft Corporation | Compile-time interpretable code error detection |
| US8321666B2 (en) * | 2006-08-15 | 2012-11-27 | Sap Ag | Implementations of secure computation protocols |
| WO2008055156A2 (en) | 2006-10-30 | 2008-05-08 | The Trustees Of Columbia University In The City Of New York | Methods, media, and systems for detecting an anomalous sequence of function calls |
| US8613080B2 (en) | 2007-02-16 | 2013-12-17 | Veracode, Inc. | Assessment and analysis of software security flaws in virtual machines |
| WO2008137223A1 (en) * | 2007-05-07 | 2008-11-13 | Nec Laboratories America, Inc. | Accelerating model checking via synchrony |
| US8799856B2 (en) * | 2007-06-12 | 2014-08-05 | International Business Machines Corporation | System and method for automatically declaring variables |
| GB2451253A (en) * | 2007-07-24 | 2009-01-28 | Ezurio Ltd | Indicating the position of a next declaration statement in object code when declaring a variable object code |
| US8689195B2 (en) * | 2008-06-03 | 2014-04-01 | International Business Machines Corporation | Identifying structured data types as requiring designated initializers |
| FR2947609B1 (fr) | 2009-07-06 | 2015-05-15 | Permaswage | Dispositif de raccordement pour canalisations et procede de raccordement associe |
| US8578341B2 (en) | 2009-09-11 | 2013-11-05 | International Business Machines Corporation | System and method to map defect reduction data to organizational maturity profiles for defect projection modeling |
| US8495583B2 (en) | 2009-09-11 | 2013-07-23 | International Business Machines Corporation | System and method to determine defect risks in software solutions |
| US8893086B2 (en) | 2009-09-11 | 2014-11-18 | International Business Machines Corporation | System and method for resource modeling and simulation in test planning |
| US8527955B2 (en) | 2009-09-11 | 2013-09-03 | International Business Machines Corporation | System and method to classify automated code inspection services defect output for defect analysis |
| US8539438B2 (en) | 2009-09-11 | 2013-09-17 | International Business Machines Corporation | System and method for efficient creation and reconciliation of macro and micro level test plans |
| US10235269B2 (en) | 2009-09-11 | 2019-03-19 | International Business Machines Corporation | System and method to produce business case metrics based on defect analysis starter (DAS) results |
| US8402444B2 (en) * | 2009-10-09 | 2013-03-19 | Microsoft Corporation | Program analysis through predicate abstraction and refinement |
| US8689180B2 (en) * | 2009-11-03 | 2014-04-01 | International Business Machines Corporation | Systems and methods for resource leak detection |
| US8595707B2 (en) * | 2009-12-30 | 2013-11-26 | Microsoft Corporation | Processing predicates including pointer information |
| US8533695B2 (en) * | 2010-09-28 | 2013-09-10 | Microsoft Corporation | Compile-time bounds checking for user-defined types |
| US8839197B2 (en) * | 2010-10-11 | 2014-09-16 | International Business Machines Corporation | Automated analysis of composite applications |
| US8762952B2 (en) | 2010-12-14 | 2014-06-24 | Bmc Software, Inc. | Recording method calls that led to an unforeseen problem |
| US8745598B2 (en) | 2010-12-14 | 2014-06-03 | Bmc Software, Inc. | Running injected code prior to execution of an application |
| RU2014112261A (ru) | 2011-09-15 | 2015-10-20 | Зе Трастис Оф Коламбия Юниверсити Ин Зе Сити Оф Нью-Йорк | Системы, способы и носители информации для обнаружения полезных нагрузок возвратно-ориентированного программирования |
| US9286063B2 (en) | 2012-02-22 | 2016-03-15 | Veracode, Inc. | Methods and systems for providing feedback and suggested programming methods |
| US8909990B2 (en) | 2012-08-04 | 2014-12-09 | Microsoft Corporation | Historical software diagnostics using lightweight process snapshots |
| CN102843236B (zh) * | 2012-09-12 | 2014-12-10 | 飞天诚信科技股份有限公司 | 一种动态口令的生成及认证方法与系统 |
| US10078575B2 (en) * | 2013-03-13 | 2018-09-18 | Microsoft Technology Licensing, Llc | Diagnostics of state transitions |
| US10289411B2 (en) | 2013-11-18 | 2019-05-14 | Microsoft Technology Licensing, Llc | Diagnosing production applications |
| US9632915B2 (en) * | 2014-10-29 | 2017-04-25 | Microsoft Technology Licensing, Llc. | Historical control flow visualization in production diagnostics |
| CN107656861B (zh) * | 2016-07-26 | 2020-06-02 | 龙芯中科技术有限公司 | 硬件抽象层调试方法和装置 |
| US9720785B1 (en) * | 2016-10-14 | 2017-08-01 | International Business Machines Corporation | Variable checkpointing in a streaming application that includes tuple windows |
| US9678837B1 (en) | 2016-10-14 | 2017-06-13 | International Business Machines Corporation | Variable checkpointing in a streaming application with one or more consistent regions |
| KR102322260B1 (ko) | 2017-05-18 | 2021-11-04 | 현대자동차 주식회사 | 하이브리드 자동차의 isg 시스템 |
| US12254343B2 (en) | 2018-11-21 | 2025-03-18 | Zoox, Inc. | Executable component interface and controller |
| US10678740B1 (en) * | 2018-11-21 | 2020-06-09 | Zoox, Inc. | Coordinated component interface control framework |
| CN112835560A (zh) * | 2021-03-04 | 2021-05-25 | 广州图创计算机软件开发有限公司 | Web多终端低代码智能软件开发平台 |
Family Cites Families (17)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4953084A (en) * | 1987-11-16 | 1990-08-28 | Hewlett-Packard Company | Method and apparatus using variable ranges to support symbolic debugging of optimized code |
| US5038348A (en) * | 1988-07-01 | 1991-08-06 | Sharp Kabushiki Kaisha | Apparatus for debugging a data flow program |
| US5253158A (en) * | 1990-04-23 | 1993-10-12 | Matsushita Electric Industrial Co., Ltd. | Apparatus for supporting the development of sequence software to be used in automated equipments, and method thereof |
| US5355469A (en) * | 1990-07-30 | 1994-10-11 | Delphi Data, A Division Of Sparks Industries, Inc. | Method for detecting program errors |
| US5313616A (en) * | 1990-09-18 | 1994-05-17 | 88Open Consortium, Ltd. | Method for analyzing calls of application program by inserting monitoring routines into the executable version and redirecting calls to the monitoring routines |
| US5293629A (en) * | 1990-11-30 | 1994-03-08 | Abraxas Software, Inc. | Method of analyzing computer source code |
| US5317740A (en) * | 1991-03-07 | 1994-05-31 | Digital Equipment Corporation | Alternate and iterative analysis of computer programs for locating translatable code by resolving callbacks and other conflicting mutual dependencies |
| US5193180A (en) * | 1991-06-21 | 1993-03-09 | Pure Software Inc. | System for modifying relocatable object code files to monitor accesses to dynamically allocated memory |
| US5517629A (en) * | 1992-08-26 | 1996-05-14 | Boland; R. Nick K. | Methods for analyzing computer program performance |
| US5559980A (en) * | 1993-03-18 | 1996-09-24 | Lucent Technologies Inc. | Method and apparatus for detecting references to deallocated memory in a dynamic memory allocation system |
| US5729676A (en) * | 1993-12-10 | 1998-03-17 | Nec Corporation | Method of generating data for evaluating programs |
| US5590329A (en) * | 1994-02-04 | 1996-12-31 | Lucent Technologies Inc. | Method and apparatus for detecting memory access errors |
| US5644709A (en) * | 1994-04-21 | 1997-07-01 | Wisconsin Alumni Research Foundation | Method for detecting computer memory access errors |
| US5613063A (en) * | 1994-07-01 | 1997-03-18 | Digital Equipment Corporation | Method and apparatus for checking validity of memory operations |
| US5615369A (en) * | 1994-07-25 | 1997-03-25 | Hewlett-Packard Company | Automated detection and correction of uninitialized variables |
| US5689712A (en) * | 1994-07-27 | 1997-11-18 | International Business Machines Corporation | Profile-based optimizing postprocessors for data references |
| US5943499A (en) * | 1996-11-27 | 1999-08-24 | Hewlett-Packard Company | System and method for solving general global data flow predicated code problems |
-
1994
- 1994-08-10 US US08/289,148 patent/US5694539A/en not_active Expired - Lifetime
-
1995
- 1995-08-09 JP JP50738496A patent/JP4213203B2/ja not_active Expired - Fee Related
- 1995-08-09 WO PCT/US1995/009691 patent/WO1996005556A1/en not_active Ceased
- 1995-08-09 AT AT95928700T patent/ATE182223T1/de not_active IP Right Cessation
- 1995-08-09 AU AU32357/95A patent/AU3235795A/en not_active Abandoned
- 1995-08-09 CA CA002197071A patent/CA2197071C/en not_active Expired - Fee Related
- 1995-08-09 DE DE69510801T patent/DE69510801T2/de not_active Expired - Lifetime
- 1995-08-09 EP EP95928700A patent/EP0775342B1/en not_active Expired - Lifetime
- 1995-08-09 CA CA2637798A patent/CA2637798C/en not_active Expired - Fee Related
-
1997
- 1997-07-30 US US08/902,714 patent/US5857071A/en not_active Expired - Lifetime
- 1997-07-30 US US08/903,512 patent/US6154876A/en not_active Expired - Lifetime
- 1997-08-01 US US08/910,569 patent/US5968113A/en not_active Expired - Lifetime
- 1997-08-01 US US08/905,110 patent/US6079031A/en not_active Expired - Lifetime
-
2006
- 2006-06-07 JP JP2006159153A patent/JP4430043B2/ja not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP4430043B2 (ja) | 2010-03-10 |
| JP4213203B2 (ja) | 2009-01-21 |
| US6079031A (en) | 2000-06-20 |
| US6154876A (en) | 2000-11-28 |
| CA2637798A1 (en) | 1996-02-22 |
| EP0775342B1 (en) | 1999-07-14 |
| WO1996005556A1 (en) | 1996-02-22 |
| US5968113A (en) | 1999-10-19 |
| US5857071A (en) | 1999-01-05 |
| ATE182223T1 (de) | 1999-07-15 |
| CA2637798C (en) | 2011-06-21 |
| AU3235795A (en) | 1996-03-07 |
| JP2006252583A (ja) | 2006-09-21 |
| DE69510801D1 (de) | 1999-08-19 |
| EP0775342A1 (en) | 1997-05-28 |
| US5694539A (en) | 1997-12-02 |
| CA2197071A1 (en) | 1996-02-22 |
| DE69510801T2 (de) | 2000-04-06 |
| CA2197071C (en) | 2008-11-04 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPH10509258A (ja) | コンピュータプロセスのリソースのモデル化方法及び装置 | |
| Bush et al. | A static analyzer for finding dynamic programming errors | |
| Pearce | A lightweight formalism for reference lifetimes and borrowing in Rust | |
| Lindner et al. | No panic! Verification of Rust programs by symbolic execution | |
| US20060253739A1 (en) | Method and apparatus for performing unit testing of software modules with use of directed automated random testing | |
| Lindahl et al. | Detecting software defects in telecom applications through lightweight static analysis: A war story | |
| CN118916886B (zh) | 一种面向risc-v架构的二进制程序验证方法及系统 | |
| Moy et al. | Trace contracts | |
| JPH0748182B2 (ja) | プログラム・エラー検出方法 | |
| Kyle et al. | Application of domain-aware binary fuzzing to aid Android virtual machine testing | |
| Pflanzer et al. | Automatic test case reduction for opencl | |
| Evans | Using specifications to check source code | |
| JP2002515996A (ja) | シミュレートされたプログラムの実行エラーの検出方法および装置 | |
| Naudziuniene | An infrastructure for tractable verification of JavaScript programs | |
| Mayer et al. | Debugging program exceptions | |
| Coughlin et al. | Measuring enforcement windows with symbolic trace interpretation: What well-behaved programs say | |
| Kansomkeat et al. | An analysis technique to increase testability of object‐oriented components | |
| Eilertsen | Making software refactorings safer | |
| Alshnakat | Automatic verification of embedded systems using horn clause solvers | |
| Hyyryläinen | A static analysis tool for finding buffer overflows in C | |
| Besson et al. | SawjaCard: a static analysis tool for certifying Java Card applications | |
| Bombarda et al. | From Concept to Code: Unveiling a Tool | |
| Klein | Experience with randomized testing in programming language metatheory | |
| Engelen | Nullness analysis of Java source code | |
| Stalker | Runtime checking of graph programs |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050614 |
|
| A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20050914 |
|
| A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20051031 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20051214 |
|
| A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20060207 |
|
| RD13 | Notification of appointment of power of sub attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7433 Effective date: 20060508 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20060508 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060607 |
|
| A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20060720 |
|
| A912 | Re-examination (zenchi) completed and case transferred to appeal board |
Free format text: JAPANESE INTERMEDIATE CODE: A912 Effective date: 20060803 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080910 |
|
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20081030 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111107 Year of fee payment: 3 |
|
| R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111107 Year of fee payment: 3 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121107 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121107 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131107 Year of fee payment: 5 |
|
| LAPS | Cancellation because of no payment of annual fees | ||
| S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |